OpenStack Neutronの「中」の動きを追いかけよう:いま覚えておくべきOpenStack Neutronの基本(2)(8/8 ページ)
OpenStack Neutronはどのようにしてネットワークを構築しているのでしょうか? 今回は、順を追ってその挙動を確かめていきます。
さすがはMaiaちゃんや〜! いいところに気付いたね。qrouterはテナントごとにできるけれどfip namespaceは共通なんだ
テナントがたくさんできると、この緑色のveth pairがたくさんできるということね。あれ? そういえば、なくなったはずのveth pairが復活しているような……?
この169.254.31.28と169.254.31.29は、31ビットマスクの1対1ネットワーク(point-to-point network)なんだ。veth pairが置き換わったのはパフォーマンスに問題があったことが理由らしいんだけれど、ここはわざわざブリッジを介して多段にするよりveth pairの方がシンプルな実装になると判断したんじゃないかな?
qrouterに付いている133.1.1.2がフローティングIPだね……。ということは、qrouterでSNATとDNATをしているのかな?
うん。そこはIcehouse以前のOpenStackの実装と同じだね
インスタンスからのパケットは、やっぱりrule tableで転送されるのかな?
SNATは、さっきは「from 10.0.0.1」のruleで転送されていたんだけど、今度はインスタンスを特定して「from 10.0.0.3」のruleに該当していて、169.254.31.29へ行けといわれてるね(2)
root@compute# netns qrouter-674d27ea-04b6-4b3e-bfcd-7f60c4fc91e4 ip rule ls 0: from all lookup local 32766: from all lookup main 32767: from all lookup default 32768: from 10.0.0.3 lookup 16 167772673: from 10.0.0.1/24 lookup 167772673 root@compute# netns qrouter-674d27ea-04b6-4b3e-bfcd-7f60c4fc91e4 ip rule show table 16 default via 169.254.31.29 dev rfp-73057a4f-f
なるほど。「フローティングIPは特定のインスタンスと対応付けするから」ってことだね
ここまでのまとめ
今回は、Neutronがネットワークを構成していく様子をトレースしてみました。前半、二人の操作で順を追って紹介してきましたが、それぞれの設定を見ると、Neutronの動きそのものはそれほど難しくないことがお分かりいただけたのではないでしょうか。
次回は、SDNコントローラーが提供するNeutronプラグインを用いた複雑なネットワーク構成を解説します。お楽しみに。
著者プロフィール
吉本昌平
ユニアデックス株式会社
ASPやクラウド関連のSEを経て、現在はSDN関連の企画推進を担当。MSXをこよなく愛する見習いエバンジェリスト。
共著者
田中克弥
ユニアデックス株式会社
パワポと戯れるOpenStack商品企画担当。バックパック片手に世界をぶらり旅。次の旅先を妄想中。
大塚 洋
ユニアデックス株式会社
プログラマー病を患うおじさんエンジニア。早期退職してゴルフ三昧の日々を夢見る。
佐々木 智一
ユニアデックス株式会社
息子とのプラレール遊びでつい本気になってしまう、フルスタックになりたいエンジニア。
Copyright © ITmedia, Inc. All Rights Reserved.