私は複数のコンテナを持つIBM Bluemixコンテナ・グループを持っています。 私はいくつかのユースケース(グローバルアプリケーション変数の変更、APIの負荷の分散など)を行っています。ここでは、REST APIによるコンテナへの呼び出しは、グループ内の他のコンテナに通知する必要があります。IBM Bluemixコンテナグループ内のコンテナ間通信を処理する最良の方法は何ですか?
これを処理する最善の方法は何ですか? bluemixは、グループ内のコンテナ間を結ぶコンテナを提供しますか?
私は複数のコンテナを持つIBM Bluemixコンテナ・グループを持っています。 私はいくつかのユースケース(グローバルアプリケーション変数の変更、APIの負荷の分散など)を行っています。ここでは、REST APIによるコンテナへの呼び出しは、グループ内の他のコンテナに通知する必要があります。IBM Bluemixコンテナグループ内のコンテナ間通信を処理する最良の方法は何ですか?
これを処理する最善の方法は何ですか? bluemixは、グループ内のコンテナ間を結ぶコンテナを提供しますか?
これにはいくつかの可能性があります。
おそらく最も単純なのは、共有ボリュームに書き込むことです。グループに参加する新しいコンテナを維持するという利点もあります。
コンテナは、LBを介して直接他のコンテナにアクセスすることもできます(グループ内のコンテナ内の "loadbalancer_fip"環境変数を参照してください)が、グループ内のすべてのコンテナにヒットするとは限りませんいくつか試みます。
第3の選択肢は、https://www.amalgam8.io/のようなものを使用し、起動時に各コンテナにチェックインしてから、サービス名で相互にルーティングすることです。これにより、同じスペース内の他のコンテナグループ/サービスに簡単にアクセスできます。
こんにちは - ありがとうございました。私はamalgram8と、現在見ているデータベースのpub/subとアプリケーションスレッドを聞いている別のオプションと一緒に探検します。私たちはMongoとJavaを使用しているので、理論的には可能でなければなりません。 amalgam8のようなマイクロサービスの発見で起こりうる1つの問題は、コンテナがクラッシュしたときにアプリケーションがそのコンテナをサービス発見から削除する必要があることです。これはキャッチ22の状況です。ではない? –
amalgam8の場合は、サイドカー(https://www.amalgam8.io/docs/sidecar.html)で設定してから、自動ヘルスチェックを有効にしてください(https://www.amalgam8.io/docs)。 /sidecar-configuration.html#health-checks)、それがなくなると自動的に登録抹消されます。何を見ているのかは分かりません。それを処理するためにクロスチェックのレベルが本当に必要なのですか(サイドカーレポート、サイドカウンターのリングもあります)、amalgam8の正確な仕組みがはっきりしていません。 –