Deploying Openstack with Tripleo Tom Howley, Dublin, May 2014 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential OpenStack® Professional Services We’re hiring… Linux System Engineers (Galway) – all levels Architects, System Integrators (Dublin) hp.com/jobs search for OpenStack Ireland Or contact our Recruiting lead: james.houlder@hp.com 2 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Introductions Tom Howley • Member of the Helion CloudOS Core Engineering team • Member of the HP Cloud Cinder/Bock Engineering team • Member of the IAAS Shared Services / High Availability team 3 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential I hope to cover • • • • • • • • 4 HP Helion Public Cloud Deployment Motivation for Tripleo Tripleo Overview Diskimage Builder os-collect/refresh/apply-config suite Heat and Heat templates The Developer Experience Current Challenges + Future Work (Openstack Atlanta Update) © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential What is Openstack? 5 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Lots of moving parts to install, maintain, upgrade 6 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential We used Chef for HP Public Cloud See http://wiki.opscode.com/display/chef/Home Git Repo Chef Server Download + Apply Cookbook Recipes Node 1 Pull/Push Chef files Cookbooks, Roles, Environments, Data bags, Node Settings Node 2 Node 3 Node 4 Management Desktop: git + knife 7 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Chef Node Role Recipe Resource Install RabbitMQ RMQ recipe host-0001 Configure users, vhosts… RabbitMQ HA Server Install pacemaker HA recipe Write corosync conf file 8 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Some limitations of Chef 1. Single-node view • Ok, there are environments – just a global set of attributes • Tend to think in node roles 2. Lacks orchestration • • Not easy to describe inter-node dependencies Required for install and upgrades (ideally of the rolling variety) 3. Tendency towards snowflakes • No facility for roll-back 4. Does not do baremetal install 5. Common set of cookbooks/recipes upstream? • • 9 Stackforge Chef repo: AT&T, IBM, Rackspace + others but other repos do exist © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Lots of moving parts to install, maintain, upgrade 10 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Who in their right mind would use Openstack to deploy Openstack? And where does this gratuitous recursion end? © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential Enter Tripleo From https://wiki.openstack.org/wiki/TripleO#TripleO_-_OpenStack_on_OpenStack “TripleO is a program aimed at installing, upgrading and operating OpenStack clouds using OpenStack's own cloud facilities as the foundations - building on nova, neutron and heat to automate fleet management at datacentre scale (and scaling down to as few as 2 machines).” 12 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Breakdown of Deployment Lifecycle Provisioning Software Configuration Nova-BM/ Ironic diskimage -builder os-apply -config MaaS Crowbar 13 State os-refresh -config Juju ~~~ Chef ~~~ Razor ~~~ Puppet ~~~ Manual Install Stand-alone Chef, Puppet, etc © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Orchestration Heat Crowbar Tripleo Deployment • Heat stack defines the cluster • Heat drives the Nova API to deliver images to machines • Virtual machines in developer test • Bare metal Nova for CI/CD and production deployment 14 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Diskimage Builder Golden Images • Images created independent of deploy with Internet access • Encapsulate a known good set of software • Excludes configuration and persistent state • • Deploy never needs Internet access Equivalent of packages at cluster level • • • • 15 these are placed on a separate state partition / is then mounted read-only Golden image per node type Configuration occurs at install (for invariants) or deploy time (for local config) © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Undercloud vs. Overcloud OpenStack (KVM) OpenStack (KVM) OpenStack (Bare metal) 16 Nova cannot reliably run two different hypervisors in one cloud today So we run two+ clouds: → the undercloud, a bare metal cloud that runs on, and owns, all the hardware → the overcloud, a regular VM based cloud running as a tenant on the bare metal cloud © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential We have cloud for users to create VMs bm = baremetal node oc-control bm nova rabbitmq os-col/ ref/app 17 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice oc-compute bm glance novacompute mysql heat HP Confidential os-col/ ref/app We have cloud for users to create VMs oc-control bm nova rabbitmq os-col/ ref/app 18 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice oc-compute bm glance novacompute mysql heat HP Confidential user vm os-col/ ref/app We have cloud for users to create VMs oc-control bm nova rabbitmq os-col/ ref/app 19 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice oc-compute bm glance novacompute mysql heat HP Confidential user vm os-col/ ref/app user vm How do we bring up the user’s cloud? undercloud bm keystone oc-control bm ironic glance os-col/ ref/app 20 nova rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice oc-compute bm glance novacompute mysql heat HP Confidential user vm os-col/ ref/app user vm How do we bring up the undercloud? Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql user vm heat os-col/ ref/app 21 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app user vm So lets see Tripleo in action And I don’t mean a demo! © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential Tripleo Deploy Flow - Image build Build the seed image elements ubuntu nova glance 23 disk image builder © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice seed HP Confidential Tripleo Deploy Flow - Image build Build undercloud and overcloud images elements ubuntu nova glance disk image builder seed undercloud overcloudcompute overcloudcontrol 24 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Deploy Flow - Seed Launch the Seed Head Node seed vm launch seed kvm keystone ironic glance seedstack json 25 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice os-ref/ app HP Confidential heat Tripleo Deploy Flow - Undercloud Upload undercloud image to Glance on seed Head Node seed vm keystone undercloud glance os-ref/ app 26 ironic heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Deploy Flow - Undercloud Launch undercloud heat stack via heat engine on seed Head Node seed vm keystone ironic glance undercloud heat template 27 create undercloud heat stack os-ref/ app heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Deploy Flow - Undercloud Heat launches the undercloud node Head Node seed vm undercloud bm pxe boot keystone ironic glance os-col/ ref/app 28 heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Deploy Flow - Undercloud Transfer undercloud image over iscsi connection Head Node seed vm keystone undercloud bm ironic undercloud glance oscollect 29 heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Deploy Flow - Undercloud Reboot undercloud, os-collect reads configuration meta-data Head Node seed vm keystone undercloud bm keystone ironic undercloud glance glance os-col/ ref/app 30 ironic read meta data heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential os-col/ ref/app heat Tripleo Deploy Flow - Undercloud Undercloud os-refresh/os-apply configures + launches services Head Node seed vm keystone undercloud bm keystone ironic undercloud glance glance os-col/ ref/app 31 ironic os-col/ ref/app heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential heat Tripleo Deploy Flow - Overcloud Upload overcloud images to Glance on undercloud Head Node seed vm keystone overcloudcompute overcloudcontrol 32 undercloud bm keystone ironic undercloud glance glance os-col/ ref/app ironic os-col/ ref/app heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential heat Tripleo Deploy Flow - Overcloud Launch overcloud heat stack via heat engine on undercloud Head Node seed vm keystone undercloud bm keystone ironic undercloud glance glance overcloud heat template 33 create overcloud heat stack os-col/ ref/app ironic os-col/ ref/app heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential heat Tripleo Deploy Flow - Overcloud Heat launches the overcloud nodes via Nova/Ironic API Head Node undercloud bm oc-control bm pxe boot seed vm keystone keystone ironic ironic glance glance os-col/ ref/app heat os-col/ ref/app 34 heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential oc-compute bm Tripleo Deploy Flow - Overcloud Transfer overcloud images over iscsi connection Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic overcloudcontrol glance glance os-col/ ref/app heat os-col/ ref/app 35 overcloudcompute heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Tripleo Deploy Flow - Overcloud Reboot overcloud nodes, os-collect reads configuration meta-data Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql heat os-col/ ref/app 36 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app Tripleo Deploy Flow - Overcloud Overcloud os-refresh/os-apply configures + launches services Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql heat os-col/ ref/app 37 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app We now have a working cloud for users! Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql heat os-col/ ref/app 38 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app We now have a working cloud for users! User creates a VM in our cloud Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql user vm heat os-col/ ref/app 39 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app We now have a working cloud for users! and another one…. Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql user vm heat os-col/ ref/app 40 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app user vm Tripleo Components Quick review of DIB, os-collect/apply/refresh-config and Heat © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice. HP Confidential Diskimage Builder An image build proceeds through a set of hooks: pre-install.d, install.d, etc. An image build is parameterised by including elements Each element includes one or more hook files: install.d/20-rabbitmq-server • • • • • • • 42 Which are simple executable files (typically bash, some python) Elements can depend on other elements Handle multiple OS's by either conditional code or abstracting out a common interface e.g. install-packages replaces yum/apt calls. Most things get cached in ~/.cache/image-create © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Diskimage Builder tripleo-image-elements apache2 fedora-rdo-icehouse keepalived nova pypi-openstack bm-dnsmasq fedora-rdo-icehouse-repository keystone nova-api qpidd boot-stack geard mariadb nova-baremetal rabbitmq-server ceilometer glance mariadb-dev nova-compute remove-serial-console ceilometer-agent-central haproxy memcached nova-ironic salt-master ceilometer-agent-compute heat mysql nova-kvm salt-minion ceilometer-agent-notification heat-api mysql-common novnc seed-stack-config ceilometer-api heat-cfntools mysql-dev ntp snmpd ceilometer-collector heat-engine mysql-mariadb-compat openstack-clients stackuser check_mk-agent horizon mysql-migration openstack-db swift cinder hosts nagios3 openstack-ssl swift-proxy cinder-api icinga-core network-utils os-apply-config swift-storage cinder-lio icinga-web neutron os-collect-config sysctl cinder-tgt __init__.py neutron-dhcp-agent os-refresh-config tempest cinder-volume iptables neutron-network-node os-svc-install tripleo-cd common-venv ironic neutron-openvswitch-agent pip-and-virtualenv tripleo-heat-templates debian-mirror ironic-api neutron-ovs-cleanup pip-manifest tripleo-staging devstack ironic-conductor neutron-server postfix tuskar diskimage-builder jenkins nfs-server pypi-mirror use-ephemeral 43 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Diskimage Builder Anatomy of an element os-refresh-config os-apply-config install 44 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential rabbitmq element – install section 45 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Diskimage Builder To create an image using dib tool • disk-image-create -a $(IMAGE_ARCH) -o $(IMAGE_NAME) $(IMAGE_ELEMENTS) • disk-image-create -a i386 -o $TRIPLEO_ROOT/overcloud-compute ubuntu novacompute nova-kvm neutron-openvswitch-agent os-collect-config dhcp-allinterfaces 46 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Diskimage Builder Developer/Build Machine elements ubuntu diskimage builder chroot env cinder rabbitmq-server qcow images seed Execute: install.d\10-supportphysical-hardware install.d\20-rabbitmqserver install.d\73-cinder …. undercloud overcloudcompute overcloudcontrol 47 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential os-apply-config mustache = logic-less templates, snippet of cinder.conf sample: [DEFAULT] {{#cinder.verbose}} verbose={{cinder.verbose}} {{/cinder.verbose}} {{#cinder.debug}} # Print debugging output (set logging level to DEBUG instead # of default WARNING level). (boolean value) debug={{cinder.debug}} {{/cinder.debug}} auth_strategy = keystone sql_connection={{cinder.db}} …. 48 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential os-apply-config This input hash: { “cinder”: { “verbose”: False, “debug”: True, “db”: “mysql://cinder:mypassword@10.0.0.5/cinder” } 49 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential os-apply-config Produces this cinder.conf [DEFAULT] verbose=False # Print debugging output (set logging level to DEBUG instead # of default WARNING level). (boolean value) debug=True auth_strategy = keystone sql_connection=mysql://cinder:mypassword@10.0.0.5/cinder …. 50 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential os-*-config • os-collect-config grabs new metadata from heat • os-refresh-config: • • • • • • 51 Quiesce fragile services (If needed) os-apply-config applies config files (If needed) Reboot Ensure required services are running and/or restarted Perform any migrations (such as seeding initial data) Notify heat that the deploy is complete on the machine © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential os-*-config rabbitmq element (recap) os-refresh-config os-apply-config install 52 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Heat Orchestration Service for Openstack • • • • • • 53 Structured declarative multi-node/multi-service orchestration Uses templating mechanism Controls complex group of cloud resources Based on AWS CloudFormation Intention to support TOSCA (Topology and Orchestration Specification for Cloud Applications) REST API © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Heat Stack: Group of connected resources (VMs, Volumes, Networks, ..) controllerConfig: Properties: config: cinder: db: mysql://cinder:unset@localhost/cinder Type: OS::Heat::StructuredConfig controller0Deployment: Properties: config: Ref: controllerConfig server: Ref: controller0 Type: OS::Heat::StructuredDeployment controller0: Properties: flavor: Ref: OvercloudControlFlavor Type: OS::Nova::Server 54 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Heat Launch a stack heat stack-create overcloud -f overcloud.yaml -P “AdminPassword=unset” -P ... 55 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Heat And if all goes well root@stratus37:~/tripleo/tripleo-incubator/scripts# heat stack-list +--------------------------------------+------------+-----------------+----------------------+ | id | stack_name | stack_status | creation_time | +--------------------------------------+------------+-----------------+----------------------+ | edaeb91b-8202-45cd-97d6-0c05eb4b5935 | overcloud | CREATE_COMPLETE | 2014-05-07T15:56:04Z | +--------------------------------------+------------+-----------------+----------------------+ 56 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Heat In a little more detail root@stratus37:~/tripleo/tripleo-incubator/scripts# heat resource-list overcloud +------------------------------+--------------------------------+-----------------+----------------------+ | resource_name | resource_type | resource_status | updated_time | +------------------------------+--------------------------------+-----------------+----------------------+ | NovaCompute0 | OS::Nova::Server | CREATE_COMPLETE | 2014-05-07T15:56:04Z | | controllerMgmt0 | OS::Nova::Server | CREATE_COMPLETE | 2014-05-07T15:56:05Z | | NovaCompute1 | OS::Nova::Server | CREATE_COMPLETE | 2014-05-07T15:56:07Z | | NovaComputeConfig | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:08Z | | SSLConfig | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:08Z | | SwiftConfig | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:08Z | | NovaComputePassthrough | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:09Z | | controller0 | OS::Nova::Server | CREATE_COMPLETE | 2014-05-07T15:56:09Z | | BlockStorageConfig | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:11Z | | RabbitCookie | OS::Heat::RandomString | CREATE_COMPLETE | 2014-05-07T15:56:11Z | | controllerMgmtPassthrough | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:11Z | | controllerPassthrough | OS::Heat::StructuredConfig | CREATE_COMPLETE | 2014-05-07T15:56:11Z | | NovaCompute0Passthrough | OS::Heat::StructuredDeployment | CREATE_COMPLETE | 2014-05-07T15:59:42Z | ...... 57 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Developer Experience Remember our Tripleo Stack? Head Node undercloud bm oc-control bm oc-compute bm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql user vm heat os-col/ ref/app 58 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app user vm Developer Experience For developers, everything is virtual (and we get vms in vms!) Dev Workstation undercloud vm oc-control vm oc-compute vm seed vm keystone keystone ironic ironic nova glance novacompute glance glance os-col/ ref/app mysql user vm heat os-col/ ref/app 59 rabbitmq heat os-col/ ref/app © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice heat HP Confidential os-col/ ref/app user vm Developer Experience – devtest.sh Calls the following scripts 1. 2. 3. 4. 5. 6. 7. 60 devtest_variables.sh devtest_test.sh devtest_ramdisk.sh devtest_seed.sh devtest_undercloud.sh devtest_overcloud.sh devtest_end.sh © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Developer Experience Some Issues 1. devtest run takes time • Typically about 1 hour+ • Even overcloud-only updates can take 20-30 mins 2. Now, our deploy tool has many moving parts • • DIB, Heat, os-col/ref/app-config, Nova, Glance, Neutron, Cinder, Swift, … A bug in any one can bring down a devtest run 3. Anyone find the terminology confusing? • 61 undercloud/overcloud…..and I’ve even heard “underseed” mentioned somewhere © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Developer Experience – Addressing these issues • • • • • • • • 62 Speed-up (per-developer site) Apt mirror Pypi mirror Squid proxy for everything else.. Repeatability/Consistency Repeated full Tripleo deploy (VM and Baremetal) + test -> Good SHA1’s Repeated full Tripleo deploy (VM and Baremetal) + test -> Good images Developer can use SHA1’s and Images in devtest run © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential And on the terminology Consensus seems to be that overcloud/undercloud leads to confusion Deploy BM Cloud (was: undercloud) • A cloud running on baremetal that deploys baremetal machines • Deploy KVM/LXC/Docker cloud (was: undercloud) • • Production/Test/$USECASE cloud (was: overcloud) • • 63 A cloud running on baremetal that deploys KVM/LXC/Docker containers A cloud with its hypervisors on a Deploy BM cloud and its control plane etc on a Deploy BM/KVM/LXC/Docker cloud © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential OR… Opinions welcome! Deployer Cloud (was: undercloud) • BM deployer cloud, KVM deployer cloud, Docker deployer cloud,… • Workload Cloud (was: overcloud) • Production workload cloud, Test workload cloud, … • 64 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Current Challenges + Future work Based on Openstack Atlanta Summit • • • • • • • • • 65 Ongoing improvements in repeatability/consistency of devtest run Ironic (instead of Nova-BM) touted as general improvement for this and for scaling Heat Re-architected to be more event-driven (addresses scaling issues of polling) Use of observer process + taskflow worker processes Better handling of resource failures within a stack Hooks to be written: Chef, Salt, Ansible, PowerShell Action-aware config resource for alignment with TOSCA (e.g. suspend/resume actions) + support for custom actions Storing Heat Template catalogs in Glance © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Current Challenges + Future Work Based on Openstack Atlanta Summit General support for Upgrade story • Still immature in this area • Support in Tripleo for HA degraded to single state • QuintupleO? • • Support for multiple Hypervisors on one node • • • 66 Use Public Cloud VMs for seed, undercloud, overcloud E.g. KVM and Ironic Upstream CI – Baremetal? © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential Acknowledgements Thanks to Robert Collins and Clint Byrum for supporting material! 67 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential OpenStack® Professional Services Did I mention we’re hiring… Linux System Engineers (Galway) – all levels Architects, System Integrators (Dublin) hp.com/jobs search for OpenStack Ireland Or contact our Recruiting lead: james.houlder@hp.com 68 © Copyright 2014 Hewlett-Packard Development Company, L.P. The information contained herein is subject to change without notice HP Confidential