2.4. 配置 IPv6 网络
默认情况下,overcloud 使用互联网协议版本 4 (IPv4) 来配置服务端点。但是,overcloud 还支持互联网协议版本 6 (IPv6)端点,这对支持 IPv6 基础架构的组织很有用。director 包含一组环境文件,可用于创建基于 IPv6 的 Overcloud。
有关在 Overcloud 中配置 IPv6 的更多信息,请参阅 overcloud 专用配置 IPv6 网络指南。
2.4.1. 配置可组合 IPv6 网络
先决条件
- 成功安装 undercloud。如需更多信息,请参阅安装 director。
- 您的网络支持 IPv6 原生 VLAN 和 IPv4 原生 VLAN。
流程
复制默认
network_data
文件:$ cp /usr/share/openstack-tripleo-heat-templates/network_data.yaml /home/stack/.
编辑
network_data.yaml
文件的本地副本,并修改参数以满足您的 IPv6 网络要求。例如,External 网络包含以下默认网络详情:- name: External vip: true name_lower: external vlan: 10 ipv6: true ipv6_subnet: '2001:db8:fd00:1000::/64' ipv6_allocation_pools: [{'start': '2001:db8:fd00:1000::10', 'end': '2001:db8:fd00:1000:ffff:ffff:ffff:fffe'}] gateway_ipv6: '2001:db8:fd00:1000::1'
-
name
是唯一的强制值,但您也可以使用name_lower
规范化名称以提高可读性。例如,将InternalApi
更改为internal_api
。 -
VIP
: true
在新网络上创建一个虚拟 IP 地址(VIP),并将其余参数设置新网络的默认值。 -
ipv6
定义是否启用 IPv6。 -
ipv6_subnet
和ipv6_allocation_pools
,并且gateway_ip6
为网络设置默认 IPv6 子网和 IP 范围。
-
-
使用
-n
选项包括带有部署的自定义network_data
文件。如果没有-n
选项,部署命令将使用默认网络详细信息。
2.4.2. overcloud 中的 IPv6 网络隔离
默认情况下,overcloud 将服务分配给 provisioning 网络。但是,director 可以将 overcloud 网络流量划分为隔离的网络。这些网络在部署命令行中包含的文件中定义,默认名为 network_data.yaml
。
当服务使用 IPv6 地址侦听网络时,您必须提供参数默认值,以指示该服务在 IPv6 网络上运行。每个服务所运行的网络都由文件 network/service_net_map.yaml
定义,可通过为各个 ServiceNetMap
条目声明参数默认值来覆盖。这些服务需要在环境文件中设置参数:
parameter_defaults: # Enable IPv6 for Ceph. CephIPv6: True # Enable IPv6 for Corosync. This is required when Corosync is using an IPv6 IP in the cluster. CorosyncIPv6: True # Enable IPv6 for MongoDB. This is required when MongoDB is using an IPv6 IP. MongoDbIPv6: True # Enable various IPv6 features in Nova. NovaIPv6: True # Enable IPv6 environment for RabbitMQ. RabbitIPv6: True # Enable IPv6 environment for Memcached. MemcachedIPv6: True # Enable IPv6 environment for MySQL. MysqlIPv6: True # Enable IPv6 environment for Manila ManilaIPv6: True # Enable IPv6 environment for Redis. RedisIPv6: True
核心 heat 模板中的 environments/network-isolation.j2.yaml
文件是一个 Jinja2 文件,该文件在可组合网络文件中为每个 IPv6 网络定义所有端口和 VIP。当呈现时,它会在带有完整资源 registry 的同一位置生成一个 network-isolation.yaml
文件。
2.4.3. 配置 IPv6 隔离网络
默认的 heat 模板集合包含用于默认网络配置的基于 Jinja2 的环境文件。此文件是 environments/network-environment.j2.yaml
。当使用我们的 network_data
文件呈现时,它会生成名为 network-environment.yaml
的标准 YAML 文件。此文件的某些部分可能需要覆盖。
先决条件
- 成功安装 undercloud。如需更多信息,请参阅安装 director。
- 您的网络支持 IPv6 原生 VLAN 和 IPv4 原生 VLAN。
流程
创建一个自定义环境文件(
/home/stack/network-environment.yaml
),详情如下:parameter_defaults: ControlPlaneDefaultRoute: 192.0.2.1 ControlPlaneSubnetCidr: "24"
parameter_defaults
部分包含对在 IPv4 上保留的某些服务的自定义。
2.4.4. IPv6 网络接口模板
overcloud 需要一组网络接口模板。director 包含一组基于 Jinja2 的 Heat 模板,它根据您的 network_data
文件呈现:
NIC 目录 | 描述 | 环境文件 |
---|---|---|
|
将 control plane 和 VLAN 附加到默认 Open vSwitch 网桥的单 NIC ( |
|
|
带有 control plane 和 VLAN 附加到默认 Linux 网桥的单个 NIC ( |
|
|
附加到 |
|
|
附加到 |
|