| # Install OpenStack control services |
| - description: Install keystone on primary controller |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' state.sls |
| keystone |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install keystone on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| keystone -b 1 |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Populate keystone services/tenants/admins |
| cmd: salt-call --hard-crash --state-output=mixed --state-verbose=False state.sls |
| keystone.client |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check keystone service-list |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '. /root/keystonerc; keystone service-list' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install glance on primary controller |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' state.sls |
| glance |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install glance on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| glance -b 1 |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Configure glusterfs.client on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| glusterfs.client |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Configure(re-install) keystone on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| keystone -b 1 |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check glance image-list |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '. /root/keystonerc; glance image-list' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install cinder on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| cinder -b 1 |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check cinder list |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '. /root/keystonerc; cinder list' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install nova on ctl01 |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' state.sls |
| nova |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install nova on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| nova |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check nova service-list |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '. /root/keystonerc; nova service-list' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install neutron on ctl01 |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' state.sls |
| neutron |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install neutron on all controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| neutron |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check neutron agent-list |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '. /root/keystonerc; neutron agent-list' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Deploy dashboard on prx* |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'prx*' state.apply |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: true |
| - description: Deploy nginx proxy |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cfg*' state.sls |
| nginx |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: true |
| |
| # Install contrail on controllers |
| |
| - description: Workaround of the bug https://mirantis.jira.com/browse/PROD-8164 for opencontrail.database |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False '*' grains.set noservices True |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| |
| - description: Install contrail database on controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| opencontrail.database -b 1 |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check cassandra status on ctl01 |
| cmd: salt 'ctl01*' cmd.run 'nodetool status;nodetool compactionstats;nodetool describecluster;' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Install opencontrail on controllers |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl*' state.sls |
| opencontrail -b 1 |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check contrail status |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '. /root/keystonerc; contrail-status; neutron net-list; nova net-list' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Add contrail bgp router on ctl01 |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '/usr/share/contrail-utils/provision_control.py --oper add --api_server_ip 172.16.10.254 |
| --api_server_port 8082 --host_name ctl01 --host_ip 172.16.10.101 --router_asn |
| 64512 --admin_user admin --admin_password workshop --admin_tenant_name admin' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Add contrail bgp router on ctl02 |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl02*' cmd.run |
| '/usr/share/contrail-utils/provision_control.py --oper add --api_server_ip 172.16.10.254 |
| --api_server_port 8082 --host_name ctl02 --host_ip 172.16.10.102 --router_asn |
| 64512 --admin_user admin --admin_password workshop --admin_tenant_name admin' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Add contrail bgp router on ctl03 |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl03*' cmd.run |
| '/usr/share/contrail-utils/provision_control.py --oper add --api_server_ip 172.16.10.254 |
| --api_server_port 8082 --host_name ctl03 --host_ip 172.16.10.103 --router_asn |
| 64512 --admin_user admin --admin_password workshop --admin_tenant_name admin' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| |
| |
| # Install compute node |
| |
| - description: Workaround of the bug https://mirantis.jira.com/browse/PROD-8164 for opencontrail on compute nodes |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False '*' grains.set noservices True |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Apply formulas for compute node |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' state.apply |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Re-apply(as in doc) formulas for compute node |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' state.apply |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Add vrouter for cmp01 |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'ctl01*' cmd.run |
| '/usr/share/contrail-utils/provision_vrouter.py --oper add --host_name cmp01 --host_ip |
| 172.16.10.105 --api_server_ip 172.16.10.254 --api_server_port 8082 --admin_user |
| admin --admin_password workshop --admin_tenant_name admin' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Reboot compute nodes |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' system.reboot |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |
| - description: Check IP on computes |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' cmd.run |
| 'ip a' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 10, delay: 30} |
| skip_fail: false |
| - description: Check contrail status on computes |
| cmd: salt --hard-crash --state-output=mixed --state-verbose=False 'cmp*' cmd.run |
| 'contrail-status' |
| node_name: cfg01.mk22-lab-basic.local |
| retry: {count: 3, delay: 5} |
| skip_fail: false |