<?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>Colin Harrington &#187; EC2</title>
	<atom:link href="http://colinharrington.net/blog/category/amazon-web-services/ec2-amazon-web-services/feed/" rel="self" type="application/rss+xml" />
	<link>http://colinharrington.net/blog</link>
	<description>Technologist, Consultant, Software Engineer, Entrepreneur and Musician</description>
	<lastBuildDate>Tue, 06 Jul 2010 21:50:24 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Amazon EC2 High-CPU instances</title>
		<link>http://colinharrington.net/blog/2008/08/amazon-ec2-high-cpu-instances/</link>
		<comments>http://colinharrington.net/blog/2008/08/amazon-ec2-high-cpu-instances/#comments</comments>
		<pubDate>Sat, 16 Aug 2008 13:54:33 +0000</pubDate>
		<dc:creator>Colin</dc:creator>
				<category><![CDATA[Amazon Web Services]]></category>
		<category><![CDATA[Distributed Computing]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[AWS]]></category>

		<guid isPermaLink="false">http://colinharrington.net/blog/index.php/2008/08/16/amazon-ec2-high-cpu-instances/</guid>
		<description><![CDATA[At the end of May (May 29th 2008), Amazon announced that Amazon Web Services Customers can now utilize &#34;High-CPU Instances&#34; on EC2.&#160; According to their specs, there are currently 2 versions of their &#34;High-CPU Instances&#34; as described below:

High-CPU Instances
Instances of this family have proportionally more CPU resources than memory (RAM) and are well suited for [...]]]></description>
			<content:encoded><![CDATA[<p>At the end of May (May 29th 2008), <a href="http://aws.typepad.com/aws/2008/05/more-ec2-power.html">Amazon announced</a> that Amazon Web Services Customers can now utilize &quot;High-CPU Instances&quot; on <a href="http://aws.amazon.com/ec2">EC2</a>.&nbsp; According to their specs, there are currently 2 versions of their &quot;High-CPU Instances&quot; as described below:</p>
<p><span class="small"></p>
<p><strong>High-CPU Instances</strong></p>
<ul>Instances of this family have proportionally more CPU resources than memory (RAM) and are well suited for compute-intensive applications.</ul>
<p>    <strong><em> </em></strong></p>
<ul><strong><em>High-CPU Medium Instance</em></strong></p>
<ul>1.7 GB of memory<br />
            5 EC2 Compute Units (2 virtual cores with 2.5 EC2 Compute Units each)<br />
            350 GB of instance storage<br />
            32-bit platform<br />
            I/O Performance: Moderate <br />
            <strong>Price: $0.20 per instance hour</strong></ul>
</ul>
<ul><strong><em>High-CPU Extra Large Instance</em></strong></p>
<ul>7 GB of memory<br />
                20 EC2 Compute Units (8 virtual cores with 2.5 EC2 Compute Units each)<br />
                1690 GB of instance storage<br />
                64-bit platform<br />
                I/O Performance: High<br />
                <strong>Price: $0.80 per instance hour</strong></ul>
</ul>
<p>            </span></p>
<p>So the Extra-Large Instance has the computing Power equivalent to 20 EC2 compute units.&nbsp; This means that CPU bound problems get 2.5 times the performance for the same amount of money.&nbsp; In <a href="http://colinharrington.net/blog/index.php/2008/05/17/md_update-purify-complains/">a post from earlier this year</a>, I estimated that it would take 3,100,000 CPU hours to crack a 16384 bit RSA key pair based on stats I had found elsewhere.&nbsp; This came out to be about 38.75 hours (less than a couple days!!) with 10,000 instances and would cost a maximum of $310k (for an insanely large RSA key pair)ie an average of $160k to locate a specific pair.&nbsp; With the High-CPU instances, it would take approximately 15.5 hours to do the whole computing task from top to bottom.&nbsp; At 15.5 hours, it would cost $124k or an average of $62k.&nbsp; This definitely puts some CPU Bound computing jobs in closer reach of those who need it.&nbsp;</p>
<p>I could only imagine what this would do for CPU bound utilities like Video encoding/transcoding, weather pattern simulators, or large Rendering farms (among many other applications).&nbsp; I&#8217;d love the chance to work with a farm of machines again &#8211; Its like having a fleet of robots doing the work in a portion of the time that a traditional desktop could offer.&nbsp; Photogrammetry, hmmm&#8230; Videogrammetry&#8230;</p>
<p>Does anyone know of some good Linux based/open Photogrammetry software?</p>
]]></content:encoded>
			<wfw:commentRss>http://colinharrington.net/blog/2008/08/amazon-ec2-high-cpu-instances/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>MD_Update(&amp;m,buf,j); /* purify complains */</title>
		<link>http://colinharrington.net/blog/2008/05/md_update-purify-complains/</link>
		<comments>http://colinharrington.net/blog/2008/05/md_update-purify-complains/#comments</comments>
		<pubDate>Sat, 17 May 2008 22:36:04 +0000</pubDate>
		<dc:creator>Colin</dc:creator>
				<category><![CDATA[Amazon Web Services]]></category>
		<category><![CDATA[Distributed Computing]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Debian]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[OpenSSL]]></category>

		<guid isPermaLink="false">http://colinharrington.net/blog/index.php/2008/05/17/md_update-purify-complains/</guid>
		<description><![CDATA[This last week (the 13th of May 2008) they announced a jaw-dropping security hole in the Debian OpenSSL package.&#160; This Bug was introduced on May 2nd 2006 (relased in September?) and fixed on May 13th 2008.
What was the Bug?&#160; Basically the randomness of the key generation processes was severly inhibited, thus making it feasible to [...]]]></description>
			<content:encoded><![CDATA[<p><img align="left" alt="" src="http://www.colinharrington.net/images/cactus.jpg" style="padding: 4px;" />This last week (the 13th of May 2008) they announced a jaw-dropping security hole in the Debian OpenSSL package.&nbsp; This Bug was introduced on <a href="http://svn.debian.org/viewsvn/pkg-openssl/openssl/trunk/rand/md_rand.c?rev=141&amp;view=diff&amp;r1=141&amp;r2=140&amp;p1=openssl/trunk/rand/md_rand.c&amp;p2=/openssl/trunk/rand/md_rand.c">May 2nd 2006</a> (relased in September?) and fixed on May 13th 2008.</p>
<p>What was the Bug?&nbsp; Basically the randomness of the key generation processes was severly inhibited, thus making it feasible to guess (by brute force) the private keys.&nbsp; Someone commented out a block of code that was nessesary to guarentee the randomness of the key that was to be generated.</p>
<pre class="code"><code>#ifndef PURIFY   /*    * Don't add uninitialised data.     MD_Update(&amp;m,buf,j); /* purify complains */    */  #endif </code>
</pre>
<p>Ok what does that mean?&nbsp; It means that someone could listen in on your communications that you thought were secure.&nbsp; Sniff passwords, ssh into machines you don&#8217;t own, etc.</p>
<p>I was happy to get an urgent update from the Ubuntu update manager in such a short amount of time.&nbsp; I like that I was able to patch my systems so quickly.&nbsp; I am floored that this bug was allowed to happen for the last 2 years <img src='http://colinharrington.net/blog/wp-includes/images/smilies/icon_sad.gif' alt=':-(' class='wp-smiley' /> </p>
<p>Many people have explained the fiasco/bug in more depth; here are some of my favorites&nbsp;</p>
<ul>
<li>Good Technical explaination &#8212; <a href="http://metasploit.com/users/hdm/tools/debian-openssl/">http://metasploit.com/users/hdm/tools/debian-openssl/</a></li>
<li>Thread explaining the Comic &#8211;<a href="http://forums.xkcd.com/viewtopic.php?f=7&amp;p=670397"> http://forums.xkcd.com/viewtopic.php?f=7&amp;p=670397</a></li>
<li>The actual annoucement &#8212; <a href="http://www.debian.org/security/2008/dsa-1571">http://www.debian.org/security/2008/dsa-1571</a></li>
</ul>
<p>I explained in <a href="http://colinharrington.net/blog/index.php/2008/05/13/distributed-computing/">a previous post on distributed computing</a>, that one of my parallel programming courses in college required us to find the seed and depth of a sequence of random numbers (very similar to the generation of rainbow tables or brute force password/key checking).&nbsp; I&#8217;m sure that a few slight modifications to that code and I would have a workable, scalable and efficient brute force attack.&nbsp; Am I going to do this?&nbsp; no.&nbsp; Can you have the code?&nbsp; Yes&#8230;and by yes I mean no.&nbsp; Realistically anyone skillful enough to capture and stage an attack would have the skills to formulate this on their own.</p>
<p>H D Moore <a href="http://metasploit.com/users/hdm/tools/debian-openssl/">over at metasploit</a> &#8211; calculated that it would take his 31 Xeon cores approximately 2 hours to brute force 2048bit RSA Keys, and ~ 100 hours (3100 CPU hours) to brute force a 8192 bit RSA key path, and 100,000 hours (3,100,000 CPU Hours) to brute force a 16384 RSA Key assuming the max-breadth to find the pair.&nbsp;</p>
<p>With a tool like Amazon&#8217;s Ec2, this would allow you to scale this application as far as your pocket book would allow <img src='http://colinharrington.net/blog/wp-includes/images/smilies/icon_smile.gif' alt=':-)' class='wp-smiley' /> &nbsp; Well there is an actual limits, but it could be expanded by Amazon to handle your requests.&nbsp;</p>
<p>I&#8217;m thinking something along the lines of 10,000 Extra large instances.&nbsp; So that would be 80,000 cores, which would handle the 3,100,000 CPU hours in just 38.75 hours (yea, I know Ec2 core != Xeon &#8230; its just for illustration).&nbsp; 3,100,000 hours of computing could be completed in just over 3 days!!!!&nbsp; with Amazon&#8217;s current pricing model, it would end up costing you $8000 per hour to run those 10,000 Large instances.&nbsp; So the total bill (not including storage or testing time) would be around $310,000 to complete the processing.&nbsp; I guess I have better things to do with $310k.&nbsp; $310 is the most that you would pay, statistically you&#8217;d end up paying ~ $160k if you had to average it out. and that for 16384 bit RSA key pair.&nbsp; the most common would be 1024 or 2048 bit RSA keys.</p>
<p>For a large organization such as the government, this would be cake money.&nbsp; I&#8217;d be willing to bet that they already have much more computing horsepower than Amazon has at the disposal of EC2.&nbsp;&nbsp; I love open source projects, but with so much going on at many levels, open projects can leave themselves open to bugs like this.&nbsp; I guess thats why many projects go for the benevolent dictator approach.&nbsp; Someone has to understand, and coordinate the project as a whole.&nbsp; It will be interesting to see the fallout of this issue.&nbsp;</p>
<p>This definitely got me to further my thoughts on Open Source Software.</p>
<p>What do you think?</p>
<p>&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://colinharrington.net/blog/2008/05/md_update-purify-complains/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
		<item>
		<title>Distributed Computing</title>
		<link>http://colinharrington.net/blog/2008/05/distributed-computing/</link>
		<comments>http://colinharrington.net/blog/2008/05/distributed-computing/#comments</comments>
		<pubDate>Wed, 14 May 2008 03:11:08 +0000</pubDate>
		<dc:creator>Colin</dc:creator>
				<category><![CDATA[Amazon Web Services]]></category>
		<category><![CDATA[Distributed Computing]]></category>
		<category><![CDATA[EC2]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Amazon]]></category>
		<category><![CDATA[AWS]]></category>
		<category><![CDATA[Cluster]]></category>
		<category><![CDATA[Parallell Computing]]></category>

		<guid isPermaLink="false">http://colinharrington.net/blog/index.php/2008/05/13/distributed-computing/</guid>
		<description><![CDATA[When I was studying at Bethel College (now Bethel University) located in Arden Hills, Minnesota, I took a class called on Parallel Programming taught by Dr. Brian Turnquist.&#160; I have to say that this class was my favorite.&#160; I would stay up late just to solve the problems and projects that were presented to us.&#160; [...]]]></description>
			<content:encoded><![CDATA[<p><img align="right" alt="Cloud" src="http://www.colinharrington.net/images/cloud-on-blue.jpg" />When I was studying at <a href="http://www.bethel.edu">Bethel College</a> (now Bethel University) located in Arden Hills, Minnesota, I took a class called on Parallel Programming taught by Dr. Brian Turnquist.&nbsp; I have to say that this class was my favorite.&nbsp; I would stay up late just to solve the problems and projects that were presented to us.&nbsp; I loved it!!!</p>
<p>We had a 40 CPU <a href="http://www.beowulf.org">Beowulf</a> cluster that we were able to work with.&nbsp; It was a pretty standard AMD Dual Processor Configuration on a 10/100mbps ethernet network (which was usually the bottleneck).&nbsp; Several students had the opportunity to help design and setup the cluster.&nbsp; The cluster had its own housing inside one of the Computer Science labs.&nbsp;</p>
<p>We ended up writing C++ programs that utilized MPI to communicate.&nbsp; We ran calculations, rendered fractals, and simulated breaking passwords in a distributed form; Well maybe not passwords, but finding the seed and depth of how to replicate a series of &quot;random&quot; number&#8217;s generated by the stock random number generator could be easily substituted with other code <img alt="" src="http://colinharrington.net/blog/wp-content/plugins/fckeditor-for-wordpress-plugin/smiles/msn/shades_smile.gif" />.&nbsp; I won&#8217;t get into how important the RNG (Random Number Generator) is to our modern systems (<a target="_blank" href="http://digg.com/linux_unix/Israeli_scientists:_Linux_random_number_generator_is_insecure">1</a>,<a target="_blank" href="http://www.hackaday.com/2008/01/01/24c3-mifare-crypto1-rfid-completely-broken/">2</a>) but it was a fun exercise none-the-less.&nbsp; I ended up using the cluster briefly to render some intensive <a href="http://www.povray.org/">POV-Ray</a> Fractals (<a href="http://local.wasp.uwa.edu.au/~pbourke/modelling_rendering/povfrac/final/">See the contest results</a>).&nbsp;</p>
<p>I&#8217;ve always loved the concept of distributed computing.&nbsp; I was really excited when I learned of Amazon&#8217;s Elastic Compute Cloud (EC2).&nbsp; The concept of Pay as you go applied to Distributed computing is an interesting one!&nbsp; And having a top-tier datacenter and Simple Storage Services (S3) makes it an attractive solution.&nbsp; The concept of building scalable web applications is one that has caught my eye.&nbsp;</p>
<p>I have some good ideas on how to utilize this service but haven&#8217;t made time to finish the concepts.&nbsp; The <a href="http://www.amazon.com/">Amazon Web Services</a> crew have really started to round out ther services with the announcement of <a href="http://developer.amazonwebservices.com/connect/thread.jspa?threadID=21082">Persistent Storage for EC2</a> and SimpleDB.&nbsp; Persistent Storage is, in my humble opinion, one of the last things that they needed to solve to service a fully viable, scalable, pay as you go/grow computing platform.&nbsp;&nbsp;</p>
]]></content:encoded>
			<wfw:commentRss>http://colinharrington.net/blog/2008/05/distributed-computing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
