Tripleo Upgrade-用于升级和更新Tripleo部署的负责角色

tripleo-upgrade的Python项目详细描述


Tripleo升级

此角色旨在为升级基于Tripleo的Deploments提供统一的工具。

要求

此角色要求:

  • 一个包含可到达的云下和云上节点的ansible inventory文件

  • 库存文件中的节点根据其角色分组(例如,计算节点是"计算"组的一部分)

  • 包含要升级的包的存储库已经安装在云下和云上节点上(或者,对于云上,定义一个upgrade-init-u命令变量)

  • 初始的overcloud deploy命令放在overcloud deploy脚本变量设置的路径中的脚本文件中。每个选项/环境文件都应放在单独的新行中,例如:

    source ~/stackrc
    export THT=/usr/share/openstack-tripleo-heat-templates/
    
    openstack overcloud deploy --templates $THT \
    -r ~/openstack_deployment/roles/roles_data.yaml \
    -e $THT/environments/network-isolation.yaml \
    -e $THT/environments/network-management.yaml \
    -e $THT/environments/storage-environment.yaml \
    -e ~/openstack_deployment/environments/nodes.yaml \
    -e ~/openstack_deployment/environments/network-environment.yaml \
    -e ~/openstack_deployment/environments/disk-layout.yaml \
    -e ~/openstack_deployment/environments/neutron-settings.yaml \
    --log-file overcloud_deployment.log &> overcloud_install.log
    

角色变量

可用变量如下所示:

upgrade_noop: false

只创建升级脚本而不运行它们:

update_noop: false

只创建更新脚本而不运行它们:

undercloud_upgrade: false

运行云下升级:

containerized_undercloud_upgrade: false

运行集装箱化云下升级:

overcloud_upgrade: false

运行过云升级:

undercloud_update: false

运行云下更新:

overcloud_update: false

运行过大声更新:

overcloud_deploy_script: "~/overcloud_deploy.sh"

初始过云部署脚本的位置:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
0

此角色将生成的云下升级脚本的位置:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
1

此角色将生成的可组合Docker升级步骤中使用的升级脚本的位置:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
2

此角色将生成的Converge Docker升级步骤中使用的升级脚本的位置:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
3

云下凭据文件的位置:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
4

过云凭据文件的位置:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
5

允许用户在升级过程中应用已知问题解决方案。用于解决方案的修补程序/命令列表应通过–extra vars传递,并应包括用于云下/云上解决方案的字典:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
6

由Tripleo Quickstart完成部署时设置为true:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
7

设置为true可在开始升级之前启动实例。这对于在升级期间运行测试(如实时迁移或浮动IP连接检查)非常有用:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
8

为实例连接提供浮动IP的外部网络的名称。这提供了外部连接,需要预先存在,由用户创建:

source ~/stackrc
export THT=/usr/share/openstack-tripleo-heat-templates/

openstack overcloud deploy --templates $THT \
-r ~/openstack_deployment/roles/roles_data.yaml \
-e $THT/environments/network-isolation.yaml \
-e $THT/environments/network-management.yaml \
-e $THT/environments/storage-environment.yaml \
-e ~/openstack_deployment/environments/nodes.yaml \
-e ~/openstack_deployment/environments/network-environment.yaml \
-e ~/openstack_deployment/environments/disk-layout.yaml \
-e ~/openstack_deployment/environments/neutron-settings.yaml \
--log-file overcloud_deployment.log &> overcloud_install.log
9

用于工作负载实例的图像的URL:

upgrade_noop: false
0

为工作负载实例分配的内存量:

upgrade_noop: false
1

在Tripleo CI作业中运行角色时设置为true。它通过跳过重新启动和ssh终止任务来避免与云下连接的丢失:

upgrade_noop: false
2

bash命令,定义了一个自定义的升级init,以便在过云升级期间考虑到它。

依赖关系

无。

示例剧本

tests/test.yml中提供了一个示例剧本

upgrade_noop: false
3

与Tripleo Quickstart一起使用

在使用oooq成功部署之后,您可以创建 使用此示例剧本的脚本(复制自 ./tests/oooq test.yaml):

upgrade_noop: false
4

然后像这样运行(调整路径以适应特定于OOQ 一):

upgrade_noop: false
5 < dl >
这将只创建文件(不运行实际升级):
> UL>
  • Undercloud_upgrade.sh
  • composable_docker_upgrade.sh
  • 过云计算-*_upgrade_pre.sh
  • 过云计算-*_upgrade.sh
  • 过云计算-*_upgrade_post.sh
  • Converge_docker_upgrade.sh
  • 使用正确的参数。

    使用红外线

    Tripleo升级已预装作为红外插件。 要手动安装,应使用以下红外线命令:

    upgrade_noop: false
    
    6

    成功的红外过云部署后,您需要运行以下步骤来升级部署:

    符号链接角色路径:

    upgrade_noop: false
    
    7

    设置云下升级存储库:

    upgrade_noop: false
    
    8

    设置云下更新存储库:

    upgrade_noop: false
    
    9

    在云下升级:

    update_noop: false
    
    0

    云下更新:

    update_noop: false
    
    1

    设置过云升级存储库:

    update_noop: false
    
    2

    设置过云更新存储库/容器:

    update_noop: false
    
    3

    升级overcloud:

    update_noop: false
    
    4 < dl >
    更新过度响亮::
    < D> > DL>
    红外线三重扫描升级
    –超频更新是

    从云下手动运行角色

    可以通过执行以下步骤从云下手动运行此角色:

    注意:在开始升级过程之前,请确保 和过云节点设置了带有升级包的存储库

    < dl >
    克隆此存储库
    git clone https://git.openstack.org/openstack/tripleo upgrade
    设置可转换角色路径:
    负责角色路径=$(pwd)
    创建库存文件:
    printf"[undercloud]nlocalhost ansible_connection=local">;主机
    运行包含此角色的剧本:
    Ansible Playbook-我主持Tripleo升级/测试/测试.yml

    欢迎加入QQ群-->: 979659372 Python中文网_新手群

    推荐PyPI第三方库


    热门话题
    java Maven无法识别安装在Ubuntu外壳上的$java_HOME jdk   java如何防止可运行程序在其中一个抛出异常时执行   java Listview在按下项时不触发   如何在WindowsPhone8中使用JavaRESTWebService?   java在spring引导下使用多个dispatcher servlet/web上下文   java为什么在删除容器的绝对大小时不绘制GEF子项?   java在hibernate实体中保留DB约束是好的   JavaSpring选择最高优先级bean   ArrayList<Class>java字符串[]   有向加权边图的Java邻接表实现   字母数字字符串的java Tesseract配置:混合2、Z、6和G   如果输入为空,则带有EditText的java警报对话框将关闭   jsp上的java Struts 2动作响应   java获取IndexOutOfBundException Android   scala AWSJAVASDK:解压缩大小必须小于262144000字节