Write the compute upgrade script for tripleo major upgrade workflow
As part of the major upgrade workflow non-controller nodes are to be updated by the operator, out-of-band and only after an initial heat stack-update that invokes the upgrade of the controller nodes. This review adds a ComputeDeliverUpgradeConfigDeployment_Step3 SoftwareDeploymentGroup to be applied only to compute nodes, and that depends on the controllers having been upgraded after ControllerPacemakerUpgradeConfig_Step2. Its purpose is to deliver but not invoke the upgrade script on compute nodes to /root/tripleo_upgrade_node.sh . The non-controller nodes will then be upgraded later by an operator that will run the script provided for that purpose, like at https://review.openstack.org/#/c/284722/1 for example. Change-Id: Ic6115fc8cf5320abfcf500112ff563bde8b88661
This commit is contained in:
parent
f8633a42e2
commit
55f603b736
|
@ -0,0 +1,24 @@
|
|||
#!/bin/bash
|
||||
#
|
||||
# This delivers the compute upgrade script to be invoked as part of the tripleo
|
||||
# major upgrade workflow.
|
||||
#
|
||||
set -eu
|
||||
|
||||
UPGRADE_SCRIPT=/root/tripleo_upgrade_node.sh
|
||||
|
||||
cat > $UPGRADE_SCRIPT << ENDOFCAT
|
||||
### DO NOT MODIFY THIS FILE
|
||||
### This file is automatically delivered to the compute nodes as part of the
|
||||
### tripleo upgrades workflow
|
||||
|
||||
# pin nova to kilo (messaging +-1) for the nova-compute service
|
||||
|
||||
crudini --set /etc/nova/nova.conf upgrade_levels compute $upgrade_level_nova_compute
|
||||
yum -y update
|
||||
|
||||
ENDOFCAT
|
||||
|
||||
# ensure the permissions are OK
|
||||
chmod 0755 $UPGRADE_SCRIPT
|
||||
|
|
@ -66,3 +66,29 @@ resources:
|
|||
servers: {get_param: controller_servers}
|
||||
config: {get_resource: ControllerPacemakerUpgradeConfig_Step2}
|
||||
input_values: {get_param: input_values}
|
||||
|
||||
ComputeDeliverUpgradeConfig_Step3:
|
||||
type: OS::Heat::SoftwareConfig
|
||||
properties:
|
||||
group: script
|
||||
config:
|
||||
list_join:
|
||||
- ''
|
||||
- - str_replace:
|
||||
template: |
|
||||
#!/bin/bash
|
||||
upgrade_level_nova_compute='UPGRADE_LEVEL_NOVA_COMPUTE'
|
||||
params:
|
||||
UPGRADE_LEVEL_NOVA_COMPUTE: {get_param: UpgradeLevelNovaCompute}
|
||||
- get_file: pacemaker_common_functions.sh
|
||||
- get_file: major_upgrade_compute.sh
|
||||
|
||||
ComputeDeliverUpgradeConfigDeployment_Step3:
|
||||
type: OS::Heat::SoftwareDeploymentGroup
|
||||
depends_on: ControllerPacemakerUpgradeDeployment_Step2
|
||||
properties:
|
||||
servers: {get_param: compute_servers}
|
||||
config: {get_resource: ComputeDeliverUpgradeConfig_Step3}
|
||||
input_values: {get_param: input_values}
|
||||
|
||||
|
||||
|
|
Loading…
Reference in New Issue