![James Slagle](/assets/img/avatar_default.png)
Adds the external_resource_vip_id property, which can be used to set an external_id for the port resource for the network VIP. Since the same template resource, port.network.j2.yaml is used for both VIP and normal ports on a network, we can't simply add jinja to that template that conditionally adds the external_id attribute because we don't know during the jinja2 phase if the template is for a VIP or not. Instead, we need to map the VIP resources to an entirely new template resource (external_resource_port.network.j2.yaml) so that we can set the external_id attribute just for the VIP ports. Change-Id: I27d3eeb11277004b00aa4d6a66014d5c71081c26 implements: blueprint split-controlplane-templates
72 lines
2.9 KiB
YAML
72 lines
2.9 KiB
YAML
# This file allows IPv6 deployment on tenant networks as well.
|
|
# This should only be used for new deployments and not for upgrade
|
|
# or update.
|
|
{%- set primary_role = [roles[0]] -%}
|
|
{%- for role in roles -%}
|
|
{%- if 'primary' in role.tags and 'controller' in role.tags -%}
|
|
{%- set _ = primary_role.pop() -%}
|
|
{%- set _ = primary_role.append(role) -%}
|
|
{%- endif -%}
|
|
{%- endfor -%}
|
|
{%- set primary_role_name = primary_role[0].name -%}
|
|
# NOTE: This template is now deprecated, and is only included for compatibility
|
|
# when upgrading a deployment where this template was originally used. For new
|
|
# deployments, set "ipv6: true" on desired networks in network_data.yaml, and
|
|
# include network-isolation.yaml.
|
|
#
|
|
# Enable the creation of Neutron networks for isolated Overcloud
|
|
# traffic and configure each role to assign ports (related
|
|
# to that role) on these networks.
|
|
# primary role is: {{primary_role_name}}
|
|
resource_registry:
|
|
# networks as defined in network_data.yaml
|
|
{%- for network in networks if network.enabled|default(true) %}
|
|
OS::TripleO::Network::{{network.name}}: ../network/{{network.name_lower|default(network.name.lower())}}_v6.yaml
|
|
{%- endfor %}
|
|
|
|
# Port assignments for the VIPs
|
|
{%- for network in networks if network.vip and network.enabled|default(true) %}
|
|
{%- if network.external_resource_vip_id|default('') %}
|
|
OS::TripleO::Network::Ports::{{network.name}}VipPort: ../network/ports/external_resource_{{network.name_lower|default(network.name.lower())}}_v6.yaml
|
|
{%- else %}
|
|
OS::TripleO::Network::Ports::{{network.name}}VipPort: ../network/ports/{{network.name_lower|default(network.name.lower())}}_v6.yaml
|
|
{%- endif %}
|
|
{%- endfor %}
|
|
|
|
OS::TripleO::Network::Ports::RedisVipPort: ../network/ports/vip_v6.yaml
|
|
|
|
# Port assignments by role, edit role definition to assign networks to roles.
|
|
{%- for role in roles %}
|
|
# Port assignments for the {{role.name}}
|
|
{%- for network in networks %}
|
|
{%- if network.name in role.networks|default([]) and network.enabled|default(true) %}
|
|
OS::TripleO::{{role.name}}::Ports::{{network.name}}Port: ../network/ports/{{network.name_lower|default(network.name.lower())}}_v6.yaml
|
|
{%- endif %}
|
|
{%- endfor %}
|
|
{% endfor %}
|
|
|
|
|
|
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
|
|
# Enable IPv6 environment for OpenDaylight
|
|
OpenDaylightEnableIPv6Deployment: True
|
|
# Specify Tunnel endpoints to be IPv6
|
|
NeutronOverlayIPVersion: 6
|