Más contenido relacionado
La actualidad más candente (20)
Similar a 【Brocade OpenStack ソリューション】Vyatta vRouter プラグイン (20)
【Brocade OpenStack ソリューション】Vyatta vRouter プラグイン
- 1. Vyatta vRouter プラグイン
Karthik Natarajan
シニア・スタッフ・ソフトウェア・エンジニア
2014年11月
© 2014 Brocade Communications Systems, Inc. CONFIDENTIAL—For Internal Use Only 1
- 3. 今回の内容
• OpenStack L3プラグイン
• 概要
• デプロイメントの手順
• OpenStackファイアウォール・プラグイン
• 概要
• デプロイメントの手順
• デモ
© 2014 Brocade Communications Systems, Inc. 3
- 4. OpenStack L3プラグイン
© 2014 Brocade Communications Systems, Inc. 4
Vyatta vRouterをクラウド環境に自動展開
L3プラグインによるテナント・ルータを提供
外部ゲートウェイ機能
VMのフローティングIPをサポート
SNAT/DNATルール自動機能
(外部ゲートウェイ)
Horizon
HEAT
ストレージネットワーキングコンピュート
Nova Neutron
Neutron
L3 Plugin
Vyatta
テナントルータ
- 7. Vyatta L3プラグインのインストール手順
• プラグインを展開 “tar –xvf icehouse_vyatta_l3_daisy_plugin.tar.gz”
• プラグインと構成ファイルを所定の場所にコピー
• sudo cp –r ./vyatta_l3_plugin/plugin/* /usr/lib/python2.7/dist-packages/neutron/plugins/
• sudo cp –r ./vyatta_l3_plugin/conf/* /etc/neutron/plugins/
• Novaのパッチ・ファイルを所定の場所にコピー
• sudo cp $VYATTA_UNZIP_DIR/nova_patch/api.py /usr/lib/python2.7/dist-packages/nova/network/neutronv2/
• Neutronのパッチ・ファイルを所定の場所にコピー
• sudo cp $VYATTA_UNZIP_DIR/neutron_patch/iptables_firewall.py /usr/lib/python2.7/dist-
packages/neutron/agent/linux/
• sudo cp $VYATTA_UNZIP_DIR/neutron_patch/db_base_plugin_v2.py /usr/lib/python2.7/dist-packages/neutron/db/
ステップ1:TARファイルの展開とコピー
© 2014 Brocade Communications Systems, Inc. 7
- 8. Vyatta L3プラグインのインストール手順
• Open vSwitchブリッジを作成(インテグレーション、管理/外部ネットワーク)
• “sudo ovs-vsctl add-br br-int”
• “sudo ovs-vsctl add-br br-mng”
• “sudo ovs-vsctl add-br br-ex”
• ネットワーク・インタフェースを“br-ex”ブリッジにポートとして追加
注:インタフェースのIPアドレスは、削除しておく
• “sudo ip addr del <IP Address> dev <ethX>”
• “sudo ovs-vsctl add-port br-ex <ethX>”
ステップ2:Open vSWitchブリッジのセットアップ
© 2014 Brocade Communications Systems, Inc. 8
- 10. Vyatta L3プラグインのインストール手順
• ML2構成ファイル/etc/neutron/plugins/ml2/ml2_conf.iniを編集して、
管理/外部ネットワークと、それぞれのOVSブリッジを設定
• [ml2]
• tenant_network_types = local,flat,vlan,gre,vxlan
• type_drivers = local,flat,vlan,gre,vxlan
• mechanism_drivers = openvswitch,linuxbridge
• flat_networks = mng,ex
• [ovs]
• bridge_mappings = mng:br-mng,ext:br-ex
ステップ4:ML2の構成
© 2014 Brocade Communications Systems, Inc. 10
- 11. Vyatta L3プラグインのインストール手順
• admin tenantクレデンシャルを使って、Glanceのリポジトリにイメージをインポート
• “glance image-create --name "VyattavRouter" --is-public true --disk-format qcow2 --
file ./vyatta_l3_plugin/image/vyatta_vrouter.qcow2 –container-format bare”
• 注:コマンドの出力するイメージIDを後からVyattaプラグインの
構成ファイルvrouter.iniに使用
ステップ5:Vyatta Routerイメージのインポート
© 2014 Brocade Communications Systems, Inc. 11
- 12. Vyatta L3プラグインのインストール手順
• admin tenantクレデンシャルを使って、タイプflatで管理ネットワークと
外部ネットワークを作成
• neutron net-create management --provider:network_type flat --provider:physical_network mng
• neutron subnet-create management --no-gateway 192.168.0.0/16 --allocation-pool
start=192.168.0.128,end=192.168.254.254
• neutron net-create external --provider:network_type flat --provider:physical_network ex --router:external=True
• neutron subnet-create external 10.18.160.0/24 --allocation-pool start=10.18.160.220,end=10.18.160.226 --gateway
10.18.160.1 --disable-dhcp
• 注:コマンドの出力する管理ネットワークのIDを、後からVyattaプラグインの
構成ファイルvrouter.iniに使用
ステップ6:管理/外部ネットワークの作成
© 2014 Brocade Communications Systems, Inc. 12
- 13. Vyatta L3プラグインのインストール手順
• vrouter.iniファイルに、該当の値を設定
• [vrouter]
• tenant_admin_name = $ADMIN_USER
• tenant_admin_password = $ADMIN_USER_PWD
• keystone_url = http://$HOST_IP:5000/v2.0
• flavor = 2
• tenant_id = $TENANT_ID
• management_network_id = $MGMT_NET_ID
• image_id = $VROUTER_IMAGE_ID
ステップ7:VYATTAプラグインの構成
© 2014 Brocade Communications Systems, Inc. 13
- 14. Vyatta L3プラグインのインストール手順
• セキュリティ・グループとルールを作成して、ポートに認めるトラフィックの
種類と向きを指定できる
• VM間に、ICMP、TCP、UDPなどのプロトコルのトラフィックを、許可する
セキュリティ・グループ・ルールを作成
• neutron security-group-rule-create --tenant-id <TENANT_ID> --direction egress --ethertype IPv4 --remote-ip-prefix
0.0.0.0/0 --protocol icmp <SEC_GRP_ID>
• neutron security-group-rule-create --tenant-id <TENANT_ID> --direction ingress --ethertype IPv4 --remote-ip-prefix
0.0.0.0/0 --protocol icmp <SEC_GRP_ID>
ステップ8:セキュリティ・グループとルールの作成
© 2014 Brocade Communications Systems, Inc. 14
- 15. OpenStackテナント・ファイアウォール
© 2014 Brocade Communications Systems, Inc. 15
境界ファイアウォールのプラグイン
信頼できるゾーンとそうでないゾーンとの
境に配置
テナントあたり1個のファイアウォール
ファイアウォール・ルールの展開
Horizon
HEAT
ストレージネットワーキングコンピュート
Nova Neutron
Neutron
L3 Plugin
Vyatta
ファイアウォール
- 18. Vyattaファイアウォール・プラグインのインストール手順
• プラグインを展開 “tar –xvf icehouse_vyatta_fw_daisy_plugin.tar.gz”
• プラグイン・ファイルを、所定の場所にコピー
• sudo cp –r ./vyatta_fw_plugin/agents/* /usr/lib/python2.7/dist-packages/neutron/services/firewall/agents/
• sudo cp –r ./vyatta_fw_plugin/drivers/* /usr/lib/python2.7/dist-packages/neutron/services/firewall/drivers/
• sudo cp ./vyatta_fw_plugin/vyatta-l3-agent /usr/local/bin
• sudo cp ./vyatta_fw_plugin/fwaas_driver.ini /etc/neutron
ステップ1:TARファイルの展開とコピー
© 2014 Brocade Communications Systems, Inc. 18
- 22. FWaaSの構成例
• ファイアウォール・ルールを作成
• neutron firewall-rule-create –-name MyRule ---protocol icmp –action deny
• # 内部ネットワークから外部ネットワークへのpingをブロック
• ファイアウォール・ポリシーを作成してルールを収容
• neutron firewall-policy-create MyPolicy
• neutron firewall-policy-insert-rule MyPolicy MyRule
• ファイアウォールを作成
• neutron firewall-create –name MyFirewall MyPolicy
© 2014 Brocade Communications Systems, Inc. 22
- 24. THANK YOU
24© 2014 Brocade Communications Systems, Inc.
本件に関するお問合せ
https://www.brocadejapan.com/form/contact
ブロケード コミュニケーションズ システムズ株式会社