tripleo - openstack · openstack foreman installer (ofi) rhel osp installer (codename staypuft)...

36
TripleO No longer considered an Epic Spell of Transformation: IN-PLACE UPGRADE!

Upload: trananh

Post on 22-Jun-2018

233 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

TripleONo longer considered an Epic Spell of Transformation:

IN-PLACE UPGRADE!

Page 2: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

TripleO

"I am looking for someone to share in an adventure"Gandalf the Grey

Page 3: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

TripleO is a project aimed at installing, upgrading and operating OpenStack clouds using OpenStack’s own cloud facilities as the foundation - building on Nova, Ironic, Neutron and Heat to automate cloud management at datacenter scale.

Page 4: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

● Product vs Service

● Beyond cookie cutter

● Maturity

● Features

● In-place Upgrades

Page 5: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 6: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 7: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

● OpenStack Foreman Installer (OFI)

● RHEL OSP installer (Codename Staypuft)

● Packstack

● Ansible-based homebrew

● SpinalStack (via acquisition of eNovance)

● Bashstack

Page 8: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Deployment

"Toto, I've a feeling we're not in Kansas any more."Dorothy

Page 9: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 10: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

[stack@undercloud-new ~]$ grep -v "^#\|^$" undercloud.conf [DEFAULT]local_ip = 192.0.2.4/24network_gateway = 192.0.2.4undercloud_public_vip = 192.168.102.4undercloud_admin_vip = 192.0.2.5local_interface = eth0network_cidr = 192.0.2.0/24masquerade_network = 192.0.2.0/24dhcp_start = 192.0.2.10dhcp_end = 192.0.2.29inspection_interface = br-ctlplaneinspection_iprange = 192.0.2.100,192.0.2.120inspection_runbench = falseundercloud_debug = falsestore_events = true

[stack@undercloud-new ~]$ openstack undercloud install

Page 11: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Upstream RDO:https://buildlogs.centos.org/centos/7/cloud/x86_64/tripleo_images/

Red Hat OpenStack Platform[stack@undercloud-new ~]$ sudo yum install rhosp-director-images rhosp-director-images-ipa

[stack@undercloud-new ~]$ openstack overcloud image upload

[stack@undercloud-new ~]$ openstack image list+--------------------------------------+------------------------+--------+| ID | Name | Status |+--------------------------------------+------------------------+--------+| 73dece24-dc1d-4884-9feb-4f1f8b9c9432 | bm-deploy-ramdisk | active || 29c6be7e-934c-47dd-ada2-ffc7671a2ce2 | bm-deploy-kernel | active || 8801c499-cfb9-4d7d-b603-2df3c348e261 | overcloud-full | active || cd3339cc-8742-4b1c-8db7-5fc592de6daa | overcloud-full-vmlinuz | active || b665cc2b-2fea-464c-8da9-23559964933a | overcloud-full-initrd | active |+--------------------------------------+------------------------+--------+

Page 12: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

CLI – instackenv.json{ "nodes":[ { "mac":[ "bb:bb:bb:bb:bb:bb" ], "cpu":"4", "memory":"6144", "disk":"40", "arch":"x86_64", "pm_type":"pxe_ipmitool", "pm_user":"admin", "pm_password":"p@55w0rd!", "pm_addr":"192.0.2.205" }, ]}

[stack@undercloud-new ~]$ openstack baremetal import --json ~/instackenv.json[stack@undercloud-new ~]$ openstack baremetal introspection bulk start

TripleO UI

Page 13: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Deploy vanilla Overcloud

[stack@undercloud-new ~]$ openstack overcloud deploy –templates --compute-scale 1 --control-scale 1 --ntp-server pool.ntp.org

PROFIT!

Page 14: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Customization

"You’re a wizard Harry"Hagrid

Page 15: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Core:Advance NetworkingNetwork Isolation Storage backendsSecurityMetering

Advanced:Composable rolesBig Data (Sahara)Baremetal (Ironic)Filesystem (Manila)RadosGWHyperConvergedSDNNFVLbaaSMonitoringMore ..

Page 16: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 17: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

[stack@chrisj-undercloud environments]$ cat neutron-sriov.yaml## A Heat environment that can be used to deploy SR-IOVresource_registry: OS::TripleO::Services::NeutronSriovAgent: ../puppet/services/neutron-sriov-agent.yaml

parameter_defaults: NeutronMechanismDrivers: ['openvswitch','sriovnicswitch']

# Add PciPassthroughFilter to the scheduler default filters NovaSchedulerDefaultFilters: ['RetryFilter','AvailabilityZoneFilter','RamFilter','ComputeFilter','ComputeCapabilitiesFilter','ImagePropertiesFilter','ServerGroupAntiAffinityFilter','ServerGroupAffinityFilter','PciPassthroughFilter'] NovaSchedulerAvailableFilters: ["nova.scheduler.filters.all_filters","nova.scheduler.filters.pci_passthrough_filter.PciPassthroughFilter"]

# Provide the vendorid:productid of the VFs NeutronSupportedPCIVendorDevs: ['8086:154c','8086:10ca','8086:1520']

NeutronPhysicalDevMappings: "datacentre:ens20f2"

# Number of VFs that needs to be configured for a physical interface NeutronSriovNumVFs: "ens20f2:5"

NovaPCIPassthrough: - devname: "ens20f2" physical_network: "datacentre"

Page 18: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

heat_template_version: 2014-10-16

description: > Extra hostname configurationresources: userdata: type: OS::Heat::MultipartMime properties: parts: - config: {get_resource: nameserver_config} nameserver_config: type: OS::Heat::SoftwareConfig properties: config: | #!/bin/bash echo "nameserver 192.168.1.1" >> /etc/resolv.confoutputs: OS::stack_id: value: {get_resource: userdata}#########################################

resource_registry: OS::TripleO::NodeUserData: /home/stack/templates/nameserver.yaml

#########################################

openstack overcloud deploy --templates -e /home/stack/templates/firstboot.yaml

Page 19: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 20: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

- name: Uber-Hyperconvered CountDefault: 1 ServicesDefault: - OS::TripleO::Services::CACerts - OS::TripleO::Services::CephMon - OS::TripleO::Services::CephExternal - OS::TripleO::Services::CephRgw - OS::TripleO::Services::CephOSD - OS::TripleO::Services::CinderApi - OS::TripleO::Services::CinderBackup - OS::TripleO::Services::CinderScheduler - OS::TripleO::Services::CinderVolume - OS::TripleO::Services::Core - OS::TripleO::Services::ComputeCeilometerAgent - OS::TripleO::Services::ComputeNeutronL3Agent - OS::TripleO::Services::ComputeNeutronMetadataAgent - OS::TripleO::Services::Kernel - OS::TripleO::Services::Keystone - OS::TripleO::Services::GlanceApi - OS::TripleO::Services::GlanceRegistry - OS::TripleO::Services::HeatApi - OS::TripleO::Services::HeatApiCfn - OS::TripleO::Services::HeatApiCloudwatch - OS::TripleO::Services::HeatEngine - OS::TripleO::Services::MySQL - OS::TripleO::Services::NeutronDhcpAgent

Page 21: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

decouple resource hungry service from the stack

merge 2 or more roles together → compute + storage

accommodate different hardware for the same roles (snow flakes)

create custom configurations on per server basis

Page 22: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

time openstack overcloud deploy --templates --stack tigerlab \ --ntp-server 10.9.71.7 \ --control-flavor control --control-scale 1 --compute-flavor compute --compute-scale 4 --ceph-storage-scale 0 \ --neutron-tunnel-types vxlan --neutron-network-type vxlan \ -e templates/network-environment.yaml \ -e templates/environments/network-isolation.yaml \ -e templates/ceilometer.yaml \ -e templates/logging-environment.yaml \ -e templates/monitoring-environment.yaml \ -e templates/environments/services/sahara.yaml \ -e templates/environments/enable-tls.yaml \ -e templates/environments/inject-trust-anchor.yaml \ -e /usr/share/openstack-tripleo-heat-templates/environments/tls-endpoints-public-ip.yaml \ -e templates/environments/manila-cephfsnative-config.yaml \ -e templates/fernet.yaml \ -e templates/deployment-artifacts.yaml \ -e templates/puppet-ceph-external.yaml

Page 23: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Features

"What about your sword? I heard witchers carry two - a silver blade for monsters and steel for humans... ?

Both are for monsters"Geralt of Rivia

Page 24: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Fluentd client

Sensu client

Collectd client

Ansible validations

Rally

Page 25: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 26: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 27: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 28: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 29: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack
Page 30: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

OVS DPDKSRIOVOpenDaylightHyper-convergedManilaMetadata injectionsVolume encryptionComposable RolesErasure CodingDVRVLAN aware VMsTelemetryFernet Tokens

Big Data & AnalyticsConvergence EngineBare Metal ProvisioningIntegration TestBenchmarkingUIIndependent Deployment PhasesOps ToolsSimplified HARed Hat StorageRGW for SwiftVirtualBMCDashboard

Page 31: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Upgrades

"See this acorn? I'll throw it at you and turn you to stone!"Willow

Page 32: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

● Minor – Mitaka → Mitaka++

● Major – Mitaka→ Newton

● Backup

● Dev/Test

● Production

Page 33: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

→● Undercloud$ sudo systemctl stop 'openstack-*'$ sudo systemctl stop 'neutron-*'$ yum update python-tripleoclient$ openstack undercloud upgrade

● Overcloud$ openstack overcloud deploy --update-plan-only \ --templates \ -e /usr/share/openstack-tripleo-heat-templates/environments/network-isolation.yaml \ -e /home/stack/templates/network-environment.yaml \ -e /home/stack/templates/storage-environment.yaml$ openstack overcloud update stack -i overcloud

Page 34: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

→Time for the Demo...

Page 35: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Question ?

Page 36: TripleO - OpenStack · OpenStack Foreman Installer (OFI) RHEL OSP installer (Codename Staypuft) Packstack Ansible-based homebrew SpinalStack (via acquisition of eNovance) Bashstack

Well, here at last, dear friends, on the shores of the Sea comes the end of our fellowship in Middle-earth. Go in peace! I will not say: do not weep; for not all tears are an evil.