<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0"><channel><title>Kavis Technology Consulting</title><link>http://www.kavistechnology.com/blog</link><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/KavisTechnologyConsulting" /><description>We don't just talk cloud, we implement cloud services</description><language>en-US</language><lastBuildDate>Tue, 18 Jun 2013 13:31:25 PDT</lastBuildDate><generator>http://wordpress.org/?v=3.5.1</generator><sy:updatePeriod xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">hourly</sy:updatePeriod><sy:updateFrequency xmlns:sy="http://purl.org/rss/1.0/modules/syndication/">1</sy:updateFrequency><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/KavisTechnologyConsulting" /><feedburner:info uri="kavistechnologyconsulting" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>KavisTechnologyConsulting</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item><title>10 Signs that your Agile Initiative is Doomed</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/LD8lbGD5i9g/</link><category>Agile</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Tue, 18 Jun 2013 13:31:25 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2996</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Companies that excel at agile software development often become enablers for their respective businesses. The ability to quickly react to the speed of business and deploy new features, fix bugs, and try new experiments leads to better products, happier customers, and increased revenues. In many cases it even gives IT some sense of work-life balance. Sounds awesome doesn&#8217;t it?</p>
<p>Unfortunately, many companies attempting to move towards agile methodologies struggle to align with the <a href="http://agilemanifesto.org/">agile manifesto</a> because they are conditioned in older techniques like waterfall. The following list is an attempt at humor (it&#8217;s really therapy) for the Top 10 reasons why agile fails. Enjoy!</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/06/6059269914_dce8761fff_z.jpg"><img class="aligncenter size-full wp-image-2999" alt="6059269914_dce8761fff_z" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/06/6059269914_dce8761fff_z.jpg" width="640" height="245" /></a></p>
<p>10. The team thinks that 8 week sprints are really sprints</p>
<p>9. All scrum masters recently got certified after 10+ years of being PMP certified waterfall PMs</p>
<p>8. Management thinks that implementing an open workspace environment equals agile</p>
<p>7. After implementing the open space environment, the white noise is turned up so loud it throws people&#8217;s equilibrium out of whack.</p>
<p>6. The new open space environment becomes a place to hold 5 concurrent meetings, many on speaker phones</p>
<p>5. The new open space environment is always empty because everyone is still in meeting rooms all day.</p>
<p>4. The &#8220;Scrum Master&#8221; announces that they need a QA sprint (Say what?!)</p>
<p>3. There are no user stories for architecture and design because there is &#8220;<em>no time for those in 2 week sprints</em>&#8221;</p>
<p>2. The user stories are so long they have to staple multiple index cards together.</p>
<p>1. The team actually implements Wagile &#8211; Waterfall with 15 minute daily standups.</p>
<p>&nbsp;</p>
<p>Let me hear what your top 10 are.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=LD8lbGD5i9g:GiH62C0JfvA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=LD8lbGD5i9g:GiH62C0JfvA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=LD8lbGD5i9g:GiH62C0JfvA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=LD8lbGD5i9g:GiH62C0JfvA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=LD8lbGD5i9g:GiH62C0JfvA:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/LD8lbGD5i9g" height="1" width="1"/>]]></content:encoded><description>Unfortunately, many companies attempting to move towards agile methodologies struggle to align with the agile manifesto because they are conditioned in older techniques like waterfall.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/10-signs-that-your-agile-initiative-is-doomed/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/10-signs-that-your-agile-initiative-is-doomed/</feedburner:origLink></item><item><title>The Many Faces of PaaS</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/vRJNJOtDw2c/</link><category>Cloud Computing</category><category>PaaS</category><category>Private PaaS</category><category>Public PaaS</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Tue, 18 Jun 2013 08:13:49 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2993</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>By now, enterprises understand the value of Software as a Service (SaaS) and Infrastructure as a Service (IaaS), but there still is much confusion about Platform as a Service (PaaS).  Check out my latest post on <a href="http://www.virtualizationpractice.com/the-many-faces-of-paas-22018/">The Virtualization Practice that discusses the 6 different deployment models for PaaS.</a></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=vRJNJOtDw2c:pB0jhRz-rcA:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=vRJNJOtDw2c:pB0jhRz-rcA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=vRJNJOtDw2c:pB0jhRz-rcA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=vRJNJOtDw2c:pB0jhRz-rcA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=vRJNJOtDw2c:pB0jhRz-rcA:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/vRJNJOtDw2c" height="1" width="1"/>]]></content:encoded><description>By now, enterprises understand the value of Software as a Service (SaaS) and Infrastructure as a Service (IaaS), but there still is much confusion about Platform as a Service (PaaS).  Check out my latest post on The Virtualization Practice that discusses the 6 different deployment models for PaaS.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/the-many-faces-of-paas/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/the-many-faces-of-paas/</feedburner:origLink></item><item><title>The Pros and Cons of Private vs. Public PaaS</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/9Z91i6UHHiI/</link><category>Cloud Computing</category><category>PaaS</category><category>Private PaaS</category><category>Public PaaS</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Mon, 17 Jun 2013 15:46:23 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2986</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Enterprises are driving the adoption of private PaaS.  Private PaaS gives enterprises more control but in return they sacrifice agility and costs.  Check out my article on this topic at <a href="http://www.virtualizationpractice.com/the-pros-and-cons-of-private-and-public-paas-21961/">The Virtualization Practice</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=9Z91i6UHHiI:3qzFSdcdZ1A:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=9Z91i6UHHiI:3qzFSdcdZ1A:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=9Z91i6UHHiI:3qzFSdcdZ1A:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=9Z91i6UHHiI:3qzFSdcdZ1A:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=9Z91i6UHHiI:3qzFSdcdZ1A:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/9Z91i6UHHiI" height="1" width="1"/>]]></content:encoded><description>Enterprises are driving the development of private PaaS.  Private PaaS gives enterprise more control but in return they sacrifice agility and costs.  Check out my article on this topic at The Virtualization Practice.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/the-pros-and-cons-of-private-vs-public-paas/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/the-pros-and-cons-of-private-vs-public-paas/</feedburner:origLink></item><item><title>The NSA, the Patriot Act, and myths about the public cloud</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/lP5_fKpjRs8/</link><category>Cloud Computing</category><category>NSA</category><category>Patriot Act</category><category>private cloud</category><category>public cloud</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Fri, 07 Jun 2013 06:43:10 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2873</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Dave Linthicum just posted another myth buster post clearing the air on <a href="http://www.infoworld.com/d/cloud-computing/3-more-cloud-computing-myths-dispelled-220249">3 more myths about cloud computing</a>.  I would like to add one more after the recent events where the <a href="http://online.wsj.com/article/SB10001424127887324299104578529112289298922.html">NSA&#8217;s secret data collection</a> program has been <a href="http://online.wsj.com/article/SB10001424127887324299104578529112289298922.html">exposed</a>.  First, here is the myth:</p>
<blockquote><p>Public clouds are not safe for storing sensitive data due to the Patriot Act which gives the government the power to seize the data in an attempt to mine data in the name of preventing terrorist attacks.  Instead, companies can use a private cloud or forgo the cloud altogether.</p></blockquote>
<p>The first sentence is true.  The part that is untrue is that leveraging private clouds or on-premises data centers are safe from the Patriot Act.  The Patriot Act allows the government to access the data no matter where it is stored;  public cloud, private cloud, or on-premises.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/06/nsa.jpg"><img class="aligncenter size-full wp-image-2879" alt="nsa" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/06/nsa.jpg" width="168" height="168" /></a></p>
<p>Building private clouds in the name of protecting data from the Patriot Act is misguided.  Private clouds are no safer from the government&#8217;s prying eyes than public clouds.  In fact, by choosing private clouds, the onus to protect data falls squarely on the enterprise&#8217;s shoulders and studies have shown that private cloud solutions typically fair no better than public cloud solutions when dealing with security.  Here is an excerpt from the <a href="http://www.alertlogic.com/resources/cloud-security-report/">Alert Logic</a> report.</p>
<blockquote><p>The Spring 2013 <em>Cloud Security Report</em> analyzes six months of new threat data from over 1,800 Alert Logic customer environments, finding that cloud and hosted environments are not inherently less secure than enterprise data centers. With over two years of data analyzed in three reports, the conclusion is consistent: fears about cloud security are not supported by the data.</p></blockquote>
<h3><strong>Summary</strong></h3>
<p>In summary, most excuses for leveraging private clouds over public clouds are based on myths. The main reason for using private clouds is the desire to have more control.  Sometimes control is a valid reason but often it is IT just not letting go. Many of my clients want to use public clouds and get out of the infrastructure business but their clients buy into all of the myths about the public cloud so they are forced to go to a hybrid solution to satisfy those customers.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lP5_fKpjRs8:dZUP4ovaAFk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lP5_fKpjRs8:dZUP4ovaAFk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lP5_fKpjRs8:dZUP4ovaAFk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lP5_fKpjRs8:dZUP4ovaAFk:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lP5_fKpjRs8:dZUP4ovaAFk:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/lP5_fKpjRs8" height="1" width="1"/>]]></content:encoded><description>This post addresses the myth about the impact of the Patriot Act on public and private clouds.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/the-nsa-the-patriot-act-and-myths-about-the-public-cloud/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/the-nsa-the-patriot-act-and-myths-about-the-public-cloud/</feedburner:origLink></item><item><title>Designing Secure Cloud Solutions</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/H0LXNo7tSL8/</link><category>Cloud Computing</category><category>API</category><category>IaaS</category><category>Logging</category><category>monitoring</category><category>PaaS</category><category>SaaS</category><category>security</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Sun, 02 Jun 2013 11:15:11 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2864</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>I just finished the following presentation that we will be discussing at the Tampa Bay Cloud Computing meetup in a few days.</p>
<p><iframe style="border: 1px solid #CCC; border-width: 1px 1px 0; margin-bottom: 5px;" src="http://www.slideshare.net/slideshow/embed_code/22336046" height="356" width="427" allowfullscreen="" frameborder="0" marginwidth="0" marginheight="0" scrolling="no"></iframe></p>
<div style="margin-bottom: 5px;"><strong> <a title="Cloud security design considerations" href="http://www.slideshare.net/madgreek65/cloud-security-design-considerations" target="_blank">Cloud security design considerations</a> </strong> from <strong><a href="http://www.slideshare.net/madgreek65" target="_blank">Mike Kavis</a></strong></div>
<p>Here are some <strong>Key Take Aways</strong></p>
<ul>
<li>The further down the cloud stack the more responsibility you own and must build</li>
<li>Three aspects of securing systems are apply, detect, prevent</li>
<li>Three key strategies: Centralize, Standardize, Automate</li>
<li>Along with the control that comes with private clouds comes all of the responsibility of security (Have fun with that!)</li>
<li>Leverage web frameworks to <span style="text-decoration: underline;">assist</span> in protecting against Top 10 web threats</li>
<li>Don&#8217;t roll your own if it is not your core competency</li>
<li>Don&#8217;t be proprietary.  Make it easy and secure to integrate</li>
<li>Separate policies from APIs.  Makes it easier to change, manage.</li>
</ul>
<p>If there are security related topics that you wish I included let me know. Enjoy!</p>
<p>&nbsp;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=H0LXNo7tSL8:v-KpFLuzITs:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=H0LXNo7tSL8:v-KpFLuzITs:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=H0LXNo7tSL8:v-KpFLuzITs:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=H0LXNo7tSL8:v-KpFLuzITs:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=H0LXNo7tSL8:v-KpFLuzITs:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/H0LXNo7tSL8" height="1" width="1"/>]]></content:encoded><description>The following presentation will be discussed at the Tampa Bay Cloud Computing meetup on 6/5/13</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/designing-secure-cloud-solutions/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/designing-secure-cloud-solutions/</feedburner:origLink></item><item><title>Vendor Spotlight: Garantia – In-memory NoSQL company</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/-QFBXqyu2KM/</link><category>Cloud Computing</category><category>Garantia</category><category>MemcacheDB</category><category>NoSQL</category><category>Redis</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Wed, 22 May 2013 14:34:05 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2842</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>NoSQL solutions are all the buzz these days. Today’s dataset volumes often exceed what a relational database can consume and process in a timely manner causing companies to turn to NoSQL solutions. The challenge with NoSQL databases is that they can be complex to manage and maintain and only a limited number of people have experience working with them in a production environment. Redis is a very popular <a href="https://en.wikipedia.org/wiki/NoSQL#Key.E2.80.93value_store">key value store database</a> that many high scale and highly distributed systems use in the cloud today.</p>
<h2>Redis as a Service</h2>
<p><a href="http://redis.io/">Redis</a> is an open source database with <a href="http://www.paperplanes.de/2010/2/16/a_collection_of_redis_use_cases.html">tons of valid uses cases</a> that are implemented in the real world today. Caching is one common use case. The challenge with Redis is that it has scaling limitations when datasets grow beyond the capacity of the master node. Maintaining a highly available Redis database is a complex undertaking and the performance may degrade over time. In addition, open source distributions of Redis lack various features making many Redis implementations not enterprise worthy. This is the exact problem Garantia set out to solve. Garantia adds sharding, clustering, automation, and numerous other enhancements to the core Redis distribution thus making their Redis as a Service offering enterprise class.</p>
<p>Garantia Data delivers Redis as a service so their customers can focus on building their applications while the database simply manages itself. With Garantia’s Redis as a Service solution, customers no longer need to deal with clustering, software upgrades, patching, server management and much more. One simply pays for what they use and they get the robustness and autoscaling of Redis without the headaches.</p>
<p><iframe src="http://www.youtube.com/embed/asGZdflN5A0" height="480" width="853" allowfullscreen="" frameborder="0"></iframe></p>
<p>&nbsp;</p>
<h2>Partner integrations</h2>
<p>Garantia also provides reliability and zero management for memcacheDB (see video below).</p>
<p><iframe src="http://www.youtube.com/embed/RyctqyIksUA" height="480" width="853" allowfullscreen="" frameborder="0"></iframe></p>
<p>With these database as a service offerings, Garantia makes Redis and MemcacheDB enterprise class databases without the limitations that exist with unmanaged open source versions. Currently, Garantia is available on AWS (US East and EU West), Microsoft Azure, Heroku, AppFog, and AppHarbor. On the road map is a do-it-yourself private cloud version.</p>
<h2>Moving forward</h2>
<p>Garantia Data was founded in March of 2011 and raised $3.8M from angel investors. They are currently raising a series A round of $5M. They were recently named “Cool Vendor” by Gartner in early May and named to the Inaugural CRN Big Data 100 back in April.  Keep an eye on these guys and look for their services to become integrated in more IaaS and PaaS solutions in the future. You can check them out at <a href="file:///C:/Users/Ofer/Downloads/www.garantiadata.com">www.garantiadata.com</a>.</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=-QFBXqyu2KM:TBt9192XCmk:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=-QFBXqyu2KM:TBt9192XCmk:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=-QFBXqyu2KM:TBt9192XCmk:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=-QFBXqyu2KM:TBt9192XCmk:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=-QFBXqyu2KM:TBt9192XCmk:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/-QFBXqyu2KM" height="1" width="1"/>]]></content:encoded><description>The challenge with NoSQL databases is that they can be complex to manage and maintain and very few people have experience working with them.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/vendor-spotlight-garantia-in-memory-nosql-company/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/vendor-spotlight-garantia-in-memory-nosql-company/</feedburner:origLink></item><item><title>Vendor Spotlight: Cloud Broker Jamcracker</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/tZbT-v64M-o/</link><category>Cloud Computing</category><category>Cloud Broker</category><category>Jamcracker</category><category>Shadow IT</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Tue, 21 May 2013 10:35:33 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2832</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Jamcracker was founded back in 1999 when ASPs (Application Service Providers) where popular. At that time they were a managed service provider who served up various software solutions to enterprises from a central location.  Enterprises who did not want to host and manage various software packages would look to Jamcracker to aggregate and provide those services for them.</p>
<p>Fast forward to the current decade and ASPs have been replaced with SaaS, IaaS and other types of cloud services. Jamcracker saw this shift to the cloud coming and built a cloud platform to broker various cloud services to their customers. Jamcracker provides a single point of management for managing and controlling billing, auditing, support, and security.  Jamcracker provides a catalog of cloud services for their customers to choose from and provides single sign-on (SSO) capabilities so the customers can seamlessly work across multiple services with one set of credentials.</p>
<h2>How it works</h2>
<p>As you can see from the image below, the Jamcracker broker platform sits in the middle of the cloud ecosystem connecting the cloud vendors, both public and private, and cloud solution providers (distributors, service providers, enterprise IT organizations, etc.) to end users whether they are from large enterprises, SMBs, or industry channels (for example Telecom providers). Jamcracker adds automation, workflow, integration, and single sign-on services so that the end users can simply pick what services they want from the catalog to use without having to install, manage, and configure those services.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/jamcracker-flow.png"><img class="aligncenter size-full wp-image-2833" alt="jamcracker-flow" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/jamcracker-flow.png" width="574" height="414" /></a></p>
<h2></h2>
<h2>Addressing Shadow IT challenges</h2>
<p>The Jamcracker solution provides a way for IT to proactively address the challenges of Shadow IT. Instead of fighting the battle of employees bringing in their own unmanaged cloud based solutions, Jamcracker provides a platform for enabling people to leverage cloud services on demand. IT gets the benefit of controlling the enterprise environment thus reducing risks created by unsupported one off solutions and reducing sprawl.</p>
<h2>Summary</h2>
<p>Jamcracker supports over 100 pre integrated services and that list continues to grow each day. Whether the need is to service internal IT customers or to provide services to enterprises as an external third party, Jamcracker is there to make this process seamless, simple, on-demand, and easy.  Check them out at <a href="http://www.jamcracker.com/">http://www.jamcracker.com/</a></p>
<p>&nbsp;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=tZbT-v64M-o:4vDfG3wwT7U:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=tZbT-v64M-o:4vDfG3wwT7U:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=tZbT-v64M-o:4vDfG3wwT7U:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=tZbT-v64M-o:4vDfG3wwT7U:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=tZbT-v64M-o:4vDfG3wwT7U:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/tZbT-v64M-o" height="1" width="1"/>]]></content:encoded><description>Jamcracker provides a single point of management for managing and controlling billing, auditing, support, and security.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/vendor-spotlight-cloud-broker-vendor-jamcracker/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/vendor-spotlight-cloud-broker-vendor-jamcracker/</feedburner:origLink></item><item><title>RESTful Services: The key to cloud computing</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/iqwaxrHWYJA/</link><category>Cloud Computing</category><category>ACID</category><category>BASE</category><category>REST</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Tue, 07 May 2013 20:14:31 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2800</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>As companies start embracing cloud computing, architects and developers must start thinking differently to take full advantage of what the cloud has to offer. Cloud computing promises agility, high scalability, and speed to market. In order to reap those benefits, a deep understanding of distributed systems, RESTful services, and ACID vs BASE transactions is critical. In this post I&#8217;ll take my best shot at explaining how to do REST right and why BASE transactions are important in the cloud.</p>
<h2>Why REST?</h2>
<p>There are many reasons why RESTful services are a critical component of any cloud service.  First of all, when building services in the cloud one typically builds on top of an Infrastructure as a Service (IaaS) or Platform as a Service (PaaS) provider and integrates with one to many Software as a Service (SaaS) offerings. All of these vendor or open source solutions have exposed their APIs using RESTful services.</p>
<p>In addition, clouds are heterogeneous ecosystems that connect many different services from many different companies written in many different technology stacks. The complexities of the underlying stacks and protocols should be abstracted away from the business logic so this ecosystem of services can easily connect and work in harmony. A great example of this concept in practice is how simply we can “plugin” social media functionality from Facebook, Twitter, Pinterest, and other social media touchpoints. Underneath those widely used APIs are some very diverse and complex systems. All of that complexity is hidden from us as developers and literally in a few minutes we can connect our applications and leverage all of that wonderful social functionality. That is agility at its finest.</p>
<p>Second, gone are the days of building separate systems for individual touchpoints. Today the preferred method is to build multiple user interfaces (web, mobile, tablet, etc.) that leverage the same services and are always in sync. We have to build things this way because our users are bouncing around between devices and browsers and will leave in droves if each touchpoint behaves differently. To make things even easier, there are a few companies that are delivering mobile platforms so that developers can maintain a single codebase while the platforms transform that code into the various different mobile and tablet user interfaces. Did I mention agility?</p>
<p>Third, and most important, cloud infrastructure is virtual and dynamic, meaning resources come and go in an elastic matter and every piece of virtual infrastructure is expected to fail. The cloud is built so a failure in one part of the infrastructure does not impact the entire system as additional infrastructure can be dynamically created to take over. In order to design for failure, one must refrain from relying on application state because the virtual cloud infrastructure maintaining the state can fail. How does RESTful services get by without maintaining state? By leveraging hypermedia as the engine of application state (HATEOAS). HATEOAS means that state is represented by a series of links (URIs) much like following the site map of a website by following the URLs. When cloud infrastructure fails or is unavailable, other available cloud resources can take over. These cloud resources get their instructions from the URI and process the request.</p>
<p>This first example shows a successful REST call. No application state is stored on the client. The client uses hypermedia links to instruct the server what to execute. The server performs the get customer call and returns XML as instructed by the Accept command.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide11.png"><img class="aligncenter size-large wp-image-2801" alt="REST call 200" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide11-1024x576.png" width="560" height="315" /></a> <a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide21.png"><br />
</a>In the second example, the REST call returns a 504 Timeout error because something happened to the server during processing. The call is retried and redirected to the next available server. No application state is required because once again the server simply follows the instructions of the hypermedia links (URI). Another important fact is that the client leverages DNS (mydomain.com) and does not have to know anything about the cloud infrastructure on the right hand side. The client leverages an elastic IP address which never changes (static) while the internal IP addresses of the various cloud infrastructure changes as servers scale up and down (dynamic).</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide21.png"><img class="aligncenter size-large wp-image-2802" alt="Slide2" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide21-1024x576.png" width="560" height="315" /></a></p>
<p>A good analogy of HATEOAS is the way a GPS works in a car.  Punch in a final destination on the GPS and the application returns a list of directions. You start driving by following these directions. The voice on the application tells you to turn when the next instruction is due. Let’s say you pull over for lunch and shut the off the car. When you resume driving, the remaining directions in the trip list pick right up where they left off. This is exactly how REST works via hypermedia. A node failing is similar to shutting your car off for lunch and another node picking up where the failed node left off is similar to starting back up the car and the GPS. Make sense?</p>
<h2>ACID vs. BASE</h2>
<p>Building stateless services also requires thinking differently about data consistency. Here are two really good articles that dive deeper into this topic (from <a href="http://www.zapthink.com/2011/06/01/base-jumping-in-the-cloud-rethinking-data-consistency/">ZapThink</a>  and <a href="http://highscalability.com/blog/2013/5/1/myth-eric-brewer-on-why-banks-are-base-not-acid-availability.html">HighScalability.com</a>). ACID (Atomicity, Consistency, Isolation, Durability) transactions are focused on ensuring that a transaction is complete and consistent. ACID transactions will lock part of a database to ensure that the transaction is completed and committed to the database. With ACID, a transaction cannot leave the database in an inconsistent state. This creates issues in a high volume distributed system when many services may be competing for the same resources. For example, let’s say that Walmart.com promotes a “Deal of the Day” that is available at all of their stores. If they design for ACID transactions, each time a web user clicked on the deal certain parts of the database table would be locked momentarily while the database ensured the consistency of the transaction. Sure it may only take a fraction of a second but if thousands of consumers are trying to click on the deal concurrently the website performance would be horrendous due to locking.</p>
<p>A better way to solve that problem is with BASE (Basically Available, Soft State, Eventually Consistent) transactions. BASE is focused on ensuring that resources are always available and the data will <i>eventually</i> become consistent. With BASE, the database does not lock thus allowing many consumers to get their deals with no waiting. The downside to this approach is that a small number of transactions may fail and those transactions will need to be reconciled. If there was a counter showing total deals issued, the number would be mostly accurate but it might be a slightly off due to timing or to a failed transaction. The developers have to account for these minor issues through retries, audits, reconciliation processes, etc. BASE transactions are harder to develop for but they allow systems to achieve high scalability and better performance than ACID based systems.</p>
<p>One of the challenges companies have when they decide to port applications from on-premises to the cloud is that some of their legacy systems are reliant on ACID transactions. To port an ACID based application without making drastic design changes, they would have to deploy the application in a single partition in order to get the same results as expected from the on-premises solution. By doing this they lose much of the value of the cloud because the ACID based application cannot be elastic. <strong>BASE transactions are the key to elasticity in the cloud.</strong></p>
<h2>Summary</h2>
<p>Architecting solutions for cloud computing requires a solid understanding of how the cloud works. To build resilient solutions that scale, one must design their solution with the expectation that everything can and will fail. Architects should become familiar with how RESTful services work. It takes a shift in thinking to build things properly in the cloud including moving away from ACID transactions to BASE. To truly take advantage of the benefits of cloud computing, architects must build RESTful services the right way by leveraging hypermedia as the application state instead of storing state within the services themselves.</p>
<p><strong>A great book on this topic is Jason Bloomberg&#8217;s latest called <a href="http://www.amazon.com/The-Agile-Architecture-Revolution-REST-Based/dp/1118409779?&amp;linkCode=wey&amp;tag=lypi-20">The Agile Architecture Revolution: How Cloud Computing, REST-Based SOA, and Mobile Computing are Changing Enterprise IT</a>.</strong></p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=iqwaxrHWYJA:yKPWYJr45_c:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=iqwaxrHWYJA:yKPWYJr45_c:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=iqwaxrHWYJA:yKPWYJr45_c:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=iqwaxrHWYJA:yKPWYJr45_c:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=iqwaxrHWYJA:yKPWYJr45_c:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/iqwaxrHWYJA" height="1" width="1"/>]]></content:encoded><description>Cloud computing promises agility, high scalability, and speed to market. In order to reap those benefits, a deep understanding of distributed systems, RESTful services, and ACID vs. BASE transactions is critical.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/restful-services-the-key-to-cloud-computing/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">2</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/restful-services-the-key-to-cloud-computing/</feedburner:origLink></item><item><title>Disaster recovery strategies in the cloud</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/CGJ2yVTUxrM/</link><category>Architecture</category><category>Cloud Computing</category><category>disaster recovery</category><category>heroku</category><category>IaaS</category><category>open shift</category><category>Open Stack</category><category>PaaS</category><category>SaaS</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Thu, 02 May 2013 05:23:32 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2767</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p>Cloud computing allows us to build systems faster and cheaper than ever before.  There are countless stories of companies building solutions that were unfeasible and practically impossible in the old days of purchasing servers and managing datacenters.  But don’t be fooled, there are no silver bullets. When it comes to uptime and resiliency it still comes down to good old architecture and planning. This post will focus on different strategies around handling outages, failures, and disasters.</p>
<h3>SaaS Strategies</h3>
<p>There are many strategies for avoiding downtime in the cloud for all three cloud service models. Many people don’t consider any strategies for SaaS solutions and this could lead to serious business impacts if a disaster was to occur. What would a company do if its SaaS based financial system went offline for a week? It would not be pretty. For SaaS solutions, if the data or business processes are mission critical, there better be a plan for operating if the service is not available.  Minimally, the SaaS contract from the vendor should have a <a href="http://en.wikipedia.org/wiki/Source_code_escrow">software escrow</a>.  A SaaS software escrow protects the buyer if the SaaS vendor goes out of business or is purchased by another company and severs the existing contract.  The escrow holds the vendor&#8217;s IP in an independent third party’s holding area where it may be released to the buyer if the vendor goes out of business or kills the product. This essentially gives the buyer the ownership of the data.</p>
<p>Escrows are great for protecting your rights and ownership, but they don’t do much for getting your business back up and running. Businesses should document and practice manual processes as a plan to combat a major outage for any mission critical SaaS functionality. In some cases, it may even be feasible to use two different SaaS vendors to protect against outages. For example, let’s say that a business is running an eCommerce site that generates $1M a day in online sales. Instead of reinventing the wheel they decide to leverage a best in breed shopping cart and credit card processing SaaS solution. If this SaaS solution fails, they risk losing $700 a minute. It would be wise for them to use a second SaaS solution either in a round robin fashion or as a hot backup. Most of these solutions charge by transaction so a hot backup method would not be an expensive undertaking.</p>
<p>Some SaaS providers have an export feature where the buyers can download their data on demand. A best practice is to write automation scripts that run on a schedule (daily, weekly. or monthly) that will extract this data and store it securely in case of a disaster.</p>
<h3>IaaS Strategies</h3>
<p>IaaS disaster recovery strategies are much more involved than PaaS and SaaS, hence one of the advantages of the higher up service models. With IaaS, the buyer does not have control over the uptime of the data centers unless they are building their own private clouds. For this blog post, I will not discuss disaster recovery at the data center level, but will focus on the application stack and higher layers of the architecture.</p>
<h5>Avoiding lock-in</h5>
<p>Public cloud providers like Amazon, Google, Rackspace, and Microsoft have had their share of outages over the years. It would be foolish to expect otherwise. There are many ways to design around these failures. Building redundant solutions across datacenters or zones is a best practice to avoid outages.  But some companies simply refuse to relinquish control and build their own <b>private clouds</b>. This strategy has huge tradeoffs. Private clouds sacrifice many business benefits such as rapid elasticity, cost efficiencies, and others. For some companies, control is the highest priority so building private clouds are a viable option. Standard datacenter disaster recovery strategies apply.</p>
<p>Another approach is to build code that does not lock you into the IaaS vendor. This is easier said than done. For example, one of the huge benefits of AWS and other IaaS providers is the large selection of APIs that can be leveraged to quickly build applications and focus more on solving business problems. To be cloud agnostic one must refrain from using these proprietary APIs thus devaluing the vendor offering. An alternative is to use <b>open source cloud software</b> like <a href="http://www.openstack.org/">OpenStack</a>.</p>
<p>A third option is to leverage multiple public cloud vendors. This is a very unattractive option because the cloud vendors APIs are very different and require developers to build way more code than they would had they leveraged a single vendor. One exception is leveraging <b><a href="http://www.eucalyptus.com/">Eucalyptus</a> with AWS</b>.  Eucalyptus supports many of the AWS APIs which allow the buyer to build hybrid cloud solutions and move workloads between the public and private cloud when outages occur.  Apache Cloudstack also has support for AWS APIs. OpenStack supporters will also be able to move workloads across public and private clouds if both datacenters are using OpenStack.</p>
<h5>All in with public clouds</h5>
<p>For those who believe in and thrive in public clouds and are far past the concerns of lock-in and control, here are four common strategies for dealing with outages and disasters.</p>
<ol>
<li>Classic backup and restore method</li>
<li>Redundant datacenters – Active/Passive “Cold”</li>
<li>Redundant datacenters – Active/Passive “Warm”</li>
<li>Redundant datacenters – Active/Active “Hot”</li>
</ol>
<p>The term datacenter here represents virtual datacenters provided by the IaaS vendor. In the world of AWS, these are known as availability zones (AZ) but regions can be used as well.</p>
<h5>Backup and recovery</h5>
<p>In this model, daily full backups and incremental backups are created during the day and stored to a disk service provided by the cloud vendor. The backups are also copied to the secondary datacenter and possibly to some other third party vendor just to be extra safe.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide1.png"><img class="aligncenter size-large wp-image-2768" alt="Backup-Recovery" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide1-1024x576.png" width="560" height="315" /></a></p>
<p>If the database goes offline, gets corrupted, or encounters some other issue, we can restore the last good backup and apply the latest incremental backups on top of that.  If those are unavailable we can go to the secondary site and pull those backups.</p>
<p>This method has been used for years in our brick and mortar datacenters.</p>
<h5>Active/Passive Cold</h5>
<p>In this model, all of the backup virtual machines are scripted and ready to launch in case of an emergency. When a disaster occurs, the team runs automated scripts that fire up the database server and restores the latest backups. It also fires up the other servers and essentially creates a duplicated environment in a few minutes hence the term “cold”. This method is a cost effective way to deal with outages but if the toleration for the length of time for an outage is less than a few minutes it will not be an acceptable plan.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide2.png"><img class="aligncenter size-large wp-image-2769" alt="Active-Passive-cold" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide2-1024x576.png" width="560" height="315" /></a></p>
<h5>Active/Passive Warm</h5>
<p>The warm method runs the database server hot, meaning that it is always on and always in sync with the master data center. The other servers are cold or off and are only fired up when needed. This method costs a little more than the cold method due to the database server costs but greatly reduces the amount of downtime if an outage occurred because no database restore would be required. In addition, adhoc and business intelligence workloads could be pointed to this database instance so that it is not running idle during normal times thus improving the overall efficiency of the master database.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide3.png"><img class="aligncenter size-large wp-image-2770" alt="Active-Passive-Warm" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide3-1024x576.png" width="560" height="315" /></a></p>
<p>&nbsp;</p>
<h5>Active/Active Hot</h5>
<p>The most expensive but most resilient method is to run fully redundant datacenters at all times. The beauty of this model is that all of the compute resources are being used at all times and in many cases a complete failure of one datacenter may not cause any downtime at all. This is the model that I have used with my first startup that has <a href="http://www.kavistechnology.com/blog/how-we-avoided-downtime-again-as-aws-takes-an-outage/">never missed a transaction due to any AWS outage</a>.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide4.png"><img class="aligncenter size-large wp-image-2771" alt="Active-Passive-Hot" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/05/Slide4-1024x576.png" width="560" height="315" /></a></p>
<h3>PaaS Strategies</h3>
<p>With PaaS, the entire platform is the responsibility of the vendor and the buyer is responsible for the applications built on top of the platform. The disaster recovery strategies for PaaS are similar to those of SaaS and IaaS. Your PaaS contracts should also have a provision in it for software escrow. Like IaaS, the same thoughts about control and lock-in apply. If those are a concern there are numerous open source PaaS solutions like <a href="https://www.openshift.com/">Open Shift</a> or <a href="http://www.cloudfoundry.com/">Cloud Foundry</a> that can be run in private or public clouds and run on top of open source solutions like OpenStack.</p>
<p>PaaS platforms handle scaling and failover for you but it is still up to the buyer to configure the platform to deploy enough resources to handle redundancy. For example, PaaS provider <a href="https://www.heroku.com/">Heroku</a> deploys dynos that can provide redundancy across multiple AWS zones. However, the buyer must configure the platform to have at least 2 dynos for each layer of the architecture in order for each layer to fail over successfully.</p>
<h3>Summary</h3>
<p>Cloud computing is still relatively new and immature. We should expect to see occasional outages, vendors closing their doors, and natural disasters like hurricanes, earth quakes, and floods impacting our ability to keep our systems up all of the time. Planning for disasters is a critical function regardless of the cloud service model. I have highlighted a few options but there are certainly more. Apply the option that makes sense for your business and make sure your hands are not tied if and when your cloud service fails.</p>
<p>&nbsp;</p>
<p>* NOTE:  Special thanks to <a href="@bgracely">Brian Gracely</a> for proof reading this for me!</p>
<p>&nbsp;</p>
<div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=CGJ2yVTUxrM:sKG_4hsBhNc:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=CGJ2yVTUxrM:sKG_4hsBhNc:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=CGJ2yVTUxrM:sKG_4hsBhNc:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=CGJ2yVTUxrM:sKG_4hsBhNc:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=CGJ2yVTUxrM:sKG_4hsBhNc:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/CGJ2yVTUxrM" height="1" width="1"/>]]></content:encoded><description>When it comes to uptime and resiliency it still comes down to good old architecture and planning.</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/disaster-recovery-strategies-in-the-cloud/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/disaster-recovery-strategies-in-the-cloud/</feedburner:origLink></item><item><title>7 lessons learned from an early adopter of the cloud</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/lKfm_DXzIDw/</link><category>Architecture</category><dc:creator xmlns:dc="http://purl.org/dc/elements/1.1/">MikeKavis</dc:creator><pubDate>Tue, 23 Apr 2013 20:28:42 PDT</pubDate><guid isPermaLink="false">http://www.kavistechnology.com/blog/?p=2734</guid><content:encoded xmlns:content="http://purl.org/rss/1.0/modules/content/"><![CDATA[<p><a class="a2a_button_twitter_tweet addtoany_special_service" data-count="none" data-url="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/" data-text="7 lessons learned from an early adopter of the cloud"></a><a class="a2a_button_google_plusone addtoany_special_service" data-annotation="none" data-href="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/"></a><a class="a2a_button_google_plus_share addtoany_special_service" data-annotation="none" data-href="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/"></a><a class="a2a_button_facebook_like addtoany_special_service" data-href="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/"></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fwww.kavistechnology.com%2Fblog%2F7-lessons-learned-from-an-early-adopter-of-the-cloud%2F&amp;linkname=7%20lessons%20learned%20from%20an%20early%20adopter%20of%20the%20cloud" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://www.kavistechnology.com/blog/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_pinterest" href="http://www.addtoany.com/add_to/pinterest?linkurl=http%3A%2F%2Fwww.kavistechnology.com%2Fblog%2F7-lessons-learned-from-an-early-adopter-of-the-cloud%2F&amp;linkname=7%20lessons%20learned%20from%20an%20early%20adopter%20of%20the%20cloud" title="Pinterest" rel="nofollow" target="_blank"><img src="http://www.kavistechnology.com/blog/wp-content/plugins/add-to-any/icons/pinterest.png" width="16" height="16" alt="Pinterest"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.kavistechnology.com%2Fblog%2F7-lessons-learned-from-an-early-adopter-of-the-cloud%2F&amp;title=7%20lessons%20learned%20from%20an%20early%20adopter%20of%20the%20cloud" id="wpa2a_2"><img src="http://www.kavistechnology.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><p>Cloud computing has come a long way since I first swiped a credit card on AWS in 2008 and started building a platform from scratch in the cloud. Back then cloud services were not mature and many of today&#8217;s SaaS and PaaS solutions that assist in building cloud based solutions did not exist. Back in 2008 we built everything from scratch and there were few success stories to learn from. Long story short, we made a ton of mistakes and learned from them. To save you all from making those same mistakes, here are some hard lessons learned with a twist of humor.</p>
<h2>1. Spending money like a drunk college kid with a credit card</h2>
<p>Cloud computing is supposed to be a money saver. It can be but not without a view into how many servers are running and how well they are being utilized  When a team consists of only 3 people it is easy to manage the cloud. When the team ramps up to 30+ people you better have a good process in place for managing and monitoring cloud resources. In a blink of an eye the monthly cloud bill will hockey stick the way you hoped your revenue would and the developers will create dependencies on these assets like a host parasite making it hard to shut down the excess resources.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/drunk-college-kid.jpg"><img class="aligncenter size-medium wp-image-2754" alt="drunk-college-kid" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/drunk-college-kid-300x202.jpg" width="300" height="202" /></a></p>
<p><strong>Recommendation</strong>:</p>
<p>Put processes and controls in place to manage cloud resources and invest in cost optimization tools. These tools pay for themselves every month.</p>
<h2>2. Walking to school and back uphill both ways</h2>
<p>Remember the joke where the old timer says &#8220;When I was your age I walked to school uphill, both ways&#8221;? Well the cloud equivalent is &#8220;When I started in the cloud, I built everything from scratch, all the time&#8221;. I was involved in a project where the first several (and I mean several) sprints were all focused on IT plumbing features like setting up message queues, event processing, caching, email engines, notification systems, and on and on. To make matters worse, we had very high SLAs so each piece of plumbing had to be redundant across zones and withstand an entire AWS zone failure. After a few months of these plumbing sprints we did not have a lot to show to our customers. This is why I am such a fan of PaaS. Today&#8217;s PaaS solutions provide all of these IT plumbing features as simple APIs.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/chinesekids-600x369.jpg"><img class="aligncenter size-medium wp-image-2758" alt="chinesekids-600x369" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/chinesekids-600x369-300x184.jpg" width="300" height="184" /></a></p>
<p><strong>Recommendation</strong>:</p>
<p>If it not core to your business, don&#8217;t build it! Leverage PaaS and SaaS solutions where it makes sense and don&#8217;t do all of the heavy lifting. The goal should be to get to market fast. Leave the plumbing to the plumbers.</p>
<p>&nbsp;</p>
<h2>3. Needle in the haystack</h2>
<p>Trying to debug a system distributed across hundreds or thousands of servers is like trying to find a needle in a haystack. Imagine having the following server farms that autoscale: web servers, API servers, cache servers, database servers. Now imagine a customer reports an error with one of the values of one of the fields on the user interface. What server and which server farm would you search? Which datacenter (zone or region in AWS terms) would you search first? There needs to be a centralized logging process in place that is searchable and can be segregated by customer.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/needle-haystack.jpg"><img class="aligncenter size-full wp-image-2759" alt="needle-haystack" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/needle-haystack.jpg" width="224" height="225" /></a></p>
<p><strong>Recommendation</strong>:</p>
<p>Put a logging strategy in place and consolidate all logs to a central location while locking down all of the production servers to prevent accidental issues from developers poking around while troubleshooting. This is another area where time and money is better spent leveraging logging solutions in the marketplace rather than rolling your own.</p>
<p>&nbsp;</p>
<h2>4. Don&#8217;t go out without making reservations</h2>
<p>AWS offers reserved instance which allows a company to prepay for servers upfront thus giving deep hourly discounts that cut the costs of a server by about 50%. Studies show that a majority of companies do a <a href="http://www.bigdatalandscape.com/news/only-one-third-of-public-cloud-resources-are-optimally-managed-new-study-finds">poor job</a> of optimizing server costs especially around leveraging reserved instances.</p>
<blockquote><p>Only 33% of instances are reserved instances today, while some 94% of instances, if converted to reserved instances, would result in expected cost savings.</p></blockquote>
<p>Some of this is due to a lack of understanding on how reserved instances work. When you buy a reserved instance, it is not assigned to an actual virtual server. Instead, at the end of the month AWS applies the number of reservations per server size to the usage of servers for that size.</p>
<p>&nbsp;</p>
<p><strong>Recommendation</strong></p>
<p>Have a strategy around reserved instances. If you reserve 15 XLs and use only 10, you over paid. But if you know that your system fluctuates between 10 and 15 servers, but always has at least 10, buy 10 reserved. Just because the count fluctuates does not mean you can&#8217;t take advantage of reserved instances. This is just another reason to use one of the many cost optimization tools in the market place. These tools will figure out the optimal number of reserved instances for you.</p>
<p>&nbsp;</p>
<h2>5. Giving developers an all you can eat buffet for free</h2>
<p>Imagine telling a developer that they can have any size virtual machine they want and as many as they want. Nobody would do that&#8230;on purpose. But giving developers self service provisioning rights without any process or controls is the equivalent of sending a professional football team&#8217;s offensive line to an all you can eat Chinese buffet. Nobody is making any money in that scenario.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/monty-python.jpg"><img class="aligncenter size-medium wp-image-2755" alt="monty-python" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/monty-python-300x203.jpg" width="300" height="203" /></a></p>
<p><strong>Recommendation</strong></p>
<p>In order to do self provisioning right, a good deal of planning and governance must be put in place. The DevOps team should only allow developers to self provision from a certified image that can pass all of the security and regulatory audits. In addition the process for self provisioning should have features that track costs and chargebacks, has hours of operations which can automatically shut of these resources in off hours, and have the proper permissions in place so only authorized people can self provision. I have seen a number of companies build very nice self service portals to do this but I would look to the market place first and see if any tools can meet the needs before building.</p>
<p>&nbsp;</p>
<h2>6. Governance is not a dirty word. Your CIO&#8217;s reaction to another outage is.</h2>
<p>People just hate the word governance. It reminds them too much of government. The cloud environment is all about agility so why do we keep demanding governance? Well, a fool with a tool is still a fool. Just because the cloud offers us ways to be more agile does not mean we should not apply a set of processes and controls around building software and services. We still need to control costs, pass audits, keep the bad guys out, protect customer data, meet high SLAs, and much more. Don&#8217;t let the agility of the cloud turn your operation into the wild west.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/Al_Pacino_Heat_Godfather_Scarface_Carlito_s_etc_.jpg"><img class="aligncenter size-medium wp-image-2757" alt="Al_Pacino_Heat_Godfather_Scarface_Carlito_s_etc_" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/Al_Pacino_Heat_Godfather_Scarface_Carlito_s_etc_-300x225.jpg" width="300" height="225" /></a></p>
<p><strong>Recommendation:</strong></p>
<p>At the end of the day it is all about architecture. Building software in the cloud requires best practices in design and an in-depth understanding of the strengths and weaknesses of cloud computing. DevOps plays a key role in governance as well. Centralizing, abstracting, and automating the processes in operations, builds, and deployments allows developers to focus on development and protects the overall platform from chaos.</p>
<p>&nbsp;</p>
<h2>7. Pay no attention to the man behind the curtain.</h2>
<p>Remember the scene in the Wizard of Oz where Toto pulls back the curtain and the true identity of the Wizard of Oz was revealed? The perception of the wizard sure went down in flames when he was exposed. Make sure the same does not happen to your cloud services.</p>
<p><a href="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/oz-wizard-behind-the-curtain-769602.jpg"><img class="aligncenter size-full wp-image-2756" alt="oz-wizard-behind-the-curtain-769602" src="http://www.kavistechnology.com/blog/wp-content/uploads/2013/04/oz-wizard-behind-the-curtain-769602.jpg" width="264" height="264" /></a></p>
<p><strong>Recommendation:</strong></p>
<p>Live by the mantra &#8220;Automate Everything&#8221;.  Invest in continuous integration and continuous deployments. Monitor everything. Know when your system is showing signs of stress and act before things get catastrophic. Make everything as &#8220;push button&#8221; as possible and stay away from the man behind the curtain syndrome.</p>
<p>&nbsp;</p>
<p><a class="a2a_button_twitter_tweet addtoany_special_service" data-count="none" data-url="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/" data-text="7 lessons learned from an early adopter of the cloud"></a><a class="a2a_button_google_plusone addtoany_special_service" data-annotation="none" data-href="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/"></a><a class="a2a_button_google_plus_share addtoany_special_service" data-annotation="none" data-href="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/"></a><a class="a2a_button_facebook_like addtoany_special_service" data-href="http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/"></a><a class="a2a_button_linkedin" href="http://www.addtoany.com/add_to/linkedin?linkurl=http%3A%2F%2Fwww.kavistechnology.com%2Fblog%2F7-lessons-learned-from-an-early-adopter-of-the-cloud%2F&amp;linkname=7%20lessons%20learned%20from%20an%20early%20adopter%20of%20the%20cloud" title="LinkedIn" rel="nofollow" target="_blank"><img src="http://www.kavistechnology.com/blog/wp-content/plugins/add-to-any/icons/linkedin.png" width="16" height="16" alt="LinkedIn"/></a><a class="a2a_button_pinterest" href="http://www.addtoany.com/add_to/pinterest?linkurl=http%3A%2F%2Fwww.kavistechnology.com%2Fblog%2F7-lessons-learned-from-an-early-adopter-of-the-cloud%2F&amp;linkname=7%20lessons%20learned%20from%20an%20early%20adopter%20of%20the%20cloud" title="Pinterest" rel="nofollow" target="_blank"><img src="http://www.kavistechnology.com/blog/wp-content/plugins/add-to-any/icons/pinterest.png" width="16" height="16" alt="Pinterest"/></a><a class="a2a_dd a2a_target addtoany_share_save" href="http://www.addtoany.com/share_save#url=http%3A%2F%2Fwww.kavistechnology.com%2Fblog%2F7-lessons-learned-from-an-early-adopter-of-the-cloud%2F&amp;title=7%20lessons%20learned%20from%20an%20early%20adopter%20of%20the%20cloud" id="wpa2a_4"><img src="http://www.kavistechnology.com/blog/wp-content/plugins/add-to-any/share_save_171_16.png" width="171" height="16" alt="Share"/></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lKfm_DXzIDw:S1DlySRDZH8:D7DqB2pKExk" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lKfm_DXzIDw:S1DlySRDZH8:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lKfm_DXzIDw:S1DlySRDZH8:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?i=lKfm_DXzIDw:S1DlySRDZH8:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:TzevzKxY174"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=TzevzKxY174" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?a=lKfm_DXzIDw:S1DlySRDZH8:l6gmwiTKsz0"><img src="http://feeds.feedburner.com/~ff/KavisTechnologyConsulting?d=l6gmwiTKsz0" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/lKfm_DXzIDw" height="1" width="1"/>]]></content:encoded><description>Cloud computing has come a long way since I first swiped a credit card on AWS in 2008 and started building a platform from scratch in the cloud. Back then cloud services were not mature and many of today&amp;#8217;s SaaS and PaaS solutions that assist in building cloud based solutions did not exist. Back in [...]</description><wfw:commentRss xmlns:wfw="http://wellformedweb.org/CommentAPI/">http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/feed/</wfw:commentRss><slash:comments xmlns:slash="http://purl.org/rss/1.0/modules/slash/">0</slash:comments><feedburner:origLink>http://www.kavistechnology.com/blog/7-lessons-learned-from-an-early-adopter-of-the-cloud/</feedburner:origLink></item><item><title>Links for 2009-03-26 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/OH3C_ZEx9Bg/dugg</link><pubDate>Fri, 27 Mar 2009 00:00:00 PDT</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2009-03-26</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/business_finance/A_Visual_Guide_to_the_Fall_of_General_Motors_INFOGRAPHIC"&gt;A Visual Guide to the Fall of General Motors (INFOGRAPHIC)&lt;/a&gt;&lt;br/&gt;
In recent weeks, GM has been making a last-ditch effort to deal with its mounting problems and somehow escape bankruptcy. The final outcome of remains to be seen, but any bailout efforts or even the most drastic of moves at this stage seem to be, as visualized below, the equivalent of lifting massive, crushing weights with simple balloons.&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/OH3C_ZEx9Bg" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2009-03-26</feedburner:origLink></item><item><title>Links for 2009-03-19 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/4gNi4sjLz0U/dugg</link><pubDate>Fri, 20 Mar 2009 00:00:00 PDT</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2009-03-19</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/programming/10_awesome_htaccess_hacks_for_WordPress"&gt;10 awesome .htaccess hacks for WordPress&lt;/a&gt;&lt;br/&gt;
.htaccess, the file which control the Apache webserver, is very useful and allows you to do a lot of things. In this article, let&amp;rsquo;s see how .htaccess can help you with your WordPress blog, for both security,functionnality and usability.&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/4gNi4sjLz0U" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2009-03-19</feedburner:origLink></item><item><title>Links for 2009-01-22 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/gD3NroDvtTU/dugg</link><pubDate>Fri, 23 Jan 2009 00:00:00 PST</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2009-01-22</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/linux_unix/Being_Anti_Linux_is_bad_for_your_business_health"&gt;Being Anti-Linux is bad for your business' health&lt;/a&gt;&lt;br/&gt;
Today, Microsoft is announcing its biggest layoff ever and Sun is quietly laying off the first of what may turn out to be an additional 6,000 employees. Red Hat? Total year-over-year up 17%. Novell? Its Linux sales in 2008 were up by 38%. Which companies do you think are doing better?&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/gD3NroDvtTU" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2009-01-22</feedburner:origLink></item><item><title>Links for 2009-01-15 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/NKF67TOXKvM/dugg</link><pubDate>Fri, 16 Jan 2009 00:00:00 PST</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2009-01-15</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/programming/The_Rumors_of_SOA_s_Demise"&gt;The Rumors of SOA's Demise...&lt;/a&gt;&lt;br/&gt;
More on Dead SOA, or is it really dead?&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/NKF67TOXKvM" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2009-01-15</feedburner:origLink></item><item><title>Links for 2009-01-09 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/bIIJR3eIeV0/dugg</link><pubDate>Sat, 10 Jan 2009 00:00:00 PST</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2009-01-09</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/software/Architecture_Strategy_SOA_n_End_of_Life_2009_01_01"&gt;Architecture + Strategy : SOA &amp;ndash; End of Life 2009.01.01&lt;/a&gt;&lt;br/&gt;
David Chou's 2 cents on the SOA is Dead discussion and why we fail at SOA&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/software/Managing_Amazon_Web_Services_From_An_iPhone_Plug_Into_The"&gt;Managing Amazon Web Services From An iPhone - Plug Into The&lt;/a&gt;&lt;br/&gt;
Run your data center from anywhere using an iPhone app.  Sweet!&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/hardware/Privacy_Issues_When_Computing_in_the_Cloud"&gt;Privacy Issues When Computing in the Cloud&lt;/a&gt;&lt;br/&gt;
Good overview of privacy concerns to deal with when embarking on a cloud computing initiative&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/hardware/Gartner_recommends_to_Start_Taking_the_Cloud_Seriously"&gt;Gartner recommends to Start Taking the Cloud Seriously&lt;/a&gt;&lt;br/&gt;
Cloud computing figures prominently in recently released Gartner report entitled &amp;quot;CIO New Year&amp;rsquo;s Resolutions, 2009.&amp;quot; Gartner&amp;rsquo;s overall advice to the CIO is to do what is necessary to survive in &amp;lsquo;09, but to be sure to also invest in the future by building and preparing for what lies beyond.&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/bIIJR3eIeV0" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2009-01-09</feedburner:origLink></item><item><title>Links for 2009-01-08 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/quPPpI1rIik/dugg</link><pubDate>Fri, 09 Jan 2009 00:00:00 PST</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2009-01-08</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/software/Could_the_death_of_SOA_bring_it_back_to_life"&gt;Could the &amp;quot;death&amp;quot; of SOA bring it back to life?&lt;/a&gt;&lt;br/&gt;
Could the removal of the SOA hype lead to more focus and actual results?&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/software/Application_Platform_Strategies_Blog_SOA_dead_Didn_t_you_n"&gt;Application Platform Strategies Blog: SOA dead? Didn't you n&lt;/a&gt;&lt;br/&gt;
More discussion of the death of an acronym and the need for architecture&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/hardware/The_Value_Proposition_of_Cloud_Computing"&gt;The Value Proposition of Cloud Computing&lt;/a&gt;&lt;br/&gt;
Keep this bulleted list handy for future reference&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/hardware/The_Future_of_Cloud_Computing_3"&gt;The Future of Cloud Computing&lt;/a&gt;&lt;br/&gt;
Predictions from numerous industry experts&lt;/li&gt;
&lt;li&gt;&lt;a href="http://digg.com/software/Executive_Advisory_Program_SOA_kill_the_acronym_and_focu"&gt;Executive Advisory Program: SOA -- kill the acronym and focu&lt;/a&gt;&lt;br/&gt;
Yet another comment about the death of the SOA term and the need for architecture&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/quPPpI1rIik" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2009-01-08</feedburner:origLink></item><item><title>Links for 2008-12-31 [Digg]</title><link>http://feedproxy.google.com/~r/KavisTechnologyConsulting/~3/PZXEYlNc5QU/dugg</link><pubDate>Thu, 01 Jan 2009 00:00:00 PST</pubDate><guid isPermaLink="false">http://digg.com/users/madgreek65//dugg#2008-12-31</guid><description>&lt;ul&gt;
&lt;li&gt;&lt;a href="http://digg.com/hardware/The_cloud_server_you_use_tomorrow_will_look_little_like_the"&gt;The cloud server you use tomorrow will look little like the&lt;/a&gt;&lt;br/&gt;
If you have an interest in the architectures that may very well come to dominate the worlds most sophisticated data centers, you should take some time to check out an article in eeTimes, entitled &amp;quot;Server makers get Goooogled&amp;quot;&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://feeds.feedburner.com/~r/KavisTechnologyConsulting/~4/PZXEYlNc5QU" height="1" width="1"/&gt;</description><feedburner:origLink>http://digg.com/users/madgreek65//dugg#2008-12-31</feedburner:origLink></item></channel></rss>
