2.3. VXLAN OVS デプロイメントから移行するための MTU 削減
移行前の OVS デプロイメントで VXLAN トンネリングプロトコルを使用している場合は、Geneve トンネリングプロトコルを使用する OVN に移行する前に、ネットワーク最大伝送単位 (MTU) を 8 バイト削減する必要がある場合があります。
移行前の専用のメンテナンス期間にこの手順を実行することを検討してください。
VXLAN パケットは、ヘッダーコンテンツ用に 50 バイトのデータを予約します。これには、42 バイトの標準外部ヘッダーと 8 バイトの VXLAN ヘッダーが含まれます。物理ネットワークが 1500 バイトの標準イーサネット MTU を使用している場合、VXLAN ネットワークの MTU を 1450 に設定すると、トラフィックは断片化せずに通過できます。
Geneve パケットは、ヘッダーコンテンツ用に 58 バイトのデータを予約します。これには、42 バイトの標準外部ヘッダーと 16 バイトの Geneve ヘッダーが含まれます。したがって、物理ネットワークの MTU が 1508 未満の場合は、断片化の必要性を避けるために、移行前の OpenStack VXLAN ネットワーク上の MTU を 8 バイト削減する必要があります。
物理ネットワークが断片化せずに OpenStack VXLAN ネットワーク MTU より少なくとも 58 バイト多く送信できる場合は、この手順をスキップして 「ML2 メカニズムドライバーの OVS から OVN への移行」 の手順に進んでください。たとえば、物理ネットワークが 9000 バイトのジャンボフレーム用に設定されており、オープンスタックネットワークの MTU が 8942 以下の場合は、この手順を省略できます。
RHOSP OVN 移行ツールは、VXLAN および GRE オーバークラウドネットワーク上の MTU を自動的に 8 バイト下げます。次の手順では、ツールを使用して次のことを行います。
- DHCP T1 タイマーを 30 秒に短縮して、DHCP 更新の頻度を増やします。
- 既存の VXLAN ネットワーク上の MTU サイズを 8 バイト削減します。
デプロイですべての VM インスタンスの設定に DHCP を使用しない場合は、除外されたインスタンスの MTU を手動で減らす必要があります。
前提条件
- 「OVN メカニズムドライバーを移行するための環境の準備」 の手順を完了している。
- 「OVS から OVN への ML2 メカニズムドライバーの移行用コンテナーイメージの準備」 の手順を完了している。
- 移行前のデプロイメントは、VXLAN を備えた Red Hat OpenStack Platform (RHOSP) 17.1 以降である。
手順
ovn_migration.sh `reduce-dhcp-t1
を実行します。これにより、DHCP エージェントが実行しているすべてのノードで、/var/lib/config-data/puppet-generated/neutron/etc/neutron/dhcp_agent.ini 内のdhcp_renewal_time
を設定する内部 neutron DHCP サーバーの T1 パラメーターが短くなります。$ ovn_migration.sh reduce-dhcp-t1 | sudo tee -a /var/log/ovn_migration_output.txt
T1 パラメーターが既存の仮想マシンに伝播されていることを確認します。プロセスに最大 4 時間かかる場合があります。
- コンピュートノードのいずれかにログインします。
プロジェクトネットワークに接続された仮想マシンタップのいずれかで
tcpdump`
を実行します。T1 の伝播が成功すると、リクエストは約 30 秒ごとに発生することが予想されます。
[heat-admin@overcloud-novacompute-0 ~]$ sudo tcpdump -i tap52e872c2-e6 port 67 or port 68 -n tcpdump: verbose output suppressed, use -v or -vv for full protocol decode listening on tap52e872c2-e6, link-type EN10MB (Ethernet), capture size 262144 bytes 13:17:28.954675 IP 192.168.99.5.bootpc > 192.168.99.3.bootps: BOOTP/DHCP, Request from fa:16:3e:6b:41:3d, length 300 13:17:28.961321 IP 192.168.99.3.bootps > 192.168.99.5.bootpc: BOOTP/DHCP, Reply, length 355 13:17:56.241156 IP 192.168.99.5.bootpc > 192.168.99.3.bootps: BOOTP/DHCP, Request from fa:16:3e:6b:41:3d, length 30013:17:56.249899 IP 192.168.99.3.bootps > 192.168.99.5.bootpc: BOOTP/DHCP, Reply, length 355
注記cirros 仮想マシンでは、この検証はできません。cirros
udhcpc
実装は DHCP オプション 58 (T1) に応答しません。完全な Linux 仮想マシンに属するポートで、この検証を試みます。Red Hat では、Windows や Linux ディストリビューションのバリアントなど、ワークロードに含まれるさまざまなオペレーティングシステムをすべて確認することを推奨します。
- DHCP の T1 パラメーターへの変更を反映するように仮想マシンインスタンスが更新されていない場合は、再起動します。
移行前の VXLAN ネットワークの MTU を減らします。
$ ovn_migration.sh reduce-mtu | sudo tee -a /var/log/ovn_migration_output.txt
このステップでは、ネットワークごとに MTU を減らし、adapted_mtu で完了したネットワークにタグを付けます。このツールは、VXLAN ネットワークでのみ動作します。デプロイメントに VLAN プロジェクトネットワークしかない場合、この手順では値は変更されません。
VXLAN プロジェクトネットワーク上に静的 IP が割り当てられているインスタンスがある場合は、インスタンスの MTU を手動で 8 バイト減らします。たとえば、VXLAN ベースの MTU が 1450 の場合は、これを 1442 に変更します。
注記このステップは、VXLAN プロジェクトネットワークに静的 IP の割り当てと MTU 設定を手動で提供している場合にのみ行います。デフォルトでは、DHCP が IP 割り当てと MTU 設定を提供します。
- 「ML2 メカニズムドライバーの OVS から OVN への移行」 に進みます。