Ocata 系列发布说明¶
15.1.28-10¶
升级说明¶
下载角色的默认方法已从
galaxy切换到git-clone。 这不会产生任何功能上的影响,但现在是成功下载ceph-ansible仓库的必要条件。 为了防止新旧角色之间的冲突,在次要升级过程中运行scripts/bootstrap-ansible.sh之前,应删除现有的/etc/ansible/roles/ceph*文件夹。
错误修复¶
在 2019 年 1 月 16 日左右,
ceph-ansible独立的仓库已被从 github 上移除,导致 bootstrap-ansible 脚本在新部署或升级过程中失败,特别是对于之前拥有这些角色的环境。 为了替代它们,现在使用ceph-ansiblegit 仓库。
15.1.23¶
新特性¶
已添加变量
lxc_net_manage_iptables。 如果系统范围内的 iptables 规则已经存在或由部署者选择管理,则部署者可以覆盖此变量。
已知问题¶
随着 CentOS 7.5 的发布,所有 pike 版本都因 OpenStack 社区指定的 libvirt-python 库版本与 CentOS 7.5 中提供的版本不匹配而损坏。因此,OSA 无法构建适当的 libvirt python 库。唯一的解决方法是升级到最新的 queens 版本。
弃用说明¶
变量
nova_compute_pip_packages已不再使用,并已被移除。
错误修复¶
为了防止 libvirt 和 python-libvirt 版本不匹配导致进一步的问题,基于 KVM 的计算节点现在将使用发行版软件包 python 库来处理 libvirt。这应该可以解决 CentOS 7.5 上 pike 构建中出现的问题。
15.1.22¶
已知问题¶
早于 17.0.5、16.0.4 和 15.1.22 的所有 OSA 版本都将因发布新的 cmd2-0.9.0 python 库而导致 rally venv 构建失败。鼓励部署者更新到最新的 OSA 版本,该版本固定到与 python2 兼容的适当版本。
最近,spice-html5 git 仓库已完全从
https://github.com/SPICE/spice-html5移动到https://gitlab.freedesktop.org/spice/spice-html5。 这导致在 OSA ocata 15.1.22 之前的版本中,repo-build.ymlplaybook 的 git 克隆阶段失败。 要解决此问题,部署者可以升级到最新版本,或者在user_variables.yml中实施以下覆盖。nova_spicehtml5_git_repo: https://gitlab.freedesktop.org/spice/spice-html5.git
升级说明¶
已从 py_pkgs 查找中删除分发包查找和数据输出,以便 repo-build 使用 py_pkgs 的输出减少,并且查找仅用于 python 包。
错误修复¶
较新版本的 CentOS 附带了一个 libnss 版本,该版本依赖于操作系统中 /dev/random 和 /dev/urandom 的存在才能运行。 这会在 chroot 中运行的缓存准备过程中导致问题,该 chroot 不包含这些文件,从而导致出现以下错误消息
错误:无法初始化 NSS 库
已通过在 chroot 环境中引入 /dev/random 和 /dev/urandom 来解决此问题。
15.1.21¶
已知问题¶
在
lxc_hosts角色执行中,我们使用 images.linuxcontainers.org 每天生成的镜像。 最近镜像生成方式的更改导致默认/etc/resolve.conf在该默认镜像中发生了更改。 因此,在执行缓存准备时,它会失败。 对于 ocata 15.1.21 之前的版本,解决此错误的解决方法是在/etc/openstack_deploy/user_variables.yml文件中添加以下内容。lxc_cache_prep_pre_commands: "rm -f /etc/resolv.conf || true" lxc_cache_prep_post_commands: "ln -s ../run/resolvconf/resolv.conf /etc/resolv.conf -f"
15.1.20¶
新特性¶
当 venvwithindex=True 和 ignorerequirements=True 都在 tempest_git_install_fragments 中指定 (如之前默认),这将导致 tempest 从 PyPI 安装,而没有任何约束条件。这可能导致集成构建中安装的 tempest 版本与独立角色测试中安装的版本不同。今后,我们将删除 tempest_git_* 在 playbooks/defaults/repo_packages/openstack_testing.yml 中的覆盖,以便集成构建从 PyPI 安装 tempest,但应用适当的约束条件。
15.1.17¶
已知问题¶
对于高达 15.1.16 的所有 ocata 版本,在执行 os-nova-install.yml playbook 时,
nova-novncproxy和nova-spicehtml5proxy服务将失败。 解决此问题的解决方法是重启这些服务。cd /opt/rpc-openstack/openstack-ansible/playbooks # start the service again # replace nova-novncproxy with nova-spicehtml5proxy when appropriate ansible nova_console -m service -a 'name=nova-novncproxy state=restarted' # set the appropriate facts to prevent the playbook trying # to reload it again when the playbook is run again ansible nova_console -m ini_file -a 'dest=/etc/ansible/facts.d/openstack_ansible.fact section=nova option=need_service_restart value=False'
此问题已在 15.1.17 版本中解决。
其他说明¶
自 Icehouse 发布第一个 playbook 以来,max_fail_percentage playbook 选项一直与默认 playbook 一起使用。 虽然本意是允许大规模部署在单个节点由于瞬态问题而失败的情况下成功,但此选项产生的问题比它解决的问题更多。 如果发生的故障是瞬态的,但低于设置的故障百分比,playbook 将报告成功,这可能导致根据故障发生的位置而产生静默故障。 如果部署者发现自己处于这种情况,问题会进一步加剧,因为工具将报告没有已知问题。 为了确保部署者获得最佳部署体验和最准确的信息,已更改为从所有默认 playbook 中删除 max_fail_percentage 选项。 删除此选项的副作用是,如果需要省略运行中的特定主机,则部署需要跳过特定主机,但好处是消除了静默的、难以追踪的故障。 要跳过给定 playbook 运行中的故障主机,请使用特定运行的 –limit ‘!$HOSTNAME’ CLI 切换。
15.1.16¶
已知问题¶
对于 OpenStack-Ansible 15.1.16 之前的版本,几个 magnum 要求没有受到约束。 这导致 kubernetes 版本随着时间的推移意外地发生变化,而不是有意地发生变化。 最近,这种缺乏约束导致在尝试构建 magnum venv 时构建失败,因为要求不兼容。
与所有 pike 版本中部署的版本相同的版本 2.0.0,现在约束了 ocata 中部署的 kubernetes 版本。
所有 ocata 版本 15.1.15 及更早版本都使用 mariadb-server 10.1,没有冻结次要版本。 最新版本 10.1.31 在使用
galera_wsrep_sst_method设置为xtrabackup-v2(默认值)时,在多节点环境中进行状态传输时出现问题。 这会导致新集群失败,或者现有集群在重新启动节点时无法传输状态。为了解决此问题,建议在
/etc/openstack_deploy/user_variables.yml中设置以下覆盖,以确保使用已知良好的 MariaDB 版本。从 15.1.16 开始,这些值设置为默认值,并且在验证新版本有效后会不时更新。 因此,对于 15.1.16 及更高版本,设置这些覆盖是不必要的。
# Use these values for Ubuntu galera_repo_url: https://downloads.mariadb.com/MariaDB/mariadb-10.1.30/repo/ubuntu galera_client_repo_url: "{{ galera_repo_url }}" # Use these overrides for CentOS/RHEL: galera_repo_url: https://downloads.mariadb.com/MariaDB/mariadb-10.1.30/yum/centos7-amd64/ galera_client_repo_url: "{{ galera_repo_url }}" # Use these values for SuSE galera_repo_url: https://downloads.mariadb.com/MariaDB/mariadb-10.1.30/yum/opensuse42-amd64 galera_client_repo_url: "{{ galera_repo_url }}"
该问题已在上游注册,可以在此处跟踪该问题的进展:https://jira.mariadb.org/browse/MDEV-15254
15.1.15¶
新特性¶
使用不在 Ansible 库存中的后端节点的 HAProxy 服务现在可以通过设置
haproxy_backend_nodes为name和ip_addr设置列表来手动指定。
15.1.14¶
新特性¶
galera 集群现在支持通过 HTTP 使用端口 9200 进行集群健康状况检查。 新的集群检查通过使用监控用户对 wsrep sync 状态运行简单的查询来确保节点是健康的。 此更改将提供更强大的集群检查,确保我们拥有尽可能具有容错能力的 galera 集群。
Galera 健康检查已得到改进,并且依赖于 xinetd 服务。默认情况下,该服务无法访问(使用 no_access 指令进行过滤)。可以通过将任何 xinetd 有效值设置为
galera_monitoring_allowed_source来覆盖该指令。
15.1.13¶
弃用说明¶
变量
gnocchi_keystone_auth_plugin已被弃用。 应使用gnocchi_keystone_auth_type来配置身份验证类型。
15.1.12¶
已知问题¶
如果 keystone 管理或内部端点的协议为“https”,并且 SSL 在负载均衡器处终止,则验证服务响应并执行通过 keystone 主机 Web 服务器端口的初始服务设置的任务可能会失败。
将
keystone_mod_wsgi_enabled设置为false以使用 Uwsgi 部署 Keystone,并允许在这些任务期间绕过 Web 服务器。有关更多详细信息,请参阅 Launchpad Bug 1699191。
15.1.11¶
错误修复¶
在所有发行版上都安装了
sysstat包,但它仅配置为在 Ubuntu 和 OpenSUSE 上运行。由于/etc/cron.d/sysstat上的 SELinux 上下文和文件权限不正确,它无法在 CentOS 上运行。此问题已得到修复,并且sysstat现在可以在 CentOS 上正常运行。
15.1.10¶
新特性¶
可以通过将项目添加到
keystone_extra_headers来向 Keystone 响应添加额外的标头。示例keystone_extra_headers: - parameter: "Access-Control-Expose-Headers" value: "X-Subject-Token" - parameter: "Access-Control-Allow-Headers" value: "Content-Type, X-Auth-Token" - parameter: "Access-Control-Allow-Origin" value: "*"
RabbitMQ 的默认 ulimit 现在为 65536。部署者仍然可以使用 Ansible 变量
rabbitmq_ulimit调整此限制。
安全问题¶
在以前的版本中,
net.bridge.bridge-nf-call-*内核参数设置为0以提高性能,并将调整这些参数的任务留给 neutron 在应用安全组时执行。这可能导致桥接流量未通过 iptables,从而使安全组失效。这可能允许云中的意外入站和出站流量。现在,
openstack_hostsrole 在所有主机上将这些内核参数设置为1,以确保桥接流量始终通过 iptables。
错误修复¶
sysctl 配置任务没有跳过
enabled设置为no的配置。 相反,当设置enabled: no时,它会删除配置。现在有一个修复程序,可确保任何
enabled: no的 sysctl 配置将被跳过,并且系统上的配置将保持不变。
15.1.9¶
新特性¶
config_template 模板模块现在支持写入无值的 INI 选项,而无需在末尾附加“=”或“:”。 这通过“ignore_none_type”属性完成。 如果 ignore_none_type 设置为 true,则将忽略这些键/值条目;如果设置为 false,则 ConfigTemplateParser 将只写入选项名称,而没有“=”或“:”后缀。 默认值为 true。
升级说明¶
以下变量已从
haproxy_server角色中删除,因为它们不再必要或使用。 - haproxy_repo - haproxy_gpg_keys - haproxy_required_distro_packages
安全问题¶
PermitRootLogin在 ssh 配置中已从yes更改为without-password。这将仅允许使用密钥通过 ssh 身份验证 root。
错误修复¶
在 Ubuntu 中,
dnsmasq包实际上包含 init 脚本和与 LXC 冲突的最佳不包含的服务配置。实际的依赖包是dnsmasq-base。已调整软件包列表,并添加了一个任务以删除dnsmasq包并从所有 LXC 主机中清除相关的配置文件。
现在可以正确覆盖 Mysql cnf 文件。 config_template 模块已扩展为支持无值选项,例如在 my.cnf 文件中找到的选项(例如,quick 在 mysqldump 部分下)。 要使用无值选项,请使用 config_template 模块的 ignore_none_type 属性。
15.1.8¶
新特性¶
os_novarole 现在提供在完成数据库同步后执行在线数据迁移的功能。数据迁移将不会执行,直到布尔变量nova_all_software_updated为 true。此变量需要由使用该 role 的 playbook 设置。
15.1.7¶
新特性¶
os_swift 角色现在支持 swift3 中间件,允许通过 Amazon S3 API 访问 swift。 可以通过将
swift_swift3_enabled设置为true来启用此功能。
os_cinderrole 现在提供在完成数据库同步后执行在线数据迁移的功能。数据迁移将不会执行,直到布尔变量cinder_all_software_updated为 true。此变量需要由使用该 role 的 playbook 设置。
已添加一个用于安装来自 ESL(erlang solutions)的现代 erlang 的新仓库,使我们能够安装和支持跨多个操作系统的现代稳定 erlang 版本。
已添加设置 RabbitMQ 仓库 URL(包括 erlang 和 RabbitMQ 本身)的功能。这是为了允许部署者定义给定仓库的位置,而无需完全重新定义特定仓库的整个定义集。已创建默认变量 rabbitmq_gpg_keys、rabbitmq_repo_url 和 rabbitmq_erlang_repo_url 以促进此功能。
现在可以禁用 horizon 中的 heat stack 密码字段。已添加变量
horizon_enable_heatstack_user_pass,默认值为 True。
os-nova-install.ymlplaybook 现在将执行 nova 的滚动升级,包括数据库迁移,具体过程如 nova 文档 中所述。
已知问题¶
MemcacheD 在其 systemd 单元文件中设置 PrivateDevices=true,以围绕挂载命名空间添加额外的安全性。 虽然这在将 MemcacheD 在裸机主机上与其他服务一起运行时很有用,但当 MemcacheD 已经在具有自己命名空间的容器内时,它用处不大。 此外,LXC 2.0.8 在容器内将 /dev/ptmx 作为绑定挂载提供,而 systemd 219(在 CentOS 7 上)无法在启用 PrivateDevices 时对 /dev/ptmx 进行额外的绑定挂载。
部署者可以将 memcached_disable_privatedevices 设置为 yes,以在 CentOS 7 上 MariaDB 的 systemd 单元文件中将 PrivateDevices 设置为 false。 默认值为 no,这保留了 MemcacheD 软件包的默认 systemd 单元文件设置。
有关更多信息,请参阅以下错误:
MariaDB 10.1+ 在其 systemd 单元文件中包含 PrivateDevices=true,以围绕挂载命名空间为 MariaDB 添加额外的安全性。 虽然这在将 MariaDB 在裸机主机上与其他服务一起运行时很有用,但当 MariaDB 已经在具有自己命名空间的容器内时,它用处不大。 此外,LXC 2.0.8 在容器内将 /dev/ptmx 作为绑定挂载提供,而 systemd 219(在 CentOS 7 上)无法在启用 PrivateDevices 时对 /dev/ptmx 进行额外的绑定挂载。
部署者可以将 galera_disable_privatedevices 设置为 yes,以在 CentOS 7 上 MariaDB 的 systemd 单元文件中将 PrivateDevices 设置为 false。 默认值为 no,这保留了 MariaDB 软件包的默认 systemd 单元文件设置。
有关更多信息,请参阅以下错误:
升级说明¶
切换到 ESL 仓库不会产生升级影响。ESL 提供的 erlang 版本比发行版仓库中的版本更新。此外,已添加一个引脚,以确保 APT 始终将 ESL 仓库用作首选源,这是为了确保 APT 始终指向 ESL。
整个 repo 构建过程现在是幂等的。从现在开始,当重新运行 repo 构建时,它只会获取更新的 git 仓库,并在需求发生变化或正在部署新版本时重建 wheels/venvs。
repo 构建过程中的 git 克隆部分现在仅在需求发生变化时发生。可以使用布尔变量
repo_build_git_reclone强制执行 git 重克隆。
python wheel 构建过程现在仅在需求发生变化时发生。可以使用布尔变量
repo_build_wheel_rebuild强制执行 wheel 重建。
python venv 构建过程现在仅在需求发生变化时发生。可以使用布尔变量
repo_build_venv_rebuild强制执行 venv 重建。
repo 构建过程现在只有以下标签,为每个交付物提供清晰的路径。标签
repo-build-install完成所需软件包的安装。标签repo-build-wheels完成 wheel 构建过程。标签repo-build-venvs完成 venv 构建过程。最后,标签repo-build-index完成 os-releases 和 links 文件夹的清单准备和索引。
错误修复¶
基于 RabbitMQ 的文档 [ https://rabbitmq.cn/which-erlang.html ],此更改可确保我们跨发行版使用的 erlang 版本一致且受 RabbitMQ 支持。
15.1.6¶
新特性¶
os-cinder-install.ymlplaybook 现在将执行 cinder 的滚动升级,包括数据库迁移(模式和在线迁移),具体过程如 cinder 文档 中所述。当使用 haproxy 作为负载均衡器时,将被更改的后端将在进行更改之前被清空,并在更改完成后重新添加到池中。
已添加变量
horizon_images_allow_location以支持 horizon_local_settings.py 文件中的IMAGES_ALLOW_LOCATION设置,以便在创建镜像时指定外部位置。
os-neutron-install.ymlplaybook 现在将执行 neutron 的滚动升级,包括数据库迁移(扩展和收缩),具体过程如 neutron 文档 中所述。
已知问题¶
OpenStack-Ansible 设置了一个新的变量 galera_disable_privatedevices,用于控制 MariaDB 的 systemd 单元文件中是否启用 PrivateDevices 配置。
如果 galera_server 角色部署在裸机主机上,则保持 MariaDB 默认设置(PrivateDevices=true)。 如果该角色部署在容器内,则将 PrivateDevices 配置设置为 true,以解决 systemd 绑定挂载的 /dev/ptmx 错误。
有关更多详细信息,请参阅 Launchpad Bug 1697531。
OpenStack-Ansible 设置了一个新的变量 memcached_disable_privatedevices,用于控制 MemcacheD 的 systemd 单元文件中是否启用 PrivateDevices 配置。
如果 memcached_server 角色部署在裸机主机上,则保持默认设置(PrivateDevices=true)。 如果该角色部署在容器内,则将 PrivateDevices 配置设置为 true,以解决 systemd 绑定挂载的 /dev/ptmx 错误。
有关更多详细信息,请参阅 Launchpad Bug 1697531。
15.1.5¶
新特性¶
os_ceilometer 角色现在包含一个设施,您可以在
/etc/openstack_deploy/ceilometer(默认情况下)中放置自己的模板,并在模板引擎解释后将其部署到目标主机。 如果在那里找不到文件,则使用基于 git 的模板的后备方案。
对于
os_designate角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用designate_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
os_gnocchi角色现在包含一个设施,您可以在/etc/openstack_deploy/gnocchi(默认情况下) 中放置您自己的默认api-paste.ini或policy.json文件,并在模板引擎解释后将其部署到目标主机。
可以使用新的选项
haproxy_backend_arguments向 HAProxy 后端添加任意选项,例如 tcp-check 或 http-check。
已实现禁用在检查和与内部 cinder 端点交互时进行证书验证的功能。为此,请在
/etc/openstack_deploy/user_variables.yml中设置以下内容。cinder_service_internaluri_insecure: yes
升级说明¶
对于
os_designate角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用designate_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
designate 使用的与 neutron 通信的端点默认设置为 internalURL。此更改已在模板
designate.conf.j2中完成,可以使用designate_designate_conf_overrides变量进行更改。
magnum 客户端交互现在默认使用公共端点。 之前设置为使用内部端点。
magnum 启动的实例的 keystone 端点现在默认提供公共端点。 之前设置为使用内部端点。
弃用说明¶
变量
keepalived_uca_enable已被弃用,并被keepalived_ubuntu_src替换。keepalived_uca_enable变量将在 keepalived 角色的未来版本中删除。keepalived_ubuntu_src的值应为“uca”、“ppa”或“native”,分别对应于从 Ubuntu Cloud 存档、从 keepalived 稳定 ppa 或不从外部源安装。
变量
keepalived_use_latest_stable已被弃用,并被keepalived_package_state替换。keepalived_use_latest_stable变量将在 keepalived 角色的未来版本中删除。keepalived_package_state的值应为“latest”或“present”。
upstream noVNC 开发者建议自动检测虚拟机控制台的键盘映射。 三个 Ansible 变量的默认值已被删除
nova_console_keymap
nova_novncproxy_vnc_keymap
nova_spice_console_keymap
nova.conf模板仍然包含这些变量,并且它设置了键盘映射配置选项。 已经自定义此设置的部署者不会看到nova.conf中的更改。
安全问题¶
magnum 客户端交互现在默认使用公共端点。 之前设置为使用内部端点。
magnum 启动的实例的 keystone 端点现在默认提供公共端点。 之前设置为使用内部端点。
15.1.4¶
新特性¶
已添加新的变量,以允许部署者根据自己的喜好自定义 designate systemd unit 文件。
现在用于删除 designate systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的意愿自定义 unit 文件,而无需将额外的选项加载到默认值中,并污染通用的 systemd unit 文件,其中包含 jinja2 变量和条件。
错误修复¶
从 Newton 升级到 Ocata 现在将正确地将现有的 Nova 实例添加到
nova_cell1_namecell。 有关更多信息,请参见 bug 1682169。
upstream 现在依赖于 ldappool 的 2.1.0 版本。
15.1.3¶
新特性¶
已添加新变量,允许部署者根据自己的喜好自定义 aodh systemd 单元文件。
删除 aodh systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_aodh角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用aodh_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_barbican角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用barbican_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 ceilometer systemd 单元文件。
删除 ceilometer systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_ceilometer角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用ceilometer_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 cinder systemd 单元文件。
删除 cinder systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
已添加新变量,允许部署者根据自己的喜好自定义 glance systemd 单元文件。
删除 glance systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_glance角色,systemd 单元RestartSec值,它控制服务停止和重新启动之间的时间,已从 150 秒减少到 2 秒,以加快重新启动速度。可以使用glance_*_init_config_overrides变量调整此值,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 gnocchi systemd 单元文件。
删除 gnocchi systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_gnocchi角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用gnocchi_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 heat systemd 单元文件。
删除 heat systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_heat角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用heat_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 ironic systemd 单元文件。
删除 ironic systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_ironic角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用ironic_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 keystone systemd 单元文件。
删除 keystone systemd 单元文件的任务现在使用
config_template操作插件,允许部署者访问自定义单元文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件污染通用的 systemd 单元文件。
对于
os_keystone角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用keystone_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 magnum systemd unit 文件。
现在,删除 magnum systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的需要自定义 unit 文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件语句污染通用的 systemd unit 文件。
对于
os_magnum角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用magnum_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 neutron systemd unit 文件。
现在,删除 neutron systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的需要自定义 unit 文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件语句污染通用的 systemd unit 文件。
对于
os_neutron角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用neutron_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 nova systemd unit 文件。
现在,删除 nova systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的需要自定义 unit 文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件语句污染通用的 systemd unit 文件。
对于
os_nova角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用nova_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
在 Ocata 版本中,Trove 添加了对加密 guest DBaaS 实例和控制平面之间 rpc 通信的支持。应覆盖
trove_taskmanager_rpc_encr_key和trove_inst_rpc_key_encr_key的默认值,以指定安装特定的值。
已添加新的变量,以允许部署者根据自己的喜好自定义 sahara systemd unit 文件。
现在,删除 sahara systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的意愿自定义 unit 文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件语句污染通用的 systemd unit 文件。
对于
os_sahara角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用sahara_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
已添加新变量,允许部署者根据自己的喜好自定义 swift systemd unit 文件。
现在,删除 swift systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的需要自定义 unit 文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件语句污染通用的 systemd unit 文件。
已添加新的变量,以允许部署者根据自己的喜好自定义 trove systemd unit 文件。
现在,删除 trove systemd unit 文件的任务使用
config_template操作插件,允许部署者根据自己的意愿自定义 unit 文件,而无需将额外的选项加载到默认值中,并用 jinja2 变量和条件语句污染通用的 systemd unit 文件。
对于
os_trove角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用trove_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
升级说明¶
对于
os_aodh角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用aodh_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_barbican角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用barbican_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_ceilometer角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用ceilometer_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_glance角色,systemd 单元RestartSec值,它控制服务停止和重新启动之间的时间,已从 150 秒减少到 2 秒,以加快重新启动速度。可以使用glance_*_init_config_overrides变量调整此值,这些变量使用config_template任务来更改模板默认值。
对于
os_gnocchi角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用gnocchi_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_heat角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用heat_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_ironic角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用ironic_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_keystone角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用keystone_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_magnum角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用magnum_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_neutron角色,控制停止或重启服务时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长寿命会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用neutron_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_nova角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用nova_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_sahara角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用sahara_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
对于
os_trove角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用trove_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
15.1.2¶
新特性¶
已向 bootstrap-host 角色添加一个名为
bootstrap_user_variables_template的变量,以便用户可以定义 AIO 部署的用户变量模板文件名
实现了与 MySQL 的 SSL 连接能力。必须将
galera_use_ssl选项设置为true(默认),在这种情况下,playbooks 会创建自签名 SSL 捆绑包并设置 MySQL 配置以使用它,或在 Galera 节点之间分发用户提供的捆绑包。
移除了 nova.conf 中设置
rbd_user和rbd_secret_uuid变量时对cinder_backends_rbd_inuse的依赖。Cinder 通过 RPC 在附加卷时传递所有必要的值,因此这些变量仅对存储在 Ceph 中的临时磁盘是必需的。这些变量需要在 cinder-volume 侧的后端部分中进行设置。
关键问题¶
已修复一个错误,该错误导致在重建第一个 Keystone 容器期间运行 playbook 时 Keystone 凭证密钥丢失。有关更多详细信息,请参阅 launchpad bug 1667960。
错误修复¶
使用 libguestfs(libvirt 密码/密钥注入)的 Nova 特性现在可以在运行 Ubuntu 的计算主机上工作。当 Nova 部署到 Ubuntu 计算主机,并且
nova_libvirt_inject_key或nova_libvirt_inject_password设置为 True 时,存储在 /boot/vmlinuz-* 中的内核将对 nova 用户可读。请参阅 launchpad bug 1507915。
15.1.1¶
新特性¶
当用户未配置此变量并且 swift proxy 位于容器中时,将变量
swift_proxy_server_workers的默认值限制为 16。如果 swift proxy 不在容器中,默认值为机器上可用 vCPU 数量的一半。如果 proxy 在容器中,默认值为机器上可用 vCPU 数量的一半,并限制值为 16。
添加了对 cinder v3 api 的支持。默认情况下启用此功能,但可以通过将
cinder_enable_v3_api变量设置为false来禁用它。
对于
os_cinder角色,控制服务停止或重启时发送 SIGTERM 信号和 SIGKILL 信号之间的时间的 systemd unitTimeoutSec值已从 300 秒减少到 120 秒。这为长生命周期会话提供了 2 分钟的排空时间,同时防止在重启或停止之前启动新的会话。RestartSec值控制重启时服务停止和启动之间的时间,已从 150 秒减少到 2 秒,以加快重启速度。这些值可以通过使用cinder_*_init_config_overrides变量进行调整,这些变量使用config_template任务来更改模板默认值。
Haproxy-server 角色允许设置可调参数。为此,有必要在配置文件中设置一个选项字典,提及需要更改的选项(其余选项的默认值在模板中编程)。此外,“maxconn”全局选项也设置为可调参数。
弃用说明¶
变量
cinder_sigkill_timeout和cinder_restart_wait已被弃用,将在 Pike 中删除。
错误修复¶
用于设置 Trove 特定 uri 的 openstack 服务 uri 协议变量没有被使用。这导致即使打算使用“https”,所有 uri 始终使用“http”。
15.1.0¶
新特性¶
当用户未配置此变量时,将变量
aodh_wsgi_processes的默认值限制为 16。默认值为机器上可用 vCPU 数量的两倍,并限制值为 16。
当用户未配置此变量时,将变量
gnocchi_wsgi_processes的默认值限制为 16。默认值为机器上可用 vCPU 数量的两倍,并限制值为 16。
当用户未配置此变量时,将变量
ironic_wsgi_processes的默认值限制为 16。默认值为机器上可用 vCPU 数量的四分之一,并限制值为 16。
当用户未配置此变量时,将变量
sahara_api_workers的默认值限制为 16。默认值为机器上可用 vCPU 数量的一半,并限制值为 16。
已将前缀“common-”添加到所有常见标签中。这是为了允许部署者根据需要快速运行任何常见标签,而无需重新运行整个 playbook。
用于在 CentOS 7 上安装 LXC 的 COPR 仓库现在设置为比默认仓库更高的优先级,以确保 LXC 包始终来自 COPR 仓库。
如果设置了
galera_repo_url的值,galera_client角色将默认使用galera_repo_urlURL。这简化了使用 MariaDB 服务器和客户端的替代镜像,因为只需要设置一个变量即可覆盖它们。
如果存在匹配的服务名称、类型、区域和接口,
keystone模块的ensure_endpoint方法的默认行为已更改为更新现有的端点。这确保了每个区域不存在重复的服务条目。
已更新 repo 服务器文件系统结构,以允许同时运行多个操作系统和多个体系结构,并从单个服务器提供服务,而不会影响池、venv、wheel 存档和清单。新的结构遵循以下模式 $RELEASE/$OS_TYPE-$ARCH,并已应用于 os-releases、venvs 和 pools。
部署者现在可以定义一个环境变量
GROUP_VARS_PATH,其中包含他们选择的文件夹(用冒号分隔),以定义用户空间 group_vars 文件夹。这些变量将应用,但当前会被 OpenStack-Ansible 默认 group_vars、设置的事实以及 user_* 变量覆盖。如果部署者定义了多个路径,则找到的变量将被合并,并且优先级从左到右增加(在 GROUP_VARS_PATH 中最后定义的变量获胜)。
部署者现在可以定义一个环境变量
HOST_VARS_PATH,其中包含他们选择的文件夹(用冒号分隔),以定义用户空间 host_vars 文件夹。这些变量将应用,但当前会被 OpenStack-Ansible 默认 host_vars、设置的事实以及 user_* 变量覆盖。如果部署者定义了多个路径,则找到的变量将被合并,并且优先级从左到右增加(在 HOST_VARS_PATH 中最后定义的变量获胜)。
已知问题¶
目前 Ansible 存在一个关于
HOSTNAME的 bug。如果宿主机的.bashrc文件包含名为HOSTNAME的变量,那么lxc_container模块附加的容器将会继承这个变量,并可能设置错误的$HOSTNAME。请参阅 Ansible 的修复,该修复将在 Ansible 2.3 版本中发布。
升级说明¶
已更新 repo 服务器文件系统结构,以允许同时运行多个操作系统和多个体系结构,并从单个服务器提供服务,而不会影响池、venv、wheel 存档和清单。新的结构遵循以下模式 $RELEASE/$OS_TYPE-$ARCH,并已应用于 os-releases、venvs 和 pools。
现在已删除 EPEL 仓库,以支持 RDO 仓库。
这对于现有的 CentOS 部署来说是一个破坏性更改。 当它发现从 EPEL 安装的某些软件包不再可用时,
yum包管理器将出现错误。部署者可能需要重建容器或重新安装软件包才能完成此更改。
已删除
openstack_tempest_gate.sh脚本,因为它需要使用已被 Tempest 弃用的run_tempest.sh脚本。为了促进切换,变量tempest_run的默认值设置为yes,强制角色默认执行 tempest。可以通过将值覆盖为no来更改此默认值。可以通过列表变量tempest_test_whitelist设置测试白名单。
弃用说明¶
变量
galera_client_apt_repo_url和galera_client_yum_repo_url已被弃用,以支持通用的变量galera_client_repo_url。
在 Queens 周期中,
keystone模块的ensure_endpoint方法的update状态现在已被弃用,并将被删除。将状态设置为present将达到相同的效果。
安全问题¶
安全角色默认情况下不再根据 RPM 数据库的内容修复文件权限和所有权。部署者可以通过将
security_reset_perm_ownership设置为yes来选择加入这些更改。
搜索
.shosts和shosts.equiv文件的任务(STIG ID:RHEL-07-040330)现在默认跳过。搜索在包含大量文件的系统上完成需要很长时间,并且在运行时也会导致大量的磁盘 I/O。
其他说明¶
keepalived 角色已更新,现在包含了一种可选的方式来配置 vrrp 脚本超时。请参阅:keepalived 角色上的 VRRP 超时 PR。
15.0.0¶
序言¶
已从代码库中删除对 Ubuntu Trusty (14.04) 的支持的功能。
新特性¶
已向 ceph_client 角色添加对 CentOS7/RHEL 的支持。
目前仅支持 Ceph 仓库。
现在有实验性的支持,可以在 CentOS 7 上部署 OpenStack-Ansible,用于开发和测试环境。
已添加实验性支持,以允许在 host group
dnsaas_hosts中存在主机时部署 OpenStack Designate 服务。
已添加对 horizon designate-ui dashboard 的支持。如果任何主机位于
dnsaas_hosts库存组中,则 dashboard 将自动启用。
os_horizon 角色现在支持 horizon designate-ui dashboard。可以通过在
/etc/openstack_deploy/user_variables.yml中将horizon_enable_designate_ui设置为True来启用 dashboard。
已添加对 horizon trove-ui dashboard 的支持。如果定义了任何主机在
trove-infra_hosts库存组中,则 dashboard 将自动启用。
部署者现在可以定义覆盖
cinder_rpc_executor_thread_pool_size,其默认值为 64
部署者现在可以定义覆盖
cinder_rpc_response_timeout,其默认值为 60
已添加实验性支持,以允许在 host group
trove-infra_hosts中存在主机时部署 OpenStack trove 服务。
现在可以自定义 All-In-One (AIO) bootstrap 过程的配置文件源位置,使用变量
bootstrap_host_aio_config_path。
现在可以自定义 All-In-One (AIO) bootstrap 过程使用的脚本的位置,使用变量
bootstrap_host_aio_script_path。
现在可以自定义 All-In-One (AIO) bootstrap 过程创建的
user_variables.yml文件的名称,使用变量bootstrap_host_user_variables_filename。
现在可以自定义 All-In-One (AIO) bootstrap 过程创建的
user_secrets.yml文件的名称,使用变量bootstrap_host_user_secrets_filename。
Ubuntu cloud 归档的 apt 源文件名现在可以使用变量
uca_apt_source_list_filename来定义。
Ceph 客户端中使用的 ubuntu cloud 归档的 apt 源文件名现在可以通过在
ceph_apt_repos字典的 uca 部分提供文件名来定义。
Ubuntu cloud 归档的 apt 源文件名现在可以使用变量
uca_apt_source_list_filename来定义。
apt/yum 源的文件名现在可以使用变量
mariadb_repo_filename来定义。
apt 源的文件名现在可以使用在
galera_repo和galera_percona_xtrabackup_repo字典中定义的变量filename来定义。
Ubuntu cloud 归档的 apt 源文件名现在可以使用变量
uca_apt_source_list_filename来定义。
已添加支持,以便在主机组
key-manager_hosts中存在主机时部署 OpenStack barbican 服务。
neutron 的工作线程数现在将限制为 16,除非指定了特定值。 之前,计算出的工作线程数可能会在具有大量处理器的系统上过高。 这在 POWER 系统上尤其明显。
当用户未配置这些变量时,将变量
ceilometer_api_workers和ceilometer_notification_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置此变量时,将变量
cinder_osapi_volume_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置此变量时,将变量
galera_wsrep_slave_threads的默认值限制为 16。 默认值是机器上可用 vCPU 数量,限制值为 16。
当用户未配置此变量时,将变量
galera_max_connections的默认值限制为 1600。 默认值是机器上可用 vCPU 数量的 100 倍,限制值为 1600。
当用户未配置这些变量时,将变量
glance_api_workers和glance_registry_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置这些变量时,将变量
heat_api_workers和heat_engine_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置这些变量时,将变量
horizon_wsgi_processes和horizon_wsgi_threads的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置此变量时,将变量
keystone_wsgi_processes的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置这些变量时,将变量
neutron_api_workers、neutron_num_sync_threads和neutron_metadata_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置这些变量时,将变量
nova_wsgi_processes、nova_osapi_compute_workers、nova_metadata_workers和nova_conductor_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
当用户未配置此变量时,将变量
repo_nginx_workers的默认值限制为 16。 默认值是机器上可用 vCPU 数量的一半,限制值为 16。
ceilometer 配置文件(
ceilometer.conf除外)现在从上游获取。 可以通过设置变量ceilometer_git_config_lookup_location来覆盖从中获取这些配置文件的仓库,默认值为 git.openstack.org。
现在从 git 获取
os_ceilometer角色未模板化的几个配置文件。 可以使用变量ceilometer_git_config_lookup_location更改使用的 git 仓库。 默认情况下,指向git.openstack.org。 仍然可以使用ceilometer_x_overrides变量更改这些文件。
已添加用于促进 OpenStack-Ansible 与 Ceph 集群集成门控测试的 ceph-ansible 剧本,并可用于集成这两个项目,以便 OpenStack-Ansible 可以使用 ceph-ansible 部署和使用其自身的 Ceph 安装。 在部署者和 OpenStack-Ansible 门控完成进一步测试以微调其稳定性和完整性之前,应将此视为一个实验性集成。 可以通过将主机添加到
ceph-mon_hosts和ceph-osd_hosts中 OSA 编目来激活 ceph-install 剧本。 许多 ceph-ansible 特定变量可能需要在user_variables.yml中配置,以配置您的环境的 ceph-ansible。 请参考 ceph-ansible 仓库 以获取项目支持的变量列表。
chrony的安装默认情况下仍然启用,但现在由变量security_enable_chrony控制。
部署者可以将
heat_cinder_backups_enabled设置为启用或禁用 heat 中的 cinder 备份功能。 如果 heat 启用了 cinder 备份,但 cinder 的备份服务已禁用,则新构建的堆栈将无法删除。变量
heat_cinder_backups_enabled默认设置为false。
引入了一个新的开关
pip_install_build_packages,以允许切换编译器和开发库的安装。 通过默认启用该开关来保持安装编译器和开发库的传统行为。
部署者可以设置
openstack_host_nf_conntrack_max来控制 netfilter 连接跟踪表的最大大小。 如果虚拟机将处理大量并发连接,则应增加默认值262144。
LXC 容器现在将在所有网络接口上生成固定的 MAC 地址,当选项 lxc_container_fixed_mac 设置为 true 时。此功能已实施,以解决通常在具有高强度网络服务的规模上遇到的容器中动态 MAC 地址的问题。
os-designate角色现在支持 Ubuntu 16.04 和 SystemD。
Designate pools.yaml 文件现在可以通过 designate_pools_yaml 属性生成,如果需要的话。 这允许用户使用来自其他剧本的属性填充 Designate DNS 服务器配置,并避免在 Designate 角色外部管理该文件。
rabbitmq_server角色现在支持禁用不使用 TLS 的侦听器。 部署者可以覆盖变量rabbitmq_disable_non_tls_listeners,如果他们希望启用此功能,则将其值设置为True。
Neutron DHCP 选项已设置为允许运行 dnsmasq 的 DHCP 服务器与同一网络中的其他 DHCP 服务器共存。 这通过指示 dnsmasq 忽略未在 dhcp-host 文件中指定的任何客户端来实现。
Neutron DHCP 选项已设置为提供日志记录,默认情况下使调试 DHCP 和连接问题更容易。
变量
ceph_extra_confs已扩展为支持自动从多个 Ceph 集群检索其他 ceph.conf 和密钥环。
可以定义其他 libvirt Ceph 客户端密钥,以支持从不同的 Ceph 集群附加卷。
可以通过在变量
cinder_backends的所需后端中定义一个名为extra_volume_types的列表来创建其他卷类型。
在有益于容器类型的容器上实现了容器启动顺序。 此更改可确保在容器中运行的状态化系统在非状态化系统之前启动。 虽然此更改对正在运行的部署没有影响,但如果托管容器的任何节点发生故障或需要重新启动,它将有助于更快地恢复。
已向“os-lxc-container-setup.yml”通用任务文件添加了一个新任务。 此新任务将允许添加其他配置,而无需重新启动容器。 在需要添加或更新正在运行的容器的非影响配置时,此更改很有帮助。
可以指定
galera_client_package_install选项来处理是否作为运行openstack-ansible-galera_client角色结果安装软件包。 默认情况下,这将设置为true,但可以设置为false以防止安装软件包。 这在部署my.cnf客户端配置文件到已经安装 Galera 的主机上时很有用。
可以指定变量
galera_package_arch以在安装 percona 和 qpress 包时强制使用特定架构。 这将根据galera_server主机的架构自动计算。 可接受的值是x86_64用于Ubuntu-16.04和RHEL 7,以及ppc64le用于Ubuntu-16.04。
向 neutron 库添加
get_networks命令。 这将返回所有网络的网络信息,如果指定的net_name网络不存在,则会失败。 如果未指定net_name,将返回所有网络的网络信息,而不会检查现有net_name网络。
将变量
glance_swift_store_auth_insecure设置为覆盖swift_store_auth_inscure在/etc/glance/glance-api.conf中的值。 在使用与本地 Keystone 具有不同insecure设置的外部 Swift 存储时,设置此值。
指定变量
gnocchi_auth_mode以设置 gnocchi 的auth_mode。 默认值为basic,已从noauth更改以匹配上游。 如果gnocchi_keystone_auth为true或yes,则此值将默认设置为keystone。
指定变量
gnocchi_git_config_lookup_location的值以指定可以检索gnocchi配置文件的 git 仓库。api-paste.ini和policy.json文件现在从指定的 git 仓库检索,并且不包含在os_gnocchi角色中。
现在从 git 获取未在
os_gnocchi` 角色中模板化的几个配置文件。 可以使用变量gnocchi_git_config_lookup_location更改使用的 git 仓库。 默认情况下,指向git.openstack.org。仍然可以使用gnocchi_x_overrides变量更改这些文件。
如果 cinder 备份服务已启用
cinder_service_backup_program_enabled: True,则 heat 将配置为使用 cinder 备份服务。 变量heat_cinder_backups_enabled将自动设置为True。
现在可以通过在用户变量中定义变量
horizon_disallow_iframe_embed来更改DISALLOW_IFRAME_EMBED的行为。
dynamic_inventory.py的--check参数现在将在用户配置中定义的任何未在环境定义中找到的组发出警告。
添加了对
neutron作为enabled_network_interface的支持。
变量
ironic_neutron_provisioning_network_name和ironic_neutron_cleaning_network_name可以设置为用于配置和清理的 neutron 网络的名称。 Ansible 任务将确定该网络的适当 UUID。 或者,可以使用ironic_neutron_provisioning_network_uuid或ironic_neutron_cleaning_network直接指定网络的 UUID。 如果同时指定了ironic_neutron_provisioning_network_name和ironic_neutron_provisioning_network_uuid,则将使用指定的 UUID。 如果仅指定配置网络,则清理网络将默认为相同的网络。
添加了对 ironic-OneView 驱动程序的支持。 请查看文档以了解如何启用它们。
在使用写时复制备份存储时,lxc_container_base_name 现在可以包含由
lxc_container_base_name_prefix定义的前缀。
CentOS 上的 LXC 现在通过 COPR 仓库中的软件包而不是从上游源代码安装。
LXC bridge 网络已添加 IPv6 支持。可以使用
lxc_net6_address、lxc_net6_netmask和lxc_net6_nat进行配置。
已添加变量
lxc_cache_environment。部署者可以覆盖此字典,以设置将应用于所有 lxc 容器下载任务的 HTTP 代理环境变量。
已添加新的 provider 网络属性
sriov_host_interfaces,以支持 Neutron 内部的 SR-IOV 网络映射。provider_network 在 provider_networks 字典中添加了新的条目 network_sriov_mappings 和 network_sriov_mappings_list。可以通过逗号分隔定义多个接口。
neutron 的
dragonflow插件现在可用。您可以将neutron_plugin_type设置为ml2.dragonflow以利用此代码路径。dragonflow代码路径当前为实验性。
Neutron SR-IOV 现在可以可选地部署和配置。有关该服务及其提供的功能的详细信息,请参阅 SR-IOV 安装指南 以获取更多信息。
默认情况下,现在已配置
nova-placement服务。可以将nova_placement_service_enabled设置为False以禁用nova-placement服务。
nova-placementapi 服务现在将作为其自身的 ansible 组nova_api_placement运行。
已添加 Nova cell_v2 支持。默认 cell 是
cell1,可以通过nova_cell1_name覆盖。目前尚不支持多个 cell。
现在复制
/etc/openstack-release文件的操作是可选的。要禁用文件复制,请将openstack_distrib_file设置为no。
现在可以更改
/etc/openstack-release文件放置的位置。将变量openstack_distrib_file_path设置为将其放置在不同的路径中。
os_keystone 角色现在在安装过程中执行滚动升级,而不会出现停机时间。滚动升级的过程在此处记录。
已向 os_tempest 角色添加了一个新变量
tempest_flavors,允许用户定义在 tempest 测试期间使用的 nova flavor。
CentOS7/RHEL 支持已添加到 os_aodh 角色。
CentOS7/RHEL 支持已添加到 os_ceilometer 角色。
CentOS7/RHEL 支持已添加到 os_designate 角色。
CentOS7/RHEL 支持已添加到 os_gnocchi 角色。
CentOS7/RHEL 支持已添加到 os_heat 角色。
CentOS7/RHEL 支持已添加到 os_horizon 角色。
CentOS7/RHEL 支持已添加到 os_neutron 角色。
CentOS7/RHEL 支持已添加到 os_nova 角色。
CentOS7/RHEL 支持已添加到 os_swift 角色。
openstack-ansible-security 角色现在配置为将 Red Hat Enterprise Linux 7 STIG 中的安全配置应用于 OpenStack-Ansible 部署。
os_barbican 角色现在支持配置 apt/yum 任务是安装最新的可用软件包,还是仅确保软件包存在。默认操作是确保安装最新的软件包。可以通过将
barbican_package_state设置为present来更改执行的操作,以仅确保软件包存在。
os_designate 角色现在支持配置 apt/yum 任务是安装最新的可用软件包,还是仅确保软件包存在。默认操作是确保安装最新的软件包。可以通过将
designate_package_state设置为present来更改执行的操作,以仅确保软件包存在。
现在可以使用
openstack_host_environment_path列表变量设置远程系统上配置的 PATH 环境变量。
部署者现在可以定义变量
cinder_qos_specs以创建 qos 规范并将这些规范分配给所需的 cinder 卷类型。
RabbitMQ 服务器现在可以从不同的方法安装:deb 文件(默认)、标准仓库软件包和外部仓库。当前行为未更改。请定义
rabbitmq_install_method: distro以使用您的发行版提供的软件包,或rabbitmq_install_method: external_repo以使用存储在外部仓库中的软件包。如果使用external_repo,则该过程将从 packagecloud.io 托管的软件包安装 RabbitMQ,RabbitMQ 推荐使用这些软件包。
Red Hat Enterprise Linux (RHEL) 7 STIG 内容现在默认部署。部署者可以通过设置以下 Ansible 变量继续使用 RHEL 7 STIG 内容
stig_version: rhel6
已添加
swift_rsync_reverse_lookup选项。此设置将处理 rsync 是否对客户端 IP 地址执行反向查找,并且默认值为False。我们建议将此选项保留为False,除非为每个 swift 主机的复制地址存在 DNS 或主机条目。
可以使用
security_host_group变量过滤安全加固 playbook 的主机目标。
在使用 pypy python 解释器时,您可以配置 pypy 的垃圾收集 (gc) 设置。使用
swift_pypy_gc_min变量设置最小 GC 值。只有当内存大小高于此值时才会发生 GC。使用swift_pypy_gc_max变量设置最大 GC 值。这是 pypy 的最大内存堆大小。默认情况下未定义这两个变量,并且仅在定义了这些值并且将swift_pypy_enabled设置为True时才会使用它们。
现在可以指定 Swift tempauth 用户。可以将
swift_tempauth_users变量定义为 tempauth 用户的列表及其权限。您仍然需要使用swift_middleware_list变量指定适当的 Swift 中间件,才能利用 tempauth。
默认情况下,Swift
versioned_writes中间件已添加到管道中。此外,中间件配置中的allow_versioned_writes设置设置为True。这遵循 Swift 默认设置,并启用X-History-Location元数据 Header 的使用。
添加了对 horizon trove-ui dashboard 的支持。如果定义了任何 trove 主机,则会自动启用该 dashboard。
Trove dashboard 在 Horizon 中可用。部署者可以通过设置以下 Ansible 变量来启用该面板
horizon_enable_trove_ui: True
可以配置变量
trove_conductor_workers以定义 trove conductor 服务的 worker 数量。默认值为机器上可用 vCPU 数量的一半,上限值为 16。
添加了新的变量
tempest_volume_backend_names并更新了 templates/tempest.conf.j2,以将backend_names指向此变量
os_barbican 角色现在支持在 Ubuntu 16.04 上使用 SystemD 进行部署。
已知问题¶
变量
haproxy_keepalived_(internal|external)_cidr现在设置为默认值169.254.(2|1).1/24。这是为了防止 Ansible 未定义变量警告。部署者必须为使用多个 haproxy 节点的 haproxy 与 keepalived 环境设置这些变量的值。
升级说明¶
全局覆盖
cinder_nfs_client已被替换为完全支持通过 cinder_backends 节配置多后端。
Designate pools.yaml 文件现在可以通过 designate_pools_yaml 属性生成,如果需要的话。此功能由 designate_use_pools_yaml_attr 属性切换。将来,此行为可能会成为默认设置,并且 designate_pools_yaml 可能会成为必需变量。
galera_client 角色现在安装 MariaDB 客户端版本 10.1。
对于使用 APT 包管理器的系统,MariaDB 仓库的 sources 文件现在具有一致的名称“MariaDB.list”。
galera_server 角色现在安装 MariaDB 服务器版本 10.1。
对于使用 APT 包管理器的系统,MariaDB 和 Percona 仓库的 sources 文件现在具有一致的名称“MariaDB.list”和“Percona.list”。
变量
galera_mariadb_apt_server_package和galera_mariadb_yum_server_package已重命名为galera_mariadb_server_package。
变量
galera_apt_repo_url和galera_yum_repo_url已重命名为galera_repo_url。
Ceph 的最新稳定版本 Jewel 现在用作默认客户端版本,因为 Hammer 已计划于 2016 年 11 月达到 EOL。
用于生成
/etc/openstack-release文件的变量已更改,以便根据其用途提高命名空间的一致性。openstack_code_name–>openstack_distrib_code_nameopenstack_release–>openstack_distrib_release请注意,如果设置了变量
openstack_release,则openstack_distrib_release的值将从该变量获取。
变量
neutron_dhcp_domain已重命名为neutron_dns_domain。
nova-cert 服务已被弃用,在 Ocata 版本中标记为删除,并且将不再由 os_nova 角色部署。
Designate 及其依赖的 pip 包的安装现在仅在 Python 虚拟环境中进行。已删除变量
designate_venv_enabled、designate_venv_bin、designate_venv_etc_dir和designate_non_venv_etc_dir。
os_barbican 角色始终检查执行时是否安装了最新的软件包。如果部署者希望更改检查以仅验证软件包是否存在,则应将选项
barbican_package_state设置为present。
os_designate 角色始终检查执行时是否安装了最新的软件包。如果部署者希望更改检查以仅验证软件包是否存在,则应将选项
designate_package_state设置为present。
安全角色将接受已安装的软件包的当前版本,而不是尝试更新它。这减少了安全角色后续运行中对系统进行意外更改的可能性。部署者仍然可以将
security_package_state设置为latest,以确保安全角色安装的所有软件包都是最新的。
已从 OpenStack-Ansible 的插件中删除
glance库。应使用上游 Ansible 模块来管理 OpenStack 镜像资源。
变量
proxy_env_url现在被 apt-cacher-ng jinja2 模板用于在需要时设置 HTTP/HTTPS 代理。
变量 gnocchi_archive_policies 和 gnocchi_archive_policy_rules 从未在角色中得到完全支持,因此无法实现预期目的。已删除对它们的任务引用,并且执行 gnocchi 操作的库也已删除。这也消除了在虚拟环境外部安装 gnocchi 客户端的需求。
以下密钥不再被 OpenStack-Ansible 使用,可以从 user_secrets.yml 中删除
container_openstack_password
keystone_auth_admin_token
cinder_v2_service_password
nova_ec2_service_password
nova_v3_service_password
nova_v21_service_password
nova_s3_service_password
swift_container_mysql_password
变量
tempest_requirements_git_repo和tempest_requirements_git_install_branch已被移除,转而使用变量pip_install_upper_constraints使用上约束文件的 URL/路径。
变量
horizon_requirements_git_repo和horizon_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
swift_requirements_git_repo和swift_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
ironic_requirements_git_repo和ironic_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
neutron_requirements_git_repo和neutron_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
heat_requirements_git_repo和heat_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
magnum_requirements_git_repo和magnum_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
sahara_requirements_git_repo和sahara_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
cinder_requirements_git_repo和cinder_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
trove_requirements_git_repo和trove_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
gnocchi_requirements_git_repo和gnocchi_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
glance_requirements_git_repo和glance_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
keystone_requirements_git_repo和keystone_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
aodh_requirements_git_repo和aodh_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
barbican_requirements_git_repo和barbican_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
nova_requirements_git_repo和nova_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
nova_lxd_requirements_git_repo和nova_lxd_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
rally_requirements_git_repo和rally_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
变量
ceilometer_requirements_git_repo和ceilometer_requirements_git_install_branch已被删除,转而使用变量pip_install_upper_constraints指定 upper-constraints 文件的 URL/路径。
部署者应查看
defaults/main.yml中的新的 RHEL 7 STIG 变量,以提供 Ansible 任务的自定义配置。
rsync 的默认行为,即执行反向查找,已更改为
False。可以通过将swift_rsync_reverse_lookup变量设置为True来将其设置为True。
已从代码库中删除对 Ubuntu Trusty (14.04) 的支持的功能。
Gnocchi 服务端点变量的命名不正确。已重命名变量,使其与其他角色保持一致。
变量
gnocchi_required_pip_packages名称不正确,已重命名为gnocchi_requires_pip_packages,以与所有角色的标准保持一致。
cinder项目移除了volume_clear选项的shred值。os_cinderOpenStack-Ansible 角色的默认值已更改为zero。
弃用说明¶
用于设置
os_ceilometer角色中source_sample_interval的变量已弃用,将在 Queen 周期中删除。在 Queen 之后覆盖这些变量,请使用ceilometer_pipeline_yaml_overrides文件。
变量
ceilometer_gnocci_resources_yaml_overrides已弃用,计划在 Pike 周期中删除。现在应该使用正确拼写的变量来代替ceilometer_gnocchi_resources_yaml_overrides。
gnocchi_keystone_auth已弃用,将在Queen周期中删除。将gnocchi_auth_mode设置为keystone将达到相同的效果。
Red Hat Enterprise Linux 6 STIG 内容已弃用。RHEL 6 STIG 的任务和变量将在未来的版本中删除。
由于
backend1_name和backend2_name已从 tempest 的提交 27905cc (合并于 2016/04/26) 中移除,因此移除了tempest_volume_backend1_name和tempest_volume_backend1_name。
错误修复¶
当任务在执行 playbook 时失败时,Ansible 的默认行为是针对该主机失败,而不执行任何通知器。这可能导致配置更改被执行,但服务未被重启。OpenStack-Ansible 现在默认将
ANSIBLE_FORCE_HANDLERS设置为True,以确保在停止 playbook 执行之前尝试执行所有已通知的处理器。
LXC 容器现在能够在所有网络接口上使用固定的 MAC 地址,只要将选项 lxc_container_fixed_mac 设置为 true。此更改将有助于解决一个长期存在的问题,即网络密集型服务(例如 neutron 和 rabbitmq)可能会进入混乱状态很长时间,并且需要滚动重启或内部系统重置才能恢复。
‘container_cidr’ 键已恢复到 openstack_inventory.json。删除已删除的全局覆盖键的修复错误地删除了 ‘container_cidr’ 键,因为下游消费者正在使用它,并且无法通过库存文件中的其他信息重建它。还添加了回归测试。
默认情况下,haproxy 守护程序配置中现在禁用了 SSLv3。
正确地将客户端密钥分发到 nova 超visor,当正在部署额外的 ceph 集群时。
正确地从部署主机和超visor 中删除用于传输 ceph 客户端密钥的临时文件。
使用 systemd 的系统(例如 Ubuntu Xenial)被错误地限制为少量打开的文件。这导致 galera 重启时出现问题。部署者仍然可以使用变量
galera_file_limits(默认为 65536)来定义最大打开文件数。
即使它们没有容器,Metal 宿主机也被插入到
lxc_hosts组中 (Bug 1660996)。现在已为新配置的宿主机纠正了此问题。此外,在下一次 inventory 运行或 playbook 调用时,任何不属于lxc_hosts的宿主机都将被移除。
包含主机和其它组作为子组的组相关的错误现在会引发更具描述性的错误。有关更多详细信息,请参阅库存文档。修复了错误
将服务上的 haproxy_bind 列表用作对环境中定义的其它 VIP 的覆盖,而之前将其视为附加到其它 VIP。例如,haproxy_bind 可用于将服务绑定到内部 VIP 仅。
haproxy 守护程序现在能够在 CentOS 7 上绑定到任何端口。SELinux 布尔值
haproxy_connect_any现在设置为on。
即使更改了变量
use_percona_upstream,percona 仓库仍然存在。从现在开始,只有当部署者决定use_percona_upstream时,percona 仓库才存在。这也修复了从 Mitaka 升级后此 apt 仓库存在的错误。
NovaLink 的 URL 使用 ‘ftp’ 协议来配置 apt 密钥。这导致 apt_key 模块无法检索 NovaLink gpg 公钥文件。因此,将 URL 的协议更改为 ‘http’。有关更多信息,请参阅 bug 1637348。
apt-cacher-ng 守护程序不使用环境变量中指定的代理服务器。现在,在 apt-cacher-ng 配置文件中设置了
proxy_env_url变量中指定的代理服务器。
PowerVM 驱动程序的设置没有正确配置系统以支持客户端实例的 RMC 配置。此修复程序引入了一个 PowerVM 接口模板,该模板正确支持混合 IPV4/IPV6 部署,并添加了 PowerVM RMC 的文档。有关更多信息,请参阅 bug 1643988。
其它说明¶
XtraBackup 在 ppc64le 架构上当前为版本 2.4.5,当从仓库中拉取 deb 包时。
XtraBackup 在 amd64 架构上当前为版本 2.4.5,当从仓库中拉取 rpm/deb 包时。要从 yum/apt 仓库中拉取最新的 2.4 分支版本,请将变量
use_percona_upstream设置为True。使用 deb 包的默认行为未更改。
从现在开始,外部仓库管理(例如在 RDO/UCA 中使用)将在 pip-install 角色中完成,而不是在 repo_build 角色中。