2017-03-31 16 views
0

私は、オンラインで見つかったリースースでは答えられない、むしろteoreticalな質問をしました。質問は:PODのコンテナの作成方法を決定するルールは何ですか?。例を挙げて説明しましょう。Kubernetes:多くのコンテナを持つ単一のPOD、または単一のコンテナを持つ多くのPod

私はこれらのmicroservicesをしました:コールを転送するために、コンテンツ

  • (プラス)OpenRestyサービング

    • 認証
    • 認証
    • は、他の1つを形成し、流れをorhcestarate。 (そうネイティブK8で行う可能性がある?それはnginxのの+のLUA上のサービス基盤を持っているようだが、それがどのように動作するかわからない)
    • 私はデータベースとの共同を避けるため、例示のため

    、私は、彼らが外部にあり、今kubernetes

    で管理されていないと仮定し、ここでは、画像の右を残し正しい方法は何ですか? enter image description here

    LEFT:これは、それが動作させることが容易と思われる、すべてが「localhost」を上で動作、欠点は、ビットにmicroservicesの利益を失っていることです。たとえば、認証が遅くなり、インスタンスがさらに必要になる場合は、そのサービスだけでなく、ポッド全体を複製する必要があります。

    RIGHTもう少し複雑に思えますが、各PODを他のPODに公開するにはサービスが必要です。しかし、ここでは、必要に応じて他のコンテナを複製せずにauthを複製することができます。一方、各ポッドは基本的にコンテナなので、たくさんのポッドがあります。

  • 答えて

    0

    右画像、各自のポッド内にあります。ポッド内のマルチコンテナは、データローダなどのメインコンテナのサポートのために高度に結合されているか、必要な場合にのみ、実際に使用する必要があります。

    個別のポッドでは、各サービスを個別に更新して配備することができます。また、より効率的なスケーリングが可能です。将来、2つまたは3つのコンテンツポッドが必要になる場合がありますが、1つの認証だけが必要です。それらがすべて一緒になっている場合は、同じポッドにそれらをまとめて選択する必要がないため、それらをすべて拡大します。

    0

    右の画像が最適です。容易な管理、アップグレード、スケーリング

    0

    アーキテクチャモデルの左側の配置がタイトカップリングであるという根拠に基づいて、構造の右側を選択すると、ビジネス拡張能力の実際のニーズに応じてモジュールに役立たない。

    1

    異なるサービスを異なるポッドに配置するか、独立して拡張できるように配置することをお勧めします。その理由は、マイクロサービスアーキテクチャの利点として一般的に論じられているものです。自分の言語/技術に独立して開発されるさまざまなサービスを可能

    • より疎結合は、

    • は独立して拡張することも配備され、独立して更新して

    • します。

    例外は、「主要なアプリケーションを」支援する「ヘルパーアプリケーション」と見なされているものです。 k8sのドキュメントには、データプルーサー、データプッシャー、プロキシーがあります。そのような場合、ループバックネットワークインターフェイスを介した共有ファイルシステムまたは交換は、重要なパフォーマンスの使用例を助けることができます。データプーラーは、例えば、GITリポジトリから提供するウェブサイトを引っ張るnginxコンテナのためのサイドカーコンテナとすることができる。

    -1

    右のイメージは、オプション、簡単にスケーラビリティと管理が容易です

    関連する問題