97 lines
3.2 KiB
Django/Jinja
97 lines
3.2 KiB
Django/Jinja
#!/bin/env bash
|
|
set -euo pipefail
|
|
|
|
{% if l3_agent_connectivity_check|bool %}
|
|
if [[ -e {{ working_dir }}/l3_agent_start_ping.sh ]]; then
|
|
source {{ overcloud_rc }}
|
|
bash {{ working_dir }}/l3_agent_start_ping.sh
|
|
fi
|
|
{% endif %}
|
|
|
|
{% if l3_agent_failover_check|bool %}
|
|
if [[ -e {{ working_dir }}/l3_agent_failover_pre.sh ]]; then
|
|
source {{ overcloud_rc }}
|
|
bash {{ working_dir }}/l3_agent_failover_pre.sh
|
|
fi
|
|
{% endif %}
|
|
|
|
{% if fip_http_check|bool %}
|
|
source {{ overcloud_rc }}
|
|
kill -9 $( lsof -t {{ working_dir }}/fip_http_check_start.sh ) || :
|
|
bash {{ working_dir }}/fip_http_check_start.sh &
|
|
{% endif %}
|
|
|
|
source {{ undercloud_rc }}
|
|
|
|
set +o pipefail
|
|
EXTERNAL_ANSWER=""
|
|
if openstack overcloud external-upgrade run --help | grep -qe "--yes"; then
|
|
EXTERNAL_ANSWER="--yes"
|
|
fi
|
|
set -o pipefail
|
|
|
|
echo "[$(date)] Major upgrade - Ceph upgrade step"
|
|
|
|
openstack overcloud external-upgrade run ${EXTERNAL_ANSWER} \
|
|
--stack {{ overcloud_stack_name }} \
|
|
{% if ceph_upgrade_skip_tags|default(false) -%}
|
|
--skip-tags "{{ ceph_upgrade_skip_tags }}" \
|
|
{% endif -%}
|
|
--tags ceph,facts 2>&1
|
|
|
|
echo "[$(date)] Major upgrade - finished Ceph upgrade step"
|
|
|
|
## Install cephadm on the servers
|
|
|
|
echo "[$(date)] Major upgrade - cephadm-admin user and distribute keyrings step"
|
|
|
|
ANSIBLE_LOG_PATH=/home/stack/cephadm_enable_user_key.log \
|
|
ANSIBLE_HOST_KEY_CHECKING=false \
|
|
ansible-playbook -i /home/stack/overcloud-deploy/{{ overcloud_stack_name }}/config-download/{{ overcloud_stack_name }}/tripleo-ansible-inventory.yaml \
|
|
-b -e ansible_python_interpreter=/usr/libexec/platform-python /usr/share/ansible/tripleo-playbooks/ceph-admin-user-playbook.yml \
|
|
-e tripleo_admin_user=ceph-admin \
|
|
-e distribute_private_key=true \
|
|
--limit @/home/stack/ceph_host_limit.txt
|
|
|
|
echo "[$(date)] Major upgrade - finished cephadm-admin user and distribute keyrings step"
|
|
|
|
echo "[$(date)] Major upgrade - upgrade run setup_packages"
|
|
|
|
openstack overcloud upgrade run ${EXTERNAL_ANSWER} \
|
|
--stack {{ overcloud_stack_name }} \
|
|
--tags setup_packages --limit @/home/stack/ceph_host_limit.txt --playbook /home/stack/overcloud-deploy/{{ overcloud_stack_name }}/config-download/{{ overcloud_stack_name }}/upgrade_steps_playbook.yaml 2>&1
|
|
|
|
echo "[$(date)] Major upgrade - upgrade run setup_packages"
|
|
|
|
echo "[$(date)] Major upgrade - Cephadm adoption"
|
|
|
|
openstack overcloud external-upgrade run ${EXTERNAL_ANSWER} \
|
|
--stack {{ overcloud_stack_name }} \
|
|
{% if ceph_upgrade_skip_tags|default(false) -%}
|
|
--skip-tags "{{ ceph_upgrade_skip_tags }}" \
|
|
{% endif -%}
|
|
--tags cephadm_adopt 2>&1
|
|
|
|
echo "[$(date)] Major upgrade - finished Cephadm adoption step"
|
|
|
|
|
|
{% if l3_agent_connectivity_check|bool %}
|
|
if [[ -e {{ working_dir }}/l3_agent_stop_ping.sh ]]; then
|
|
source {{ overcloud_rc }}
|
|
bash {{ working_dir }}/l3_agent_stop_ping.sh
|
|
fi
|
|
{% endif %}
|
|
|
|
{% if l3_agent_failover_check|bool %}
|
|
if [[ -e {{ working_dir }}/l3_agent_failover_post.sh ]]; then
|
|
source {{ overcloud_rc }}
|
|
bash {{ working_dir }}/l3_agent_failover_post.sh
|
|
fi
|
|
{% endif %}
|
|
|
|
{% if fip_http_check|bool %}
|
|
source {{ overcloud_rc }}
|
|
kill -9 $( lsof -t {{ working_dir }}/fip_http_check_start.sh )
|
|
bash {{ working_dir }}/fip_http_check_stop.sh
|
|
{% endif %}
|