[投稿]イングレスK8Sの理解

イングレスK8Sの理解

HTTPS:// www.jianshu.com/p/189fab1845c5/

 

HTTPサービスの道を公開

サービスでは、外部アクセスできるようにNodePortタイプのHTTPサービスは、ホストポート上で公開することができますデフォルトモードK8S露光HTTPサービスです。サービスコンフィギュレーションモードは次のようです。

service -> label selector -> pods 
31217 -> app1 selector -> app1 1234
31218 -> app2 selector -> app2 3456
31218 -> app2 selector -> app2 4567

モデルの利点

シンプルな構造、理解しやすいです。

モードの欠点

  1. アプリは、ホストポートを取る必要があります
  2. ポート管理の欠如
  3. L4転送、転送は、HTTPヘッダとルーティング経路に基づいてすることができません

イングレスモード

サービス進入の層を追加し、次のような構造に先立ち

            ingress -> service -> label selector -> pods www.app1.com -> app1-service -> app1 selector -> app1 1234 80 -> www.app2.com -> app2-service -> app2 selector -> app2 3456 www.app3.com -> app3-service -> app3 selector ->app3 4567 

モデルの利点

  1. 増加認識層7、ヘッダでhttpできる、転送ルーティング経路

モードの欠点

  1. アップグレードの複雑さ

イングレスは、理解を達成します

イングレスイングレスは、コントローラと進入を達成するために2つの部分に分け。

  1. イングレスコントローラは、入口流量であるソフトウェア・エンティティであり、一般的にnginxのHaproxy。
  2. 入口は、特定のルーティングルールを記述しました。

イングレスコントローラは、即時効果を持つAPIサーバー上/ ingressesリソースをリッスンします。
Ingerssルーティングルールは、入力リソースの形で、一つまたは複数のドメインを記載しています。

簡単に言えば:ルーティングルール、イングレスコントローラリアルタイム実装ルールの進入説明を。

デザイン

デザインコンセプト、需要と供給のすなわち分離を通じてK8S。イングレスコントローラと進入もこれを達成することをお勧めします。K8Sを理解するために、心の中で電源分離設計のニーズを保ちます。

イングレスコントローラ情報

  1. クラスタは、入口進入コントローラであり得る複数の入力制御装置を有することができ、指定
  2. イングレスルールは、より競争力のある表示される場合があります
  3. イングレスコントローラ自体はHOSTPORTやサービス形態にさらされる必要があります。あなたは、クラウドサービス、クラウド・プロバイダーポンドを使用することができます
  4. イングレスは複数の名前空間にサービスを提供することができます

どのような設定かイングレスコントローラ

私たちは、nginxの-イングレス、例えば、我々は以下のいくつかのグローバルパラメータを設定することができます

  1. グローバルタイムアウト時間
  2. グローバルgzip圧縮
  3. httpsの和HTTP2
  4. グローバル要求の数を制限
  5. VTS nginxのリアルタイムの状況、あなたはトラフィックを監視することができます

ここではいくつかのより多くのドキュメントを参照してのもので  https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/configmap.md

イングレスコントローラーをセットアップする方法

二つの方法がconfigmapとカスタムテンプレート。カスタムテンプレートは、通常の状況下では、configmapの使用は十分にされている、設定することはできませんconfigmapいくつかの高度なオプションを設定するために使用されます。

イングレスコントローラーを確保するためにconfigmap必要性を使用する場合は、configmapパラメータが有効になって

あなたは何ができるかを設定イングレス

次のように私たちは、nginxの-イングレスは、例えば、我々はいくつかのパラメータを設定することができます

  1. のHTTPヘッダーベースのルーティング
  2. ルーティングパスに基づいて、
  3. 進入単一のタイムアウト(タイムアウトが他の侵入のスケジュールには影響しません)
  4. ログイン認証
  5. CRO
  6. リクエストレート制限
  7. ルールを書き換えます
  8. SSL
    ここでの唯一の部分的なリストは、より多くのドキュメントを参照してください  https://github.com/kubernetes/ingress-nginx/blob/master/docs/user-guide/annotations.md

イングレスの設定方法

イングレスは注釈のみで設定することができます。および入力コントローラの開始を確保する必要性は、注釈オプションが有効になっています

孤立需給利点

  1. 管理者が管理し、別の名前空間で進入コントローラ、。
  2. アプリケーションの操作や保守によって設定された各アプリケーションの名前空間に進入、。

このような権利を単離することができ、およびコンフィギュレーション機能を提供することができます。

概要

  1. ルーティングの要件を記述するためのイングレスコントローラは、ルーティングの要件を実装するための責任があり、進入責任
  2. イングレスコントローラー・クラスターは、より多くを持つことができます
  3. 注釈によって提供さConfigmap、侵入を設定して、入力コントローラ
  4. イングレスコントローラは、ローカルルールを設定することが進入、グローバルルールを設定しました
  5. イングレスコントローラは、複数の名前空間を提供することができます。
  6. 分離は、需要供給の権限の分離を行って、だけでなく、コンフィギュレーション機能を提供することができます。

ファイル

nginxの-入口文書  https://github.com/kubernetes/ingress-nginx

おすすめ

転載: www.cnblogs.com/jinanxiaolaohu/p/11675992.html