blog

OpenStack ネットワーク構成の設計

OpenStackは、豊富なネットワーク構成環境を提供し、本稿では、クラウドシステムの設計について説明します検討と設計の要件のネットワークの一部です。...

Aug 20, 2014 · 6 min. read
シェア

OpenStackは、豊富なネットワーク構成環境を提供し、本稿では、クラウドシステムの設計について説明します検討と設計の要件のネットワークの一部です。

組織でクラウドシステムを初めて導入する場合は、このセクションを読んだ後でネットワーク運用チームに相談し、既存のネットワークについて理解を深めてください。クラウド・システムで使用されるネットワークは、通常のシステムで使用されるネットワークとは展開が異なり、ネットワーク接続性やネットワーク・ポリシーに影響を与える方法で展開されている可能性があります。

例えば、クラウドシステムを構成するサーバーや、クラウド上で稼働する仮想マシンインスタンスに必要なIPアドレスのリソースは、事前に適切に計画・準備する必要があります。

ネットワーク管理

効率的なネットワーク管理は、しばしば重要な検討事項です。システム管理や監視によって発生するトラフィックを、実際のクラウドシステムのユーザートラフィックから迂回させるネットワーク管理アプローチは、ユーザ利用への影響を軽減することができます。

OpenStackの内部コンポーネントでは、メッセージキューやOpenStackコンピュートノードなどの通信にプライベートネットワークを使用することが推奨されています。

パブリックアクセスオプション

クラウドシステムの仮想マシンインスタンスに対するIPアドレス割り当てポリシーには、固定IPと動的IPの2種類があります。 固定IPポリシーは、起動時に仮想マシンインスタンスに固定IPアドレスを割り当ててバインドするのに対し、動的IPポリシーは、さまざまなユーザーアクションに応じてIPアドレスを変更することができます。どちらのIPポリシーも、必要に応じて共有ネットワークとプライベートネットワークの両方に使用できます。

OpenStackでは固定IPアドレスを使用する必要がありますが、動的IPアドレスは必要ありません。動的IPの2つの一般的な適用シナリオは、パブリックネットワーク上のIPアドレスが制限されているプライベートクラウド環境で、ネットワーク外からプライベートクラウドへのアクセスを提供する場合、またはクラウドシステム内の実際の対応インスタンスが移行またはアップグレードされたパブリッククラウドユーザーがクラウドリソースにアクセスするために固定IPを持つことができる場合です。

固定IPアドレスは、プライベート・クラウドではイントラネットIP、パブリック・クラウドではパブリックIPになります。VMインスタンスが終了すると、対応する固定IPアドレスはシステムによって取り戻されます。クラウドシステムに慣れていないユーザーは、固定IPアドレスの消失に戸惑うかもしれません。

IPアドレス計画

OpenStack環境では多くのサブネットが必要な場合があり、それぞれが異なるサービスを実行しているため、IPアドレスの計画はネットワークの分離とスケーリングに役立ちます。パブリックIPアドレスとプライベートIPアドレスの両方を必要とする制御サービスについては、VMのパブリックネットワーク構成について述べたオプションを参照してください。

IPアドレスの計画は、以下のセクションに分けることができます:

  1. サブネットルーティング:サブネットパケットは専用ルートまたは新星ネットワークサービスを介して通信されます。
  2. サービスを制御するためのパブリックインターフェース:swift-proxy、nova-api、glance-api、horizonによるパブリックアクセス。
  3. オブジェクト・ストレージ・クラスタ内の内部通信:オブジェクト/アカウント/コンテナのサービス間の通信と、プロキシ・サービスの内部インターフェイスが使用するプライベート・ネットワーク上の通信。
  4. コンピュートとストレージの通信:一時ストレージとオブジェクトストレージはコンピュートノードの外部サービスであり、接続通信のためのネットワークが必要です。
  5. 外部リモート管理:サーバーの管理に専用の外部リモートコントローラーを使用する場合、通常は分離されたネットワークを使用します。
  6. 内部リモート管理: 多くの場合、コンピュートノードやストレージノードは、システム管理ツールや監視ツールがサーバーにアクセスするために、追加のネットワークインターフェースを必要とします。
  7. 将来の拡張性:新しいパブリック向けコントロールサービスの追加や、VMインスタンス用のIPの追加を計画に入れておく必要があります。

たとえば、プライベートIPセグメント172.22.42.0/24と172.22.87.0/26にOpenStackコンピュートサービスとオブジェクトストレージサービスをデプロイした場合、次のように設定できます:

172.22.42.0/24 172.22.42.1 - 172.22.42.3 - サブネットルーティング 172.22.42.4 - 172.22.42.20 - 予約 172.22.42.21 - 172.22.42.104 - コンピュートノードリモートコントローラ 172.22.42.105 - 172.22.172.22.42.188 - コンピュートノード管理インターフェイス 172.22.42.189 - 172.22.42.208 - Swiftプロキシリモートコントローラ 172.22.42.209 - 172.22.42.228 - Swiftプロキシ管理インターフェイス 172.22.42.229 - 172.22.42.252 - SwiftストレージサーバリモートコントローラSwiftストレージサーバリモートコントローラ 172.22.42.253 - 172.22.42.254 - reserved 172.22.87.0/26: 172.22.87.1 - 172.22.87.3 - サブネットルート 172.22.87.4 - 172.22.87.24 - Swiftプロキシサーバー内部インターフェース 172.22.87.25 - 172.22.87.63 - Swiftオブジェクトサーバー内部インターフェース

パブリックIPアドレスを使用して同様のアプローチを実装することも可能ですが、より大きなレンジセグメントを持つIPアドレスを使用することを推奨します。Openstackのネットワーク構成によっては、VMインスタンスのパブリックIPアドレスがnova-computeホストに割り当てられることがあります。

ネットワークトポロジー

VLAN

VLANはシンプルなものから複雑なものまで設定できます。VLANを使用することで、各プロジェクトは独自のサブネットを持つことができ、ネットワークブロードキャストを他のプロジェクトから分離することができます。OpenStackでVLANを使用するには、VLANをセグメント化し、各計算ノードが接続するスイッチポートをVLANのトランスポートポートにバインドする必要があります。

例えば、クラウドでは最大100のプロジェクトをサポートする必要があると予想される場合、現在のネットワーク・アーキテクチャでは使用されていないVLANの範囲を選択し、その範囲のVLANと、その範囲のVLANが通信できるようにするスイッチ・ポートを使用するようにOpenStackを設定します。

複数のネットワークインターフェース

OpenStackは、1つのVMインスタンスに複数のネットワーク・インタフェースを割り当てることができます。これは高度な機能であり、一般的には使用されませんが、簡単な設定でサポートすることができます。2つ目のネットワーク・インターフェースは、サブネットまたはVLAN全体を使用するため、サポートできる項目数が少なくなることに注意してください。

マルチホストとシングルホストのネットワーク

nova-networkサービスはマルチホストまたはシングルホストモードで動作します。マルチホスト・ネットワーク・モードでは、nova-networkサービスのコピーが各計算ノード上で実行され、同じノード上のVMインスタンスのインターネットへのゲートウェイとして動作します。また、コンピュートノードはローカルVMインスタンスにダイナミックIPとセキュリティグループを提供します。シングルホストネットワークモデルでは、クラウドコントローラなどの集中型サーバを使用し、nova-networkサービスを独立して実行します。すべての計算ノードはVMインスタンスのネットワーク通信をクラウドコントローラーに転送し、クラウドコントローラーはインターネットへの接続を担当します。クラウド上のすべての計算ノードですべてのVMインスタンスが使用する動的IPとセキュリティグループは、クラウドコントローラーによってサポートされます。

どちらのモデルにも利点と欠点があります。シングルホストネットワークモデルには単一障害点という欠点があり、クラウドコントローラに障害が発生すると、すべての仮想マシンインスタンスがネットワーク上で通信できなくなります。マルチホームネットワークモードにはこの問題はありませんが、マルチホームモードでは各計算ノードがインターネット接続用のパブリックIPを持つ必要があります。

インターネットサービス

OpenStackは、DNSやNTPなど、他のネットワークアプリケーションと同様に多くの標準サービスを適用しています。

エヌティーピー

時間の同期は、OpenStackの様々なコンポーネントが適切に動作するための重要な要素です。VMインスタンスでのスケジューリング、オブジェクトストアでのオブジェクトのレプリケーション、ログでのタイムスタンプの照合はすべて正しい時刻でなければなりません。

OpenStackコンポーネントを実行するすべてのサーバは、適切なNTPサービスにアクセスできる必要があります。ローカルでNTPサービスを構築するか、パブリックNTPサービスを利用することで実現できます。http://.....rg/にアクセスして、利用可能なパブリックNTPサービスを入手してください。

DNS

OpenStackは現在、nova-networkサーバのインストールでdnsmasqを実行する以外にDNSサービスを提供していません。新しいIPアドレスを指すようにDNSレコードを更新するために、VMインスタンスにダイナミックDNSサービスを提供するか、VMインスタンスのIPアドレスにフォワードまたはリバースDNSマッピングを提供することができます(例:vm-203-0-113-123.example.com)。

Read next

世界のブラウザ市場シェアランキング

8月の世界全体のブラウザ市場シェアの最新の数字が発表されたばかりですが、Chrome、IE、Firefoxが依然としてトップ3であり、現在の動向を見る限り、近い将来に抜かれることはなさそうです。

Aug 20, 2014 · 2 min read