4.6. IPv6 を使用してベアメタルをプロビジョニングするためのアンダークラウド設定
IPv6 ノードおよびインフラストラクチャーがある場合には、IPv4 ではなく IPv6 を使用するようにアンダークラウドおよびプロビジョニングネットワークを設定することができます。これにより、director は IPv6 ノードに Red Hat OpenStack Platform をプロビジョニングおよびデプロイすることができます。ただし、いくつかの考慮事項があります。
- デュアルスタック IPv4/6 は利用できません。
- tempest 検証が正しく動作しない可能性があります。
- アップグレード時に IPv4 から IPv6 に移行することはできません。
undercloud.conf
ファイルを変更して、Red Hat OpenStack Platform で IPv6 プロビジョニングを有効にします。
前提条件
- アンダークラウドの IPv6 アドレス。詳しい情報は、IPv6 Networking for the Overcloudの Configuring an IPv6 address on the undercloud を参照してください。
手順
-
undercloud.conf
ファイルを開きます。 IPv6 アドレスモードをステートレスまたはステートフルのいずれかに指定します。
[DEFAULT] ipv6_address_mode = <address_mode> ...
NIC がサポートするモードに基づいて、
<address_mode>
をdhcpv6-stateless
またはdhcpv6-stateful
に置き換えます。注記ステートフルアドレスモードを使用する場合、ファームウェア、チェーンローダー、およびオペレーティングシステムは、DHCP サーバーが追跡する ID を生成するために異なるアルゴリズムを使用する場合があります。DHCPv6 は MAC によってアドレスを追跡せず、リクエスターからの ID 値が変更されても、MAC アドレスが同じままである場合、同じアドレスを提供しません。したがって、ステートフル DHCPv6 を使用する場合は、次の手順を実行してネットワークインターフェイスを設定する必要もあります。
ステートフル DHCPv6 を使用するようにアンダークラウドを設定した場合は、ベアメタルノードに使用するネットワークインターフェイスを指定します。
[DEFAULT] ipv6_address_mode = dhcpv6-stateful ironic_enabled_network_interfaces = neutron,flat ...
ベアメタルノードのデフォルトのネットワークインターフェイスを設定します。
[DEFAULT] ... ironic_default_network_interface = neutron ...
アンダークラウドがプロビジョニングネットワーク上にルーターを作成するかどうかを指定します。
[DEFAULT] ... enable_routed_networks: <true/false> ...
-
<true/false>
をtrue
に置き換えて、ルーティングされたネットワークを有効にし、アンダークラウドがプロビジョニングネットワーク上にルーターを作成しないようにします。true
の場合、データセンタールーターはルーターアドバタイズメントを提供する必要があります。 -
<true/false>
をfalse
に置き換えて、ルーティングされたネットワークを無効にし、プロビジョニングネットワーク上にルーターを作成します。
-
ローカル IP アドレス、および SSL/TLS を介した director Admin API および Public API エンドポイントの IP アドレスを設定します。
[DEFAULT] ... local_ip = <ipv6_address> undercloud_admin_host = <ipv6_address> undercloud_public_host = <ipv6_address> ...
<ipv6_address>
をアンダークラウドの IPv6 アドレスに置き換えます。オプション: director がインスタンスの管理に使用するプロビジョニングネットワークを設定します。
[ctlplane-subnet] cidr = <ipv6_address>/<ipv6_prefix> ...
-
<ipv6_address>
を、デフォルトのプロビジョニングネットワークを使用していないときにインスタンスの管理に使用するネットワークの IPv6 アドレスに置き換えます。 -
<ipv6_prefix>
を、デフォルトのプロビジョニングネットワークを使用していないときにインスタンスの管理に使用するネットワークの IP アドレス接頭辞に置き換えます。
-
プロビジョニングノードの DHCP 割り当て範囲を設定します。
[ctlplane-subnet] cidr = <ipv6_address>/<ipv6_prefix> dhcp_start = <ipv6_address_dhcp_start> dhcp_end = <ipv6_address_dhcp_end> ...
-
<ipv6_address_dhcp_start>
を、オーバークラウドノードに使用するネットワーク範囲の開始点の IPv6 アドレスに置き換えます。 -
<ipv6_address_dhcp_end>
を、オーバークラウドノードに使用するネットワーク範囲の終わりの IPv6 アドレスに置き換えます。
-
オプション: トラフィックを External ネットワークに転送するようにゲートウェイを設定します。
[ctlplane-subnet] cidr = <ipv6_address>/<ipv6_prefix> dhcp_start = <ipv6_address_dhcp_start> dhcp_end = <ipv6_address_dhcp_end> gateway = <ipv6_gateway_address> ...
デフォルトゲートウェイを使用しない場合は、
<ipv6_gateway_address>
をゲートウェイの IPv6 アドレスに置き換えます。検査プロセス中に使用する DHCP 範囲を設定します。
[ctlplane-subnet] cidr = <ipv6_address>/<ipv6_prefix> dhcp_start = <ipv6_address_dhcp_start> dhcp_end = <ipv6_address_dhcp_end> gateway = <ipv6_gateway_address> inspection_iprange = <ipv6_address_inspection_start>,<ipv6_address_inspection_end> ...
-
<ipv6_address_inspection_start>
を、検査プロセス中に使用するネットワーク範囲の開始点の IPv6 アドレスに置き換えます。 -
<ipv6_address_inspection_end>
を、検査プロセス中に使用するネットワーク範囲の終わりの IPv6 アドレスに置き換えます。
注記この範囲は、
dhcp_start
とdhcp_end
で定義された範囲と重複することはできませんが、同じ IP サブネット内になければなりません。-
サブネットの IPv6 ネームサーバーを設定します。
[ctlplane-subnet] cidr = <ipv6_address>/<ipv6_prefix> dhcp_start = <ipv6_address_dhcp_start> dhcp_end = <ipv6_address_dhcp_end> gateway = <ipv6_gateway_address> inspection_iprange = <ipv6_address_inspection_start>,<ipv6_address_inspection_end> dns_nameservers = <ipv6_dns>
<ipv6_dns>
をサブネットに固有の DNS ネームサーバーに置き換えます。