web-dev-qa-db-ja.com

ユーカリの問題

ユーカリのプライベートクラウドの構築に関していくつか問題があります。そして、この問題の2つのバージョン、単純なものと長いものがあります。

シンプル:

プライベートクラウドに精通している人なら誰でも、彼のクラウドの「IPスキーム」を説明するために私に絵を描くことができますか?各コンポーネントをどこに配置するかを決めるのに苦労しています。 CLC、Walrus、CC、SC、NCをすべて異なる物理マシンにインストールする場合、ネットワークトポロジはどのようになりますか?

詳細:現在、12台の物理マシンでクラウドを実行していますが、ボリュームをインスタンスに接続できません。パブリックネットワークのどこにストレージコントローラーを置くべきか疑問に思いました。 CLCの下で? CCの下で? CCと同じレベル?写真も説明も全くありません。そして、私はできる限りのことを試しました。インスタンスは実行されており、それらにアクセスできます。ボリュームが非常に大きいため、丸1週間悩みました。

ロングバージョン:

  1. 4台の物理サーバーでeucalyptusを正常に構成しましたが、正常に動作します。
  2. 4つのサーバーは、CLC、SC、CC、NCです。
  3. 問題は、SCをどこに配置するかがよくわからないことです。これは、クラウドのトポロジが次のようなものであるためです。

alt text

  1. これで、CCはENTSWitchとPrivateSwitchの2つのスイッチに接続されました。また、パブリックIP-> 10.11.25.115、プライベートIP-> 10.11.20.1の2つのIPがあります。 Nodeコントローラーはプライベートスイッチにのみ接続され、プライベートIP10.11.20.2を持っています
  2. これは、マネージドノブランモードを使用して、ノードコントローラーがインスタンスをデプロイし、それらのパブリックIPアドレスを取得できるようになりました。すべてが甘いです。
  3. ここで問題が発生します。ストレージコントローラーでボリュームを作成できます。ただし、ボリュームをインスタンスに接続できませんでした。
  4. ノードコントローラーがストレージコントローラーとは別のネットワークの下にあるためかどうか疑問に思います。

次の手順で問題を解決しようとしました。

  • A.ストレージコントローラーをENTSwitchに接続すべきではないのでしょうか。 SCパブリックネットワークからプライベートネットワークに変更されました
  • B.ストレージコントローラーの登録を再試行しましたが、失敗しました。理由:クラウドがプライベートネットワークに到達できません。
  • C. scをCCに登録しようとしますが、できません。CLCに登録する必要があります
  • D. CLCにルートを追加すると、CLCとSCが相互に接続できるようになります。
  • E.正常に登録しましたが、ボリュームを接続できません。
  • F:エラーログ:
 [root @ HeroNodeServer1画像] #cat /var/log/eucalyptus/nc.log | grep Volume 
 [Fri Aug 20 16:36:12 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-59C90629 remote =/dev/etherd/e0.1 local =/dev/sdb)
 [Fri Aug 20 16:37:53 2010] [015662] [EUCAERROR] AttachVolume()failed(err = -1)XML = 
 [Fri Aug 20 16 :37:53 2010] [015662] [EUCAERROR]エラー:doAttachVolume()がエラー= 1 
 [Fri Aug 20 16:37:53 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-59C90629 remote =/dev/etherd/e0.1 local =/dev/sdb)
 [Fri Aug 20 16:37:53 2010] [015662] [EUCAERROR] AttachVolume() failed(err = -1)XML = 
 [Fri Aug 20 16:37:53 2010] [015662] [EUCAERROR] ERROR:doAttachVolume()failed error = 1 
 [Fri Aug 20 16 :37:53 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-59C90629 remote =/dev/etherd/e0.1 local =/dev/sda5)
 [ 2010年8月20日金曜日16:37:53] [015662] [EUCAERROR] AttachVolume()が失敗しました(err = -1)XML = 
 [2010年8月20日金曜日16:37:53] [015662] [EUC AERROR] ERROR:doAttachVolume()failed error = 1 
 [Fri Aug 20 16:37:58 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-59C90629 remote = /dev/etherd/e0.1 local =/dev/sda4)
 [Fri Aug 20 16:39:38 2010] [015662] [EUCAERROR] AttachVolume()が失敗しました(err = -1)XML = 
 [Fri Aug 20 16:39:38 2010] [015662] [EUCAERROR] ERROR:doAttachVolume()failed error = 1 
 [Fri Aug 20 16:39:38 2010] [015662] [ EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-59C90629 remote =/dev/etherd/e0.1 local =/ev/sdp)
 [Fri Aug 20 16:39:38 2010] [015662] [EUCAERROR]エラー:doAttachVolume()がエラー= 1 
 [Fri Aug 20 16:39:38 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol -59C90629 remote =/dev/etherd/e0.1 local =/dev/sdp)
 [Fri Aug 20 16:39:38 2010] [015662] [EUCAERROR] AttachVolume()が失敗しました(err = -1 )XML = 
 [Fri Aug 20 16:39:38 2010] [015662] [EUCAERROR]エラー:doAttachVolume()失敗エラー= 1 
 [Fri Aug 20 16:41:15 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-5A030630 remote =/dev/etherd/e0.2 local =/dev/sdp)
 [Fri Aug 20 16:42:55 2010] [015662] [EUCAERROR] AttachVolume()failed(err = -1)XML = 
 [Fri Aug 20 16:42:55 2010] [ 015662] [EUCAERROR]エラー:doAttachVolume()が失敗しましたerror = 1 
 [Fri Aug 20 16:43:12 2010] [015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol- 5A030630 remote =/dev/etherd/e0.2 local =/dev/sdc)
 [Fri Aug 20 16:44:52 2010] [015662] [EUCAERROR] AttachVolume()が失敗しました(err = -1) XML = 
 [Fri Aug 20 16:44:52 2010] [015662] [EUCAERROR]エラー:doAttachVolume()failed error = 1 
 [Fri Aug 20 16:50:02 2010] [ 015662] [EUCAINFO] doAttachVolume()が呼び出されました(id = i-33BD0649 vol = vol-59C90629 remote =/dev/etherd/e0.1 local =/dev/sdd)
 [Fri Aug 20 16:51: 42 2010] [015662] [EUCAERROR] AttachVolume()が失敗しました(err = -1)XML = 
 [Fri Aug 20 16:51:42 2010] [015662] [EUCAERROR]エラー:doAttach Volume()失敗エラー= 1 
 

質問:

  1. いったいどこにSCを接続する必要がありますか?パブリックネットワークまたはプライベートネットワーク?
  2. プライベートネットワークに接続する必要がある場合、登録方法SC CLCがプライベートネットワークに到達できない場合
  3. 2つのソリューションすべてがボリュームをインスタンスに接続できなかったのはなぜですか?

================================================== ==============

ここに2番目のものがあります:

  1. 私は現在、それについてもう少しテストをしようとしています。
  2. 4物理アーキテクチャを16物理アーキテクチャに拡張したいと思います。
  3. 何台のマシンを使いたいと思っても、たくさんのドキュメントを読んでも解決できず、長い間疑問がありました。
  4. 私が設計した新しいアーキテクチャは次の図のようなものです alt text
  5. 新しいトポロジでは、ストレージコントローラーをプライベートネットワークに接続する必要があると想定しました
  6. このモデルでは、ノードコントローラーで実行されているインスタンスに2つのIPアドレスが割り当てられている必要があります。1つはプライベート、もう1つは「パブリック」です。
  7. パブリックIPアドレスはCCと同じネットワークにある必要がありますか?
  8. つまり、CCが配置されているネットワークからインスタンスにアクセスできます。
  9. また、CLCでは、インスタンスが外部ネットワークにアクセスできるようにゲートウェイサービスを実行する必要があります

質問:

  1. デザインに問題はありませんか?
  2. インスタンスがクラスターコントローラーと同じネットワーク下にある「パブリックIP」しか取得できない場合、クライアントはどのようにして外部ネットワークからそれらにアクセスすることを想定していますか?
  3. つまり、クラウド外のクライアントがCLCを介してインスタンスにアクセスする方法は?
  4. CLCには、CCと同じメカニズムがあり、インスタンスに「パブリックIP」を割り当てて、アクセスできるようにしますか?

================================

私が尋ねる必要があるのはそれだけです。

この厄介な投稿を読んでいただきありがとうございます、そしてどんな種類の返信も大歓迎です!

1
user52381

次の回答はすべて、ネットワークモードがMANAGED-NOVLANであることを前提としています(これはおそらくすべてMANAGEDモードにも当てはまります)。

セクション1:

-1)それを防ぐ特別なニーズがない限り、SCをCCと結合することをお勧めします。

-2)マネージドモードでは、CCはクラウドクラスター(の1つ)のパブリックネットワークとプライベートネットワークの間に位置します。 SCがCCマシン上にある場合、両方のネットワークと通信できます。プライベートネットワーク上の別のサーバーにSCを配置する場合は、CC上にNATルール(iptablesを使用)を作成して、_間の通信を有効にする必要があります。SCおよびCCファイアウォールを介したCLC。 CLCは、SCと通信するためにそのルールを必要とします。

-3)ソリューション1; SCがプライベートスイッチに接続されていません(これは必須です)。ソリューション2では;おそらく、CCでiptablesルールを作成しておらず、SCがCCの背後で分離されていた可能性があります。

第2節:

-1)1つの修正:スイッチCTIとswitch1をマージします。これは、パブリックネットワークへの接続と同じスイッチである必要があります。また、(絶対に必要な場合を除いて)CLCとWCを1つのマシンにマージし、それぞれのCCのSCをマージすることをお勧めします。 UECのこの図( http://cssoss.files.wordpress.com/2010/05/eucalyptus_cloud.png?w=600&h=467 )クラウドはあなたを助けることができます。

-2)新しいインスタンス(euca-run-instance)を作成すると、Eucalyptusは、インスタンスが実行されているノードを管理するCCサーバー上に新しいiptableルールを作成します。このルールは、CCを介した通信を許可します。このNATトラバーサルは、パブリックIPとそれに対応するプライベートIP間の通信をルーティングします。

-3)クライアントは、対応するCCを介してインスタンスにアクセスします。 CLCはクラウドを管理するためだけに存在しますが、インスタンスが開始されると、CCが通信を処理します。

-4)要するに:いいえ。

1
pcantin

さて、これに応答し始めましょう

  • SCの質問

SCは常にインスタンスからアクセス可能である必要があるため、ノードコントローラーと同じネットワークに存在する必要があります。インスタンスは別のネットワークに存在するため、ストレージを認識できません。

  • ネットワークトポロジー

別々のネットワークを持つのは良いことですが、セキュリティを複雑にしすぎるのではなく、ファイアウォールとトラフィック制御に基づいた方がよいと思います。Eucalyptusは、ネットワークが単純で、1つのネットワークから始めて、分割しない場合に気に入っています。あなたが非常に良い安心感を得るまで2つに。他のコンポーネントのセキュリティはプライベートネットワークとeucalyptusが提供するプロトコルによって提供されるため、安全なCLCとCCを使用することに集中してください。また、NCは外部IPを必要としません。

  • ネットワーク設計

そのデザインは私にはしっかりしているように見えます。すべてのパブリックアドレスはCCによって提供されるため、CCは事実上ゲートウェイになります。複数のCCを使用することで、AmazonEC2の「アベイラビリティーゾーン」と見なしてください。ゾーンを作成します。

履歴書では、CLC、CC、およびWalrusを注意深く監視し、それらのセキュリティと通信の入出力を確認してください。残りのコンポーネントは正常であり、内部ネットワークで問題なく動作する必要があります。

0
lynxman