{"id":4476,"date":"2013-03-04T18:19:05","date_gmt":"2013-03-04T16:19:05","guid":{"rendered":"http:\/\/blog.zhaw.ch\/icclab\/?p=4476"},"modified":"2015-08-19T09:49:50","modified_gmt":"2015-08-19T07:49:50","slug":"cloud-automation-orchestration","status":"publish","type":"post","link":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/","title":{"rendered":"Cloud Automation &amp; Orchestration"},"content":{"rendered":"<h2>Description<\/h2>\n<p>At the heart of the ICCLab is the Management Server, which provides an easy way to stage different setups for different OpenStack instances (productive, experimental, etc.). The Management Server provides a DHCP, PXE and pre-configured processes which allow a bare metal computing unit to be provisioned automatically, using\u00a0<a href=\"http:\/\/www.theforeman.org\/\">Foreman<\/a>, and then have preassigned roles installed, using a combination of Foreman and\u00a0<a href=\"http:\/\/www.puppetlabs.com\/\">Puppet<\/a>. This provides a great deal of flexibility and support for different usage scenarios. Puppet is a key enabler. Puppet is an infrastructure automation system for the efficient management of large scale infrastructures. Using a declarative approach puppet can manage infrastructure lifecycles from provisioning, configuration, update and compliance management. All of these management capabilities are managed logically in a centralised fashion, however the system itself can be implemented in a distributed manner. A key motivation in using puppet is that all system configuration is codified using puppet\u2019s declarative language. This enables the sharing of \u201cinfrastructure as code\u201d not only through out an organisation but outside of an organisation by following open source models.<\/p>\n<h2>Problem Statement<\/h2>\n<p>With the infinite resources available today through cloud computing it is very possible to have large numbers of cloud resources (e.g. compute, storage, networking) delivering services to end users. Managing these cloud resources and the software stacks deploy on top is a huge challenge when the number of resources to configure and mange increase beyond single digits. The only way forward here is to investigate, adopt, improve automated management, configuration and orchestration tools. With automation comes increased testability, reliability (when done right) and ultimately faster times to market as exemplified by <a href=\"https:\/\/en.wikipedia.org\/wiki\/Continuous_integration\">continuous integration<\/a> and <a href=\"https:\/\/en.wikipedia.org\/wiki\/DevOps\">DevOps<\/a> practices.<\/p>\n<h2>Articles and Info<\/h2>\n<p>There are a number of blog posts detailing how foreman and puppet are used in the ICCLab:<\/p>\n<ul>\n<li>Overview Presentation\n<ul>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/from-bare-metal-to-cloud\/\">From Bare Metal to Cloud<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>Automation\n<ul>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/automating-the-icclab-part-one\/\">Automating the ICCLab Part One<\/a><\/li>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/automating-the-icclab-part-two\/\">Automating the ICCLab Part Two<\/a><\/li>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/installing-foreman-1-0-1\/\">Installing Foreman 1.0.1<\/a><\/li>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/automating-occi-installations\/\">Automating OCCI Installations<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<ul>\n<li>Managing OpenStack with Puppet\n<ul>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/puppet-and-openstack-part-one\/\">Puppet and OpenStack Part One<\/a><\/li>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/puppet-and-openstack-part-two\/\">Puppet and OpenStack Part Two<\/a><\/li>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/foreman-puppet-and-openstack\/\">Foreman Puppet and OpenStack<\/a><\/li>\n<li><a href=\"http:\/\/blog.zhaw.ch\/icclab\/parallel-openstack-multi-hosts-deployments-with-foreman-and-puppet\/\">Parallel OpenStack Multi-host Deployments With Foreman and Puppet<\/a><\/li>\n<\/ul>\n<\/li>\n<\/ul>\n<h2>Contact Point<\/h2>\n<ul>\n<li><a title=\"Andy Edmonds\" href=\"http:\/\/blog.zhaw.ch\/icclab\/andy-edmonds\/\">Andy Edmonds<\/a><\/li>\n<\/ul>\n","protected":false},"excerpt":{"rendered":"<p>Description At the heart of the ICCLab is the Management Server, which provides an easy way to stage different setups for different OpenStack instances (productive, experimental, etc.). The Management Server provides a DHCP, PXE and pre-configured processes which allow a bare metal computing unit to be provisioned automatically, using\u00a0Foreman, and then have preassigned roles installed, [&hellip;]<\/p>\n","protected":false},"author":72,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"ngg_post_thumbnail":0,"footnotes":""},"categories":[377],"tags":[],"features":[],"class_list":["post-4476","post","type-post","status-publish","format-standard","hentry","category-cloud-automation"],"yoast_head":"<!-- This site is optimized with the Yoast SEO Premium plugin v27.2 (Yoast SEO v27.2) - https:\/\/yoast.com\/product\/yoast-seo-premium-wordpress\/ -->\n<title>Cloud Automation &amp; Orchestration - Service Engineering (ICCLab &amp; SPLab)<\/title>\n<meta name=\"robots\" content=\"index, follow, max-snippet:-1, max-image-preview:large, max-video-preview:-1\" \/>\n<link rel=\"canonical\" href=\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\" \/>\n<meta property=\"og:locale\" content=\"en_US\" \/>\n<meta property=\"og:type\" content=\"article\" \/>\n<meta property=\"og:title\" content=\"Cloud Automation &amp; Orchestration\" \/>\n<meta property=\"og:description\" content=\"Description At the heart of the ICCLab is the Management Server, which provides an easy way to stage different setups for different OpenStack instances (productive, experimental, etc.). The Management Server provides a DHCP, PXE and pre-configured processes which allow a bare metal computing unit to be provisioned automatically, using\u00a0Foreman, and then have preassigned roles installed, [&hellip;]\" \/>\n<meta property=\"og:url\" content=\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\" \/>\n<meta property=\"og:site_name\" content=\"Service Engineering (ICCLab &amp; SPLab)\" \/>\n<meta property=\"article:published_time\" content=\"2013-03-04T16:19:05+00:00\" \/>\n<meta property=\"article:modified_time\" content=\"2015-08-19T07:49:50+00:00\" \/>\n<meta name=\"author\" content=\"Andy Edmonds\" \/>\n<meta name=\"twitter:card\" content=\"summary_large_image\" \/>\n<meta name=\"twitter:label1\" content=\"Written by\" \/>\n\t<meta name=\"twitter:data1\" content=\"Andy Edmonds\" \/>\n\t<meta name=\"twitter:label2\" content=\"Est. reading time\" \/>\n\t<meta name=\"twitter:data2\" content=\"2 minutes\" \/>\n<script type=\"application\/ld+json\" class=\"yoast-schema-graph\">{\"@context\":\"https:\/\/schema.org\",\"@graph\":[{\"@type\":\"Article\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#article\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\"},\"author\":{\"name\":\"Andy Edmonds\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/a62f7b702361e11d635f4e59446e8684\"},\"headline\":\"Cloud Automation &amp; Orchestration\",\"datePublished\":\"2013-03-04T16:19:05+00:00\",\"dateModified\":\"2015-08-19T07:49:50+00:00\",\"mainEntityOfPage\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\"},\"wordCount\":352,\"commentCount\":0,\"articleSection\":[\"Cloud Automation\"],\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"CommentAction\",\"name\":\"Comment\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#respond\"]}]},{\"@type\":\"WebPage\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\",\"name\":\"Cloud Automation &amp; Orchestration - Service Engineering (ICCLab &amp; SPLab)\",\"isPartOf\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\"},\"datePublished\":\"2013-03-04T16:19:05+00:00\",\"dateModified\":\"2015-08-19T07:49:50+00:00\",\"author\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/a62f7b702361e11d635f4e59446e8684\"},\"breadcrumb\":{\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#breadcrumb\"},\"inLanguage\":\"en-US\",\"potentialAction\":[{\"@type\":\"ReadAction\",\"target\":[\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/\"]}]},{\"@type\":\"BreadcrumbList\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#breadcrumb\",\"itemListElement\":[{\"@type\":\"ListItem\",\"position\":1,\"name\":\"Startseite\",\"item\":\"https:\/\/blog.zhaw.ch\/icclab\/\"},{\"@type\":\"ListItem\",\"position\":2,\"name\":\"Cloud Automation &amp; Orchestration\"}]},{\"@type\":\"WebSite\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#website\",\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/\",\"name\":\"Service Engineering (ICCLab &amp; SPLab)\",\"description\":\"A Blog of the ZHAW Zurich University of Applied Sciences\",\"potentialAction\":[{\"@type\":\"SearchAction\",\"target\":{\"@type\":\"EntryPoint\",\"urlTemplate\":\"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}\"},\"query-input\":{\"@type\":\"PropertyValueSpecification\",\"valueRequired\":true,\"valueName\":\"search_term_string\"}}],\"inLanguage\":\"en-US\"},{\"@type\":\"Person\",\"@id\":\"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/a62f7b702361e11d635f4e59446e8684\",\"name\":\"Andy Edmonds\",\"image\":{\"@type\":\"ImageObject\",\"inLanguage\":\"en-US\",\"@id\":\"https:\/\/secure.gravatar.com\/avatar\/564b17a1126a2ed30e20d4c65842164e32a6cf798a8175e88bcf5b352ebd60c8?s=96&d=mm&r=g\",\"url\":\"https:\/\/secure.gravatar.com\/avatar\/564b17a1126a2ed30e20d4c65842164e32a6cf798a8175e88bcf5b352ebd60c8?s=96&d=mm&r=g\",\"contentUrl\":\"https:\/\/secure.gravatar.com\/avatar\/564b17a1126a2ed30e20d4c65842164e32a6cf798a8175e88bcf5b352ebd60c8?s=96&d=mm&r=g\",\"caption\":\"Andy Edmonds\"},\"sameAs\":[\"http:\/\/andy.edmonds.be\"],\"url\":\"https:\/\/blog.zhaw.ch\/icclab\/author\/edmo\/\"}]}<\/script>\n<!-- \/ Yoast SEO Premium plugin. -->","yoast_head_json":{"title":"Cloud Automation &amp; Orchestration - Service Engineering (ICCLab &amp; SPLab)","robots":{"index":"index","follow":"follow","max-snippet":"max-snippet:-1","max-image-preview":"max-image-preview:large","max-video-preview":"max-video-preview:-1"},"canonical":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/","og_locale":"en_US","og_type":"article","og_title":"Cloud Automation &amp; Orchestration","og_description":"Description At the heart of the ICCLab is the Management Server, which provides an easy way to stage different setups for different OpenStack instances (productive, experimental, etc.). The Management Server provides a DHCP, PXE and pre-configured processes which allow a bare metal computing unit to be provisioned automatically, using\u00a0Foreman, and then have preassigned roles installed, [&hellip;]","og_url":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/","og_site_name":"Service Engineering (ICCLab &amp; SPLab)","article_published_time":"2013-03-04T16:19:05+00:00","article_modified_time":"2015-08-19T07:49:50+00:00","author":"Andy Edmonds","twitter_card":"summary_large_image","twitter_misc":{"Written by":"Andy Edmonds","Est. reading time":"2 minutes"},"schema":{"@context":"https:\/\/schema.org","@graph":[{"@type":"Article","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#article","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/"},"author":{"name":"Andy Edmonds","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/a62f7b702361e11d635f4e59446e8684"},"headline":"Cloud Automation &amp; Orchestration","datePublished":"2013-03-04T16:19:05+00:00","dateModified":"2015-08-19T07:49:50+00:00","mainEntityOfPage":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/"},"wordCount":352,"commentCount":0,"articleSection":["Cloud Automation"],"inLanguage":"en-US","potentialAction":[{"@type":"CommentAction","name":"Comment","target":["https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#respond"]}]},{"@type":"WebPage","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/","url":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/","name":"Cloud Automation &amp; Orchestration - Service Engineering (ICCLab &amp; SPLab)","isPartOf":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#website"},"datePublished":"2013-03-04T16:19:05+00:00","dateModified":"2015-08-19T07:49:50+00:00","author":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/a62f7b702361e11d635f4e59446e8684"},"breadcrumb":{"@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#breadcrumb"},"inLanguage":"en-US","potentialAction":[{"@type":"ReadAction","target":["https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/"]}]},{"@type":"BreadcrumbList","@id":"https:\/\/blog.zhaw.ch\/icclab\/cloud-automation-orchestration\/#breadcrumb","itemListElement":[{"@type":"ListItem","position":1,"name":"Startseite","item":"https:\/\/blog.zhaw.ch\/icclab\/"},{"@type":"ListItem","position":2,"name":"Cloud Automation &amp; Orchestration"}]},{"@type":"WebSite","@id":"https:\/\/blog.zhaw.ch\/icclab\/#website","url":"https:\/\/blog.zhaw.ch\/icclab\/","name":"Service Engineering (ICCLab &amp; SPLab)","description":"A Blog of the ZHAW Zurich University of Applied Sciences","potentialAction":[{"@type":"SearchAction","target":{"@type":"EntryPoint","urlTemplate":"https:\/\/blog.zhaw.ch\/icclab\/?s={search_term_string}"},"query-input":{"@type":"PropertyValueSpecification","valueRequired":true,"valueName":"search_term_string"}}],"inLanguage":"en-US"},{"@type":"Person","@id":"https:\/\/blog.zhaw.ch\/icclab\/#\/schema\/person\/a62f7b702361e11d635f4e59446e8684","name":"Andy Edmonds","image":{"@type":"ImageObject","inLanguage":"en-US","@id":"https:\/\/secure.gravatar.com\/avatar\/564b17a1126a2ed30e20d4c65842164e32a6cf798a8175e88bcf5b352ebd60c8?s=96&d=mm&r=g","url":"https:\/\/secure.gravatar.com\/avatar\/564b17a1126a2ed30e20d4c65842164e32a6cf798a8175e88bcf5b352ebd60c8?s=96&d=mm&r=g","contentUrl":"https:\/\/secure.gravatar.com\/avatar\/564b17a1126a2ed30e20d4c65842164e32a6cf798a8175e88bcf5b352ebd60c8?s=96&d=mm&r=g","caption":"Andy Edmonds"},"sameAs":["http:\/\/andy.edmonds.be"],"url":"https:\/\/blog.zhaw.ch\/icclab\/author\/edmo\/"}]}},"_links":{"self":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/4476","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/users\/72"}],"replies":[{"embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/comments?post=4476"}],"version-history":[{"count":4,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/4476\/revisions"}],"predecessor-version":[{"id":5488,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/posts\/4476\/revisions\/5488"}],"wp:attachment":[{"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/media?parent=4476"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/categories?post=4476"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/tags?post=4476"},{"taxonomy":"features","embeddable":true,"href":"https:\/\/blog.zhaw.ch\/icclab\/wp-json\/wp\/v2\/features?post=4476"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}