{"id":765,"date":"2013-09-26T13:41:52","date_gmt":"2013-09-26T19:41:52","guid":{"rendered":"http:\/\/benincosa.com\/blog\/?p=765"},"modified":"2014-11-19T11:23:55","modified_gmt":"2014-11-19T17:23:55","slug":"cloud-computing-how-do-i-get-there","status":"publish","type":"post","link":"https:\/\/benincosa.com\/?p=765","title":{"rendered":"Cloud Computing: How Do I Get There?"},"content":{"rendered":"<p><!--?xml version=\"1.0\" encoding=\"UTF-8\" standalone=\"no\"?-->This post comes from a talk that I&#8217;ll be presenting on at the\u00a0<a href=\"http:\/\/www.govtech.com\/events\/Pacific-Northwest-Digital-Government-Summit-2013.html\">Pacific Northwest Digital Government Summit Conference<\/a> on October 2nd, 2013.<\/p>\n<p>History shows us that those that embrace technology and change survive while those that resist and stick with &#8220;business as usual&#8221; get left behind.\u00a0\u00a0If we have the technology and we don&#8217;t use it to make IT look like magic, then we&#8217;re probably doing it wrong. (Read &#8220;<a href=\"http:\/\/www.amazon.com\/The-Innovators-Dilemma-Revolutionary-Business\/dp\/0062060244\">The Innovator&#8217;s Dilemma<\/a>&#8221; and <a href=\"http:\/\/en.wikipedia.org\/wiki\/Clarke's_three_laws\">Clarke&#8217;s Three Law<\/a>.)<\/p>\n<p>I&#8217;ll be talking mainly about private cloud today, but many of these ideas can be taken into the public cloud as well.<\/p>\n<p><strong>Optimizing ROI on your Technology<\/strong><\/p>\n<p>My friend tells a story about when his wife first started using an iPhone.\u00a0\u00a0To get directions on a map she&#8217;d open up Safari and go to\u00a0<a href=\"http:\/\/maps.google.com\/\">http:\/\/maps.google.com<\/a>.\u00a0\u00a0To check Facebook she would open Safari and go to\u00a0<a href=\"http:\/\/facebook.com\/\">http:\/\/facebook.com<\/a>.\u00a0\u00a0To check her mail she&#8217;d open up Safari again and navigate to\u00a0<a href=\"http:\/\/gmail.com\/\">http:\/\/gmail.com<\/a>.\u00a0\u00a0You get the idea.<\/p>\n<p>She was still getting great use of her iPhone.\u00a0\u00a0She could now do things she could never do before.\u00a0\u00a0But there was a big part she was missing out on.\u00a0\u00a0She wasn&#8217;t using the App ecosystem that makes all of these things easier and delivers a richer experience.<\/p>\n<p>Today, most organizations have virtualization in the data center.\u00a0\u00a0Because of this IT is able to do things they&#8217;ve never been able to do before. \u00a0They&#8217;re shrinking their server footprints to once unimaginable levels saving money in capital and management costs.\u00a0\u00a0I&#8217;ve been in many data centers \u00a0where people proudly point to where rows of racks have been consolidated to one UCS domain with only a few blades.\u00a0\u00a0Its pretty cool and very impressive.<\/p>\n<p>But they&#8217;re missing something as big as the App Store. \u00a0They&#8217;re missing out on the APIs. \u00a0This is where ROI is not being optimized in the data center in a big way.<\/p>\n<p><a href=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/show-me-the-money.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-777\" title=\"show-me-the-money\" src=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/show-me-the-money.jpg\" alt=\"\" width=\"500\" height=\"270\" \/><\/a><\/p>\n<p>IT is shifting (or has shifted) to a DevOps model. DevOps means that your IT infrastructure team is more tightly aligned with your developers\/application people.\u00a0\u00a0This is a management perspective.\u00a0\u00a0But from a trenches perspective, the operations team is now turning into programmers. \u00a0Programmers of the data center. \u00a0The guy that manages the virtual environment, the guy who adds VLANs to switches, or the guy who creates another storage LUN: they&#8217;re all being told to automate and program what they do.<\/p>\n<p>The group now treats the IT infrastructure like an application that is constantly adding features and doing bug fixes.<\/p>\n<p>The programming of the IT infrastructure isn&#8217;t done in compiled languages like Java, C, or C++.\u00a0\u00a0Its done in interpreted languages like Python, Ruby, Bash,\u00a0\u00a0Powershell, etc.\u00a0\u00a0But the languages alone don&#8217;t get you there.\u00a0\u00a0You need a framework.\u00a0\u00a0This is where things like Puppet or Chef come into play.\u00a0\u00a0In fact, you even can look at it like you&#8217;re programming a data center operating system.\u00a0\u00a0This is where OpenStack provides you a framework to develop your data center operating system.\u00a0\u00a0Its analogous to the Web Application development world.\u00a0\u00a0Twitter was originally developed in Ruby using a framework called Ruby on Rails.\u00a0\u00a0(<a href=\"https:\/\/blog.twitter.com\/2011\/twitter-search-now-3x-faster\">Twitter has since moved off Ruby on Rails<\/a>).<\/p>\n<p>Making this shift gives you unprecedented speed, agility, and standardization.\u00a0\u00a0Those that don&#8217;t do it, will find their constituents looking elsewhere for IT services that can be delivered faster and cheaper.<\/p>\n<p><strong>The IT assembly line<\/strong><\/p>\n<p>Its hard for people to think of their IT professionals as assembly line workers.\u00a0\u00a0After all, they are doing complex things like installing servers, configuring networks, and updating firmware.\u00a0\u00a0These are CCIEs, VCPs, and Storage Gurus.\u00a0\u00a0But that&#8217;s actually what people in the trenches are: \u00a0Workers of the virtual Assembly line.\u00a0\u00a0IT managers should look at the way work enters the assembly line, understand the bottlenecks, and track how long it takes to get things through the line.\u00a0\u00a0Naturally, there are exceptions that crop up.\u00a0\u00a0But for the most part, the work required to deliver applications to the business are repetitive tasks.\u00a0\u00a0They&#8217;re just complicated, multi-step, repetitive tasks.<\/p>\n<p>To start with, we need to look at the common requests that come in:\u00a0\u00a0Creating new servers, deploying new applications, delivering a new test environment.\u00a0\u00a0Whatever it is, management really needs to understand how it gets done, and look at it like the manufacturing foreman sitting above the plant, looking down and watching a physical product make its way through.\u00a0\u00a0Observe which processes are in place, where they are being side stepped, or where they don&#8217;t exist at all.<\/p>\n<p>As an example, consider all the steps required to deploy a server. \u00a0It may look something like the flowchart below:<\/p>\n<p><a href=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/Screen-Shot-2013-09-26-at-8.57.07-AM.png\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-793\" title=\"Screen Shot 2013-09-26 at 8.57.07 AM\" src=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/Screen-Shot-2013-09-26-at-8.57.07-AM.png\" alt=\"\" width=\"500\" \/><\/a>That sure looks like an assembly line to me. \u00a0If you can view work that enters the infrastructure like an assembly line, you can start measuring how long it takes for certain activities to get done. \u00a0Then you can figure out ways to optimize.<\/p>\n<p><strong>Standardization of the Infrastructure<\/strong><\/p>\n<p>Manufacturing lines optimize throughput by standardizing processes and equipment.\u00a0\u00a0When I hear VMware tell everybody that &#8220;the hardware doesn&#8217;t matter&#8221;, I take exception.\u00a0\u00a0It matters.\u00a0\u00a0A lot.\u00a0\u00a0Just like your virtualization software matters.\u00a0\u00a0Cisco and other hardware venders come from it the opposite direction and say &#8220;the hypervisor doesn&#8217;t matter, we&#8217;ll support them all&#8221;.\u00a0\u00a0What all parties are really telling you is that they want you to standardize on them.\u00a0\u00a0All parties are trying to prove their value in a private cloud situation.<\/p>\n<p>What an organization will standardize on depends on a lot of things: Budget, skill set of Admins, Relationship with vendors and consultants, etc.\u00a0\u00a0In short, when considering the\u00a0holy trinity of the data center: Servers, Storage, &amp; Networking it usually gets into a religious discussion.<\/p>\n<p>But whatever you do, the infrastructure needs to be robust.\u00a0\u00a0This is why the emergence of Converged Infrastructures like Vblocks, FlexPods, and other reference architectures have become popular.\u00a0\u00a0The\u00a0\u00a0&#8220;<a href=\"http:\/\/youtu.be\/rWHniL8MyMM\">One-Piece-At-A-Time<\/a>&#8221; accidental\/cobbled architecture is not a good play.<\/p>\n<p><img decoding=\"async\" title=\"One-Piece-at-a-Time\" src=\"file:\/\/\/Users\/vallard\/Library\/Containers\/com.evernote.Evernote\/Data\/Library\/Application%20Support\/Evernote\/accounts\/Evernote\/xvallardx\/content\/p805\/c7f5e87953d1d94600b1d3dd0e75b894.jpeg\" alt=\"\" width=\"500\" \/><\/p>\n<p>Consider the analogy that a virtualized workload is cargo on a Semi Truck.\u00a0\u00a0Do you want that truck running over a 6 lane solid government highway like I-5 or do you want that stuff traveling at 60mph down a rinky bridge?<\/p>\n<p style=\"text-align: center;\">This?<\/p>\n<p><a href=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/Hussaini-Pakistan-Bridge.jpg\"><img decoding=\"async\" loading=\"lazy\" class=\"aligncenter size-full wp-image-770\" title=\"Hussaini-Pakistan-Bridge\" src=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/Hussaini-Pakistan-Bridge.jpg\" alt=\"\" width=\"500\" height=\"667\" \/><\/a><\/p>\n<p style=\"text-align: center;\">Or This?<\/p>\n<p><a href=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/i5bridgerender.jpg\"><img decoding=\"async\" class=\"aligncenter size-full wp-image-771\" title=\"i5bridgerender\" src=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/i5bridgerender.jpg\" alt=\"\" width=\"500\" \/><\/a><\/p>\n<p><a href=\"http:\/\/benincosa.com\/blog\/wp-content\/uploads\/2013\/09\/i5bridgerender.jpg\"><img decoding=\"async\" title=\"i5bridgerender\" src=\"file:\/\/\/Users\/vallard\/Library\/Containers\/com.evernote.Evernote\/Data\/Library\/Application%20Support\/Evernote\/accounts\/Evernote\/xvallardx\/content\/p805\/a2939a0fa0e4055f2a0b70c034998357.jpeg\" alt=\"\" width=\"500\" \/><\/a><\/p>\n<p>Similarly, if your virtualization team doesn&#8217;t have strong Linux skills, you probably don&#8217;t want them running OpenStack on KVM.\u00a0\u00a0That&#8217;s why VMware and Hyper-V are so popular.\u00a0\u00a0Its a lot easier for most people&#8217;s skill level.<\/p>\n<p><strong>What to Standardize On?<\/strong><\/p>\n<p>While the choice of infrastructure standardization is a religious one, there are role models we can look to when deciding.\u00a0\u00a0Start out by looking at the big boys, or the people you aspire to be when you grow up.\u00a0\u00a0Who are the big boys that are running a world class IT as a service infrastructure?\u00a0\u00a0AWS, RackSpace, Yahoo, Google, Microsoft, Facebook, right?<\/p>\n<p>What are they standardizing on?\u00a0\u00a0Chances are its not what your organization is doing.\u00a0\u00a0Instead of VMware, Cisco, IBM, HP, Dell, EMC, NetApp, etc, they&#8217;re using open source,\u00a0<a href=\"http:\/\/www.opencompute.org\/\">building their own servers<\/a>, and using their own distributed filesystems.\u00a0 They do this because they have a large investment in their DevOps team that is able to put these things together.<\/p>\n<p>A State organization that has already standardized on a FlexPod or Vblock with VMware is not going to throw away what they&#8217;ve done and start over just so they can match what the big boys do.\u00a0\u00a0However, as they move forward, perhaps they can make future decisions based on emulating these guys.<\/p>\n<p><strong>Standardize Processes<\/strong><\/p>\n<p>The missing part is standardizing the processes once the infrastrucutre is in place. \u00a0Standardization is tedious because it involves looking at every detail of how things are done. \u00a0One of my customers has a repository of documentation they use every time they need to do something to their infrastructure. \u00a0For example, 2 weeks ago we added new blade servers to the UCS. \u00a0He pulled out the document and we walked through it. \u00a0There were still things we modified in the documentation, but for the most part the steps were exact.<\/p>\n<p>Unfortunately, this was only one part of the process. \u00a0The Networking team had their own way of keeping notes (or not at all) on how to do things. \u00a0So the processes were documented in separate places. \u00a0What the IT manager needs to do is make sure they understand how the processes (or work centers) are put together and how long each one takes.<\/p>\n<p>The manager should be able to have their own master process plan to be able to track work through the system. \u00a0(The system being the different individuals doing the work). \u00a0This is what is meant by &#8220;work flow&#8221;. \u00a0Even if they just do this by hand or as is commonly done with a Gantt chart, there should be some understanding.<\/p>\n<p>Each job that comes in, should get its own workflow, or Gantt Chart, and entered into something like a <a href=\"http:\/\/en.wikipedia.org\/wiki\/Kanban_board\">Kanban board<\/a>. \u00a0Once you understand this for the common requests, you can see how many one offs there are.<\/p>\n<p>Whether these requests are for public cloud or private cloud, there is still a workflow. \u00a0It is an iterative process that may not be complete the first few times it is done, but over time will become better. \u00a0There is a great book called &#8220;<a href=\"http:\/\/www.amazon.com\/The-Phoenix-Project-Helping-Business\/dp\/0988262592\">The Phoenix Project<\/a>&#8221; that talks about how the IT staff starts to standardize and work together between development and operations to get their processes better. \u00a0These ideas are based off an earlier business classic called <a href=\"http:\/\/en.wikipedia.org\/wiki\/The_Goal_(novel)\">&#8220;The Goal&#8221;<\/a><\/p>\n<p><strong>Automate the Processes<\/strong><\/p>\n<p>Once the processes are known we turn our assembly line into programmers of the processes. \u00a0I used to worked as a consulting engineer to help deploy High Performance Computing clusters. \u00a0On several occasions the RFPs required that the cluster be able to be deployed from scratch in less than 1 hour. \u00a0From bare metal, to running jobs. \u00a0We created scripts that would go through and deploy the OS, customize the user libraries, and even set up a job queuing system. \u00a0It was pretty amazing to see 1,200 bare metal rack mount servers do that. \u00a0When we would leave, if the customer had problems with a server then they could replace it, plug it in, and walk away. \u00a0The system would self provision.<\/p>\n<p>While that was a complicated process and still is, it is still simpler than what virtualization has done to the management of the data center. \u00a0We never had to mess with the network once it was set up. \u00a0Workflows for a new development environment are pretty common and require provisioning several VMs with private networks and their own storage. \u00a0However, the same method of scripting the infrastructure can still be applied. \u00a0It just needs to be orchestrated.<\/p>\n<p><strong>Automate and Orchestrate with a Framework<\/strong><\/p>\n<p>Back when we did HPC systems, we used an open source management tool called <a href=\"http:\/\/xcat.org\">xCAT<\/a>. \u00a0That was the framework by which we managed the datacenter. \u00a0The tool had capabilities but really what it gave us was a framework to insert our customizations or our processes that were specific for each site. \u00a0The tool was an enabler of the solution, not the solution itself.<\/p>\n<p>Today there are lots of &#8220;enterprise&#8221; private cloud management tools. \u00a0In fact, any company that wants to sell a &#8220;Private Cloud&#8221; \u00a0will have its own tool. \u00a0VMware vCloud Director, HP Cloud System, IBM Cloudburst, Cisco UCS Director, etc. \u00a0All of these products, regardless of how they are sold should be regarded as frameworks for automating your processes.<\/p>\n<p>At a recent VMUG, the presenter asked &#8220;How many people are using vCloud Director or any other cloud orchestration tool?&#8221; \u00a0Nobody raised their hand. \u00a0Based on what I&#8217;ve seen its because most organizations haven&#8217;t yet standardized their IT processes. \u00a0There is no need for orchestration if you don&#8217;t know what you&#8217;re orchestrating.<\/p>\n<p>Usually each framework will come with a part or all of what Cisco calls the &#8220;<a href=\"http:\/\/blogs.cisco.com\/datacenter\/introducing-cisco-domain-tensm-cisco-services-blueprint-for-simplifying-data-center-and-cloud-transformation\/\">10 domains of cloud<\/a>&#8221; which may include: A self service portal, chargeback\/showback, service catalog, security, etc. \u00a0If you are using a public cloud, you are using their framework.<\/p>\n<p>Once you select one, you&#8217;ll need to get the operations teams (network, storage, compute, virtualization) to sign off and use the tool. \u00a0Its not just a server thing. \u00a0Each part of the assembly line needs to use it.<\/p>\n<p>Once the individual components are entered into the framework, then the orchestration comes to play. \u00a0To start with, codify the most common workloads: \u00a0Creating VLAN, Carving out a LUN, Provisioning a VM, etc.<\/p>\n<p>To orchestrate means <a href=\"http:\/\/www.thefreedictionary.com\/orchestrate\">to arrange or control the elements of, as to achieve a desired overall effect<\/a>. \u00a0With the Framework, we are looking to automate all of the components to deliver a self service model to our end customer.<\/p>\n<p><strong>Self Service and Chargeback<\/strong><\/p>\n<p>Once we have the processes codified in the framework, we can now present a catalog to our users. \u00a0With a self service portal we recommend it not being completely automated to start out with. \u00a0With some frameworks, as a workload moves through the automated assembly line, it can send an email to the correct IT department to validate whether a workflow can move through. \u00a0So for example, if the user as part of the workflow wants a new VLAN for their VM environment, the networking administrator will receive an email and will be able to approve or deny. \u00a0This way, the workflow is monitored, the end requester knows where they are in the queue, and \u00a0once it is approved, it gets created automatically, then gets passed along to the next item in the assembly line.<\/p>\n<p>For chargeback, the recommendation is to keep the menu small, and the price simple.<\/p>\n<p><strong>Security all throughout then Monitor, Rinse, and Repeat<\/strong><\/p>\n<p>More workflows will come into the system and the catalog will need to continuously need updating and revisions. \u00a0This is the programmable data center. \u00a0Iterations should be checked into a code repository similarly to how application developers use systems like github.com to store code updates. \u00a0You will have to do bug fixes and patch up any exposed holes. \u00a0With virtualization comes the ability to integrate more software security services like the <a href=\"http:\/\/www.cisco.com\/en\/US\/products\/ps12233\/index.html\">ASA 1000v<\/a>, or the <a href=\"http:\/\/www.cisco.com\/en\/US\/products\/ps13095\/index.html\">VSG<\/a>.<\/p>\n<p><strong>Action Items<\/strong><\/p>\n<ul>\n<li>Realize that your IT infrastructure is a collection of APIs waiting to be harnessed and programmed. \u00a0Challenge the people you work with to learn to use those APIs to automate their respective areas of expertise.<\/li>\n<li>Optimize the assembly line by understanding the workflows. \u00a0Any manufacturing manager can tell you the throughput of the system. \u00a0An IT manager should be able to tell you the same thing about their system. \u00a0Start by understanding the individual components, how long it takes, and where the bottlenecks in the system are.<\/li>\n<li>Standardize your infrastructure with a solid architecture. \u00a0Converged architectures are popular for a reason. \u00a0Don&#8217;t reinvent the wheel.<\/li>\n<li>Standardizing processes is the hardest part. \u00a0Start with the most common. \u00a0These are usually documented. \u00a0Take the documentation and think how you would change it into code.<\/li>\n<li>Program the DataCenter using a Framework. \u00a0Most of the work will have to be done in house or with service contracts. \u00a0The framework could be something like a vendors cloud software or something free like OpenStack.<\/li>\n<\/ul>\n<p>&nbsp;<\/p>\n","protected":false},"excerpt":{"rendered":"<p>This post comes from a talk that I&#8217;ll be presenting on at the\u00a0Pacific Northwest Digital Government Summit Conference on October 2nd, 2013. History shows us that those that embrace technology and change survive while those that resist and stick with &#8220;business as usual&#8221; get left behind.\u00a0\u00a0If we have the technology and we don&#8217;t use it&#8230;<\/p>\n","protected":false},"author":1,"featured_media":0,"comment_status":"closed","ping_status":"closed","sticky":false,"template":"","format":"standard","meta":[],"categories":[166,199,1001,992],"tags":[201,1003,202,203],"jetpack_featured_media_url":"","_links":{"self":[{"href":"https:\/\/benincosa.com\/index.php?rest_route=\/wp\/v2\/posts\/765"}],"collection":[{"href":"https:\/\/benincosa.com\/index.php?rest_route=\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/benincosa.com\/index.php?rest_route=\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/benincosa.com\/index.php?rest_route=\/wp\/v2\/users\/1"}],"replies":[{"embeddable":true,"href":"https:\/\/benincosa.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcomments&post=765"}],"version-history":[{"count":30,"href":"https:\/\/benincosa.com\/index.php?rest_route=\/wp\/v2\/posts\/765\/revisions"}],"predecessor-version":[{"id":2755,"href":"https:\/\/benincosa.com\/index.php?rest_route=\/wp\/v2\/posts\/765\/revisions\/2755"}],"wp:attachment":[{"href":"https:\/\/benincosa.com\/index.php?rest_route=%2Fwp%2Fv2%2Fmedia&parent=765"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/benincosa.com\/index.php?rest_route=%2Fwp%2Fv2%2Fcategories&post=765"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/benincosa.com\/index.php?rest_route=%2Fwp%2Fv2%2Ftags&post=765"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}