<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Sankasaurus</title>
	<atom:link href="http://blog.pas.net.au/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.pas.net.au</link>
	<description>Just another tech blog - ranting since 2006</description>
	<lastBuildDate>Wed, 25 Aug 2010 21:40:45 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.1</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Android Market links</title>
		<link>http://blog.pas.net.au/2010/08/android-market-links/</link>
		<comments>http://blog.pas.net.au/2010/08/android-market-links/#comments</comments>
		<pubDate>Wed, 25 Aug 2010 21:39:59 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[advice]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[market]]></category>
		<category><![CDATA[mobile]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=78</guid>
		<description><![CDATA[For those of you like me that have totally missed the Publishing page, here is how to create a link to your Android application in the Android Market:
market://﻿details?id=&#60;packagename&#62;
OR
http://market.android.com/details?id=&#60;packagename&#62;
So for Remembory, I have this:
market://﻿details?id=com.gbott.remembory
The &#8220;old&#8221; way was to link to the search page by using this:
market://search?q=pname:&#60;package&#62;
&#8230; but the details page method saves the user a click, [...]]]></description>
			<content:encoded><![CDATA[<p>For those of you like me that have totally missed the <a href="http://developer.android.com/guide/publishing/publishing.html">Publishing</a> page, here is how to create a link to your Android application in the Android Market:</p>
<p style="padding-left: 30px;"><span style="font-family: 'courier new', courier;">market://﻿details?id=&lt;packagename&gt;</span></p>
<p>OR</p>
<p style="padding-left: 30px;"><span style="font-family: 'courier new', courier;">http://market.android.com/details?id=&lt;packagename&gt;</span></p>
<p>So for <a href="http://www.gbott.com/apps/remembory">Remembory</a>, I have this:</p>
<p style="padding-left: 30px;"><span style="font-family: 'courier new', courier;">market://﻿details?id=com.gbott.remembory</span></p>
<p>The &#8220;old&#8221; way was to link to the search page by using this:</p>
<p style="padding-left: 30px;"><span style="font-family: 'courier new', courier;">market://search?q=pname:&lt;package&gt;</span></p>
<p>&#8230; but the details page method saves the user a click, or a tough decision when there are two applications both called Remembory.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2010/08/android-market-links/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Rackspace Cloud images to Cloud Files</title>
		<link>http://blog.pas.net.au/2010/07/rackspace-cloud-images-to-cloud-files/</link>
		<comments>http://blog.pas.net.au/2010/07/rackspace-cloud-images-to-cloud-files/#comments</comments>
		<pubDate>Tue, 27 Jul 2010 04:11:53 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[rackspace cloud]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=76</guid>
		<description><![CDATA[For doing anything serious on Rackspace Cloud, you need to be able to use machines larger than 2Gb of RAM. Problem is, machines larger than 2Gb of RAM cannot be imaged (or backed up) &#8211; until now. About a month ago, they announced the ability to snapshot a machine into Cloud Files. Today I decided [...]]]></description>
			<content:encoded><![CDATA[<p>For doing anything serious on Rackspace Cloud, you need to be able to use machines larger than 2Gb of RAM. Problem is, machines larger than 2Gb of RAM cannot be imaged (or backed up) &#8211; until now. About a month ago, they announced the ability to <a href="http://www.rackspacecloud.com/blog/2010/06/16/introducing-cloud-servers-snapshots-to-cloud-files/">snapshot a machine into Cloud Files</a>. Today I decided to take it for a spin and hit Snag number one: there was no way to do an image on my new 16Gb machine. After talking talking to one person at Rackspace Cloud, I was none the wiser &#8211; Snag two was the lack of training for their support staff. After asking for the supervisor, he created a ticket for the approval for the terms (letting me know I would be charged for the storage in Cloud Files) and off I went. Until I hit Snag 3 &#8211; the &#8220;Images&#8221; tab for the server details still showed no way of performing an image. I was told to use the &#8220;My Server Images&#8221; and HORAY I could make an image of my 16Gb machine.</p>
<p>Finally the feature that prevented my company from using Rackspace Cloud, and instead using AWS, was fixed! Congratulations to the Rackspace Cloud team.</p>
<p>Another thing I learnt today is that there are two data centers for Rackspace Cloud machines &#8211; DFW and ORD. The first server you provision gets assigned to one of the two data centers, and which ever one it gets put into is the data center that all of your other servers will be put into as well. So if the first server gets put into DFW, then all of the other ones you create will be. That is until you delete all of your servers. Then once again, the first server can get put into any data center.</p>
<p>I am hoping that in the future, we will have a choice about which data center a server is provisioned in, particularly since it will help for geographical distribution.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2010/07/rackspace-cloud-images-to-cloud-files/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>JSON SerDe for Hive</title>
		<link>http://blog.pas.net.au/2010/02/json-serde-for-hive/</link>
		<comments>http://blog.pas.net.au/2010/02/json-serde-for-hive/#comments</comments>
		<pubDate>Tue, 16 Feb 2010 23:55:43 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[hadoop]]></category>
		<category><![CDATA[hive]]></category>
		<category><![CDATA[json]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[serde]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=74</guid>
		<description><![CDATA[I have added another open source project to my list &#8211; a JSON SerDe for Hive. You can check it out here:
http://code.google.com/p/hive-json-serde/
This SerDe (serializer/deserializer) will let you read JSON files as input for Hive tables. In the future, it will also support writing JSON data, but that is for another day.
Please let me know if [...]]]></description>
			<content:encoded><![CDATA[<p>I have added another open source project to my list &#8211; a JSON SerDe for Hive. You can check it out here:</p>
<p style="padding-left: 30px;"><a href="http://code.google.com/p/hive-json-serde/">http://code.google.com/p/hive-json-serde/</a></p>
<p>This SerDe (serializer/deserializer) will let you read JSON files as input for Hive tables. In the future, it will also support writing JSON data, but that is for another day.</p>
<p>Please let me know if you have any comments or questions about it.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2010/02/json-serde-for-hive/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google Takes First Step</title>
		<link>http://blog.pas.net.au/2010/02/step-1/</link>
		<comments>http://blog.pas.net.au/2010/02/step-1/#comments</comments>
		<pubDate>Fri, 05 Feb 2010 05:48:15 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[google]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=70</guid>
		<description><![CDATA[Google have taken a step in the right direction by offering people a monetary reward when they find a bug in Chromium. I am very excited by this news, not because I am likely to find a bug and cash in, but because it shows Google is starting to take some accountability.
Step 2 would be [...]]]></description>
			<content:encoded><![CDATA[<p>Google have taken a step in the right direction by offering people a <a href="http://blog.chromium.org/2010/01/encouraging-more-chromium-security.html">monetary reward when they find a bug in Chromium</a>. I am very excited by this news, not because I am likely to find a bug and cash in, but because it shows Google is starting to take some accountability.</p>
<p>Step 2 would be public bug trackers for ALL of their systems, particularly the online ones such as Gmail, Docs, Sites, etc.</p>
<p>Step 3 would be Googlers actually paying attention to them, maybe even hiring a customer support team.</p>
<p>Fingers crossed!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2010/02/step-1/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google &#8211; Hexus One</title>
		<link>http://blog.pas.net.au/2010/01/google-hexus-one/</link>
		<comments>http://blog.pas.net.au/2010/01/google-hexus-one/#comments</comments>
		<pubDate>Sat, 09 Jan 2010 01:18:31 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[google]]></category>
		<category><![CDATA[rant]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=65</guid>
		<description><![CDATA[When I first told my wife about Google releasing a phone, the very first words out of her mouth were:
&#8220;I would never buy a phone from Google. If something went wrong, I&#8217;m screwed! Its not like I can take it into a shop and get it fixed&#8221;
How right she was. According to Slashdot, Google is [...]]]></description>
			<content:encoded><![CDATA[<p>When I first told my wife about Google releasing a phone, the very first words out of her mouth were:</p>
<p style="padding-left: 30px;">&#8220;I would never buy a phone from Google. If something went wrong, I&#8217;m screwed! Its not like I can take it into a shop and get it fixed&#8221;</p>
<p>How right she was. According to Slashdot, <a href="http://mobile.slashdot.org/story/10/01/08/2352202/Google-Faces-Deluge-of-Nexus-One-Complaints">Google is facing a deluge of customer complaints about the Nexus One</a>. Are you having problems? Use the hash tag <a href="http://twitter.com/#search?q=%23fixgoogle">#fixgoogle</a> if you are on Twitter. All tweets with that tag will appear on <a href="http://www.fixgoogle.com/">fixgoogle.com</a> when I get the site up and running.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2010/01/google-hexus-one/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Backups by design on AWS EC2</title>
		<link>http://blog.pas.net.au/2009/12/backups-by-design-on-aws-ec2/</link>
		<comments>http://blog.pas.net.au/2009/12/backups-by-design-on-aws-ec2/#comments</comments>
		<pubDate>Fri, 18 Dec 2009 19:06:06 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[aws]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[howto]]></category>
		<category><![CDATA[scaling]]></category>
		<category><![CDATA[tech]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=63</guid>
		<description><![CDATA[My good mate* Joel Spolsky wrote a nice piece about backups (or rather, restoration), and I wanted to echo his remarks and how they relate to using AWS EC2.
If you are using EC2, you will quickly find that if an instance is terminated, any data on that instance is gone &#8211; lost forever. At first, [...]]]></description>
			<content:encoded><![CDATA[<p>My good mate* Joel Spolsky wrote a <a href="http://www.joelonsoftware.com/items/2009/12/14.html">nice piece about backups (or rather, restoration)</a>, and I wanted to echo his remarks and how they relate to using AWS EC2.</p>
<p>If you are using EC2, you will quickly find that if an instance is terminated, any data on that instance is gone &#8211; lost forever. At first, this seems like a terrible idea, but in fact, it encourages you to get into best practices, and discover the awesome benefits of EBS.</p>
<p>We have many instances running of different types. We have built a &#8220;custom&#8221; Debian AMI for each of the instance types we use (web, database, management, etc). If you were to launch an instance with one of these AMIs, you would not have a fully working system. That is because these AMIs have sym-links for important and/or dynamic data. For example, on the web AMI we have created, /etc/apache2, /etc/php5/ and /var/www are all sym-links. To where? A directory that an EBS volume is mounted to. That&#8217;s right, all of the web configuration and website code only lives in an EBS volume. It is simple enough to write a little script that creates a nightly Snapshots of each EBS volume.</p>
<p>Now for the power of this setup. Every time you want to bring up another instance of the same type (say, for horizontally scaling), you are in fact doing a restoration from backup. Take a Snapshot (your backup), create an EBS volume, attach it to the new instance, and make it live! This doesn&#8217;t just work for scaling, it works for bringing up staging servers that are mirrors of production or running experiments without affecting production.</p>
<p>We can even take it a step further! Those AMIs and Snapshots are all stored in S3 &#8211; data available to the whole Region. An instance and EBS volume exist in only 1 of the Availability Zones within that Region. You can use your backups to restore into a new Availability Zone which you can use to create a high-availability solution.</p>
<p>Happy scaling!</p>
<p>* I don&#8217;t know Joel personally &#8211; we have never met &#8211; but I do follow his work, like his company and LOVE <a href="http://www.fogcreek.com/FogBugz/">Fogbugz</a>!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2009/12/backups-by-design-on-aws-ec2/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Motally Video and Contest</title>
		<link>http://blog.pas.net.au/2009/12/motally-video-and-contest/</link>
		<comments>http://blog.pas.net.au/2009/12/motally-video-and-contest/#comments</comments>
		<pubDate>Thu, 10 Dec 2009 19:30:50 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[analytics]]></category>
		<category><![CDATA[android]]></category>
		<category><![CDATA[aws]]></category>
		<category><![CDATA[mobile]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=50</guid>
		<description><![CDATA[I am please to announce to all my fans (haha) the AWS Start-up Challenge video shot at Motally is finally live! This was my first ever professional video shoot &#8211; they spent 5 hours at our office to edit it down to 2 minutes. Motally was one of the 7 finalists, out of more than [...]]]></description>
			<content:encoded><![CDATA[<p>I am please to announce to all my fans (haha) the <a title="Motally AWS Video" href="http://aws.amazon.com/startupchallenge/">AWS Start-up Challenge video shot at Motally</a> is finally live! This was my first ever professional video shoot &#8211; they spent 5 hours at our office to edit it down to 2 minutes. Motally was one of the 7 finalists, out of more than 1000 entries. Congratulations to <a href="http://www.gooddata.com/">GoodData</a> and <a href="http://www.bizo.com/">Bizo</a> for taking the top prizes!</p>
<p>I also want to call upon all of the mobile application developers out there. Motally is running a <a href="http://www.motally.com/contest/">mobile analytics contest called Trackappalooza</a>. Here you can win a pass to MWC in Barcelona, or up to $15,000 just for tracking your Android, iPhone or Blackberry app. <a href="http://www.motally.com/">Motally is <em>the</em> mobile analytics powerhouse</a> providing tracking capabilities for mobile websites and mobile applications.</p>
<p>Good luck!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2009/12/motally-video-and-contest/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Innovate 09</title>
		<link>http://blog.pas.net.au/2009/09/innovate-09/</link>
		<comments>http://blog.pas.net.au/2009/09/innovate-09/#comments</comments>
		<pubDate>Thu, 24 Sep 2009 16:14:29 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[conference]]></category>
		<category><![CDATA[discount]]></category>
		<category><![CDATA[promotion]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=48</guid>
		<description><![CDATA[If anyone is interested in going to the PayPal X (Innovate 09) conference, I have come across is discount. A special rate of $149 (50% off the price) if you enter promotion/coupon code:  PayPalHR
Enjoy!
]]></description>
			<content:encoded><![CDATA[<p>If anyone is interested in going to the <a href="https://www.paypal-communications.com/innovate2009/">PayPal X (Innovate 09) conference</a>, I have come across is discount. A special rate of $149 (50% off the price) if you enter promotion/coupon code:  <strong>PayPalHR</strong></p>
<p>Enjoy!</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2009/09/innovate-09/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Dependency Nightmare for Tomcat on Debian</title>
		<link>http://blog.pas.net.au/2009/08/dependency-nightmare-for-tomcat-on-debian/</link>
		<comments>http://blog.pas.net.au/2009/08/dependency-nightmare-for-tomcat-on-debian/#comments</comments>
		<pubDate>Tue, 18 Aug 2009 17:34:01 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[dependencies]]></category>
		<category><![CDATA[linux]]></category>
		<category><![CDATA[rant]]></category>
		<category><![CDATA[tech]]></category>
		<category><![CDATA[tomcat]]></category>
		<category><![CDATA[ubuntu]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=45</guid>
		<description><![CDATA[I would love to not have to install the real Java and Tomcat manually on Debian, but I have little choice in the matter. Take a look at this:

$ apt-get install tomcat5.5
Reading package lists... Done
Building dependency tree
Reading state information... Done
The following extra packages will be installed:
ant ant-gcj ant-optional ant-optional-gcj antlr build-essential debhelper
default-jdk default-jre default-jre-headless defoma [...]]]></description>
			<content:encoded><![CDATA[<p>I would love to not have to install the real Java and Tomcat manually on Debian, but I have little choice in the matter. Take a look at this:</p>
<blockquote><p><code><br />
$ apt-get install <strong>tomcat5.5</strong><br />
Reading package lists... Done<br />
Building dependency tree<br />
Reading state information... Done<br />
<strong>The following extra packages will be installed:</strong><br />
ant ant-gcj ant-optional ant-optional-gcj antlr build-essential debhelper<br />
default-jdk default-jre default-jre-headless defoma dpkg-dev ecj ecj-gcj fastjar<br />
file fontconfig fontconfig-config g++ g++-4.3 gappletviewer-4.3 gcj-4.3<br />
gcj-4.3-base gettext gettext-base gij-4.3 gjdoc hicolor-icon-theme html2text<br />
intltool-debian java-common java-gcj-compat java-gcj-compat-dev<br />
java-gcj-compat-headless jsvc libantlr-java libantlr-java-gcj libasound2<br />
libatk1.0-0 libatk1.0-data libbcel-java libcairo2 libcommons-beanutils-java<br />
libcommons-collections-java libcommons-collections3-java libcommons-daemon-java<br />
libcommons-dbcp-java libcommons-digester-java libcommons-el-java<br />
libcommons-launcher-java libcommons-logging-java libcommons-modeler-java<br />
libcommons-pool-java libcompress-raw-zlib-perl libcompress-zlib-perl libcups2<br />
libdatrie0 libdb4.5 libdigest-hmac-perl libdigest-sha1-perl libdirectfb-1.0-0<br />
libecj-java libecj-java-gcj libexpat1 libfile-remove-perl libfontconfig1<br />
libfontenc1 libfreetype6 libgcj-bc libgcj-common libgcj9-0 libgcj9-0-awt<br />
libgcj9-dev libgcj9-jar libgcj9-src libglib2.0-0 libglib2.0-data libgtk2.0-0<br />
libgtk2.0-bin libgtk2.0-common libice6 libio-compress-base-perl<br />
libio-compress-zlib-perl libio-stringy-perl libjaxp1.3-java libjaxp1.3-java-gcj<br />
libjpeg62 liblog4j1.2-java liblog4j1.2-java-gcj libmagic1 libmail-box-perl<br />
libmail-sendmail-perl libmailtools-perl libmime-types-perl libmx4j-java<br />
libobject-realize-later-perl libpango1.0-0 libpango1.0-common libpixman-1-0<br />
libpng12-0 libregexp-java libservlet2.3-java libservlet2.4-java libsm6 libsqlite3-0<br />
libstdc++6-4.3-dev libsys-hostname-long-perl libthai-data libthai0 libtiff4<br />
libtimedate-perl libtomcat5.5-java libts-0.0-0 liburi-perl libuser-identity-perl<br />
libxcb-render-util0 libxcb-render0 libxcomposite1 libxcursor1 libxdamage1<br />
libxerces2-java libxerces2-java-gcj libxfixes3 libxfont1 libxft2 libxi6<br />
libxinerama1 libxrandr2 libxrender1 libxtst6 make mime-support patch po-debconf<br />
python python-central python-minimal python2.5 python2.5-minimal ttf-dejavu<br />
ttf-dejavu-core ttf-dejavu-extra x-ttcidfont-conf xfonts-encodings xfonts-utils<br />
...<br />
0 upgraded, 146 newly installed, 0 to remove and 0 not upgraded.<br />
Need to get 101MB of archives.<br />
After this operation, 288MB of additional disk space will be used.<br />
Do you want to continue [Y/n]?<br />
</code></p></blockquote>
<p>WTF? I understand that Tomcat needs some kind of Java, but this is ridiculous. It is installing ant, fonts, compilers and worst of all, the most evil Java ever.</p>
<p>Ubuntu has the sense to make Sun Java available, but even if you do have Sun Java installed, the above is true on Ubuntu.</p>
<p>For shame!</p>
<p>I&#8217;ll stick to downloading from <a href="http://java.sun.com/">java.sun.com</a> and <a href="http://tomcat.apache.org/">tomcat.apache.org</a>.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2009/08/dependency-nightmare-for-tomcat-on-debian/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Rackspace Cloud API PHP Library</title>
		<link>http://blog.pas.net.au/2009/08/rackspace-cloud-api-php-library/</link>
		<comments>http://blog.pas.net.au/2009/08/rackspace-cloud-api-php-library/#comments</comments>
		<pubDate>Fri, 14 Aug 2009 05:42:21 +0000</pubDate>
		<dc:creator>Peter Sankauskas</dc:creator>
				<category><![CDATA[Blog]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[cloud]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[php]]></category>
		<category><![CDATA[rackspace cloud]]></category>

		<guid isPermaLink="false">http://blog.pas.net.au/?p=42</guid>
		<description><![CDATA[I am pleased to annouce my very first open source project hosted at github. The project, called Rackspace Cloud PHP Library is a simple, single PHP file to easily make Cloud Server API calls. Rackspace have not yet released any libraries for their API, possibly because it is still kind of in beta. If they [...]]]></description>
			<content:encoded><![CDATA[<p>I am pleased to annouce my very first open source project hosted at <a href="http://github.com/">github</a>. The project, called <strong><a href="http://github.com/pas256/Rackspace-Cloud-PHP-Library">Rackspace Cloud PHP Library</a></strong> is a simple, single PHP file to easily make <a href="http://www.rackspacecloud.com/cloud_hosting_products/servers/api">Cloud Server API</a> calls. Rackspace have not yet released any libraries for their API, possibly because it is still kind of in beta. If they do, I believe there will be of little use for my project, but right now, it has value.</p>
<p>So what was my motivation for this?</p>
<p>Well the <a href="https://manage.rackspacecloud.com/">Rackspace Cloud Management Console</a> is severly lacking in features. Things such as creating an image of a server (just like you can in AWS EC2), and sharing an IP address between servers (something you cannot do in EC2 &#8211; an IP address can only be attached to a single instance at a time). It is this second feature that I am most interested in because it means I can use a virtual IP address (floating IP) to create a HA (highly available) &#8220;cluster&#8221; of Tomcat servers. I plan on using <a href="http://www.keepalived.org/">keepalived</a> to do the IP switching, and Apache with <a href="http://httpd.apache.org/docs/2.2/mod/mod_proxy_balancer.html">mod_proxy_balancer</a> and <a href="http://httpd.apache.org/docs/2.2/mod/mod_proxy_ajp.html">mod_proxy_ajp</a> to talk to multiple Tomcat servers. Without reading the <a href="http://docs.rackspacecloud.com/servers/api/cs-devguide-latest.pdf">poorly written API documention</a> and learning that I could create a shared IP group, I would not have known this was possible.</p>
<p>This project is very much a work in progress, and what is in there now represents only about 8 hours of work. I welcome any feedback, and anyone else who wants to join.</p>
]]></content:encoded>
			<wfw:commentRss>http://blog.pas.net.au/2009/08/rackspace-cloud-api-php-library/feed/</wfw:commentRss>
		<slash:comments>7</slash:comments>
		</item>
	</channel>
</rss>
