7.10. ML2/OVN デプロイメントでのマルチキャストの有効化
マルチキャストトラフィックをサポートするには、マルチキャストトラフィックがマルチキャストグループ内の仮想マシン (VM) インスタンスに到達できるように、デプロイメントのセキュリティー設定を変更します。マルチキャストトラフィックのフラッディングを防ぐには、IGMP スヌーピングを有効にします。
マルチキャストスヌーピングの設定をテストして十分に理解してから、設定を実稼働環境に適用してください。設定が間違っていると、マルチキャストが中断したり、誤ったネットワーク動作を引き起こしたりする可能性があります。
前提条件
- ML2/OVN メカニズムドライバーを使用する OpenStack デプロイメント
手順
セキュリティーを設定し、適切な仮想マシンインスタンスへのマルチキャストトラフィックを許可します。たとえば、セキュリティーグループルールのペアを作成し、IGMP クエリーアーからの IGMP トラフィックが仮想マシンインスタンスに到達/発進するのを許可し、3 番目のルールでマルチキャストトラフィックを許可します。
例
セキュリティーグループ mySG により、IGMP トラフィックが仮想マシンインスタンスに到達/発進するのを許可します。
openstack security group rule create --protocol igmp --ingress mySG openstack security group rule create --protocol igmp --egress mySG
openstack security group rule create --protocol igmp --ingress mySG openstack security group rule create --protocol igmp --egress mySG
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 別のルールにより、マルチキャストトラフィックが仮想マシンインスタンスに到達するのを許可します。
openstack security group rule create --protocol udp mySG
openstack security group rule create --protocol udp mySG
Copy to Clipboard Copied! Toggle word wrap Toggle overflow セキュリティーグループルールを設定する代わりに、オペレーターはネットワーク上のポートセキュリティーを選択的に無効にすることもできます。ポートセキュリティーを無効にする場合は、関連するセキュリティーリスクについて検討し、対応を計画してください。
アンダークラウドノードの環境ファイルで heat パラメーター
NeutronEnableIgmpSnooping: True
を設定します。たとえば、以下の行を ovn-extras.yaml に追加します。例
parameter_defaults: NeutronEnableIgmpSnooping: True
parameter_defaults: NeutronEnableIgmpSnooping: True
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この環境ファイルをご自分の環境に該当するその他の環境ファイルと共に
openstack overcloud deploy
コマンドに追加して、オーバークラウドをデプロイします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow <other_overcloud_environment_files>
を既存のデプロイメントに含まれる環境ファイルの一覧に置き換えます。
検証手順
マルチキャストスヌーピングが有効であることを確認します。ノースバウンドデータベースの Logical_Switch テーブルを一覧表示します。
ovn-nbctl list Logical_Switch
$ ovn-nbctl list Logical_Switch
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
_uuid : d6a2fbcd-aaa4-4b9e-8274-184238d66a15 other_config : {mcast_flood_unregistered="false", mcast_snoop="true"} ...
_uuid : d6a2fbcd-aaa4-4b9e-8274-184238d66a15 other_config : {mcast_flood_unregistered="false", mcast_snoop="true"} ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Networking サービス (neutron) の igmp_snooping_enable 設定は、OVN ノースバウンドデータベースの Logical_Switch テーブルの other_config 列で設定される mcast_snoop オプションに変換されます。mcast_flood_unregistered は常に false である点に注意してください。
IGMP グループを表示します。
ovn-sbctl list IGMP_group
$ ovn-sbctl list IGMP_group
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow