今日は、クラウド ネイティブ エコシステムの中核技術であるトラフィック管理、Kubernetes Ingress Controller についてお話します。 Ingress Controller とは何ですか?クラウド ネイティブ エコシステムでは、一般的に、Ingress Controller は Ingress リソース オブジェクトを管理するために使用される Kubernetes の重要なコンポーネントです。 Ingress リソース オブジェクトは、クラスター内のサービスに入るトラフィックを制御するために、外部ネットワークからの HTTP および HTTPS ルールを定義するために使用されます。 Ingress コントローラは、Ingress ルールを実際に実装するコンポーネントです。 より正確に言うと、Ingress コントローラーは、L4 および L7 レイヤーのリクエストの North-South トラフィックを管理します。これは、クラスターの外部からクラスターに出入りするプロセスと呼ばれます。 Ingress リソース オブジェクトを解析し、負荷スケジュール ルールを構成し、ドメイン名、パス、その他のルールに従って外部リクエストをクラスター内のバックエンド サービス Pod に転送します。 クラスター内のサービス間の東西トラフィックは、サービス検出メカニズムによって管理されます。たとえば、Pod は通信のためにサービス名に基づいて他の Pod IP を照会します。 これら 2 種類のトラフィックは、より広い観点から理解することができます。
ネットワーク トポロジ アーキテクチャ全体において、これら 2 つはそれぞれの役割を実行し、完全なトラフィック管理システムを形成します。 Ingress コントローラは Ingress を統合し、サービス検出によって内部トラフィックの疎結合通信が可能になります。これにより、外部アクセスのセキュリティが確保されるだけでなく、クラスター内のさまざまなサービスの高可用性呼び出しも実現されます。これは、Kubernetes ネイティブ アプリケーション アーキテクチャのチューニングとトラフィック制御に非常に役立ちます。 より専門的な観点から付け加えると、Ingress 自体は、クラスターからの外部トラフィックがクラスター内の各サービスに入る方法に関するルーティング ルールを定義する API オブジェクトにすぎず、これらのルートを直接実装することはできません。 ここで必要なコントロール プレーン コンポーネントは、Ingress リソース オブジェクトの変更を監視し、Ingress ルールに従って構成する Ingress コントローラーです。一般的に、イングレス コントローラは、Nginx Ingress や Traefik などのリバース プロキシ機能を実装します。 Ingress コントローラーは、ノード上のポートをリッスンしてクラスターから外部トラフィックを受信します。ドメイン名、URL パス、ホスト名など、Ingress によって定義されたルールに従って照合され、ロード バランシング テクノロジを使用して、トラフィックがバックエンドの対応する Pod サービス インスタンスに転送されます。 同時に、Ingress Controller は、IP またはユーザー名とパスワードに基づくアクセス制御など、より豊富なトラフィック管理機能も提供できます。タイムアウト再試行と分離。地域間トラフィック管理など、統一された外部入口を提供し、内部サービスに安全で信頼性の高い外部アクセス プレゼンテーション層を提供します。 Ingress コントローラーは必要ですか?通常、コンテナ クラウド プラットフォーム、特にプライベート クラウド環境では、Kubernetes クラスター内の Pod は相互にのみアクセスでき、外部ネットワークはクラスター内の Pod に直接アクセスできないため、クラスターのセキュリティが確保されます。 外部サービスを提供する必要がある場合は、ドメイン名や URL パスに基づいてトラフィックをさまざまなバックエンド サービスに転送するなどのルーティング ルールを定義する Ingress リソース オブジェクトを作成できます。 ただし、Ingress リソース自体は単なる宣言であり、トラフィック転送機能を直接実装することはできません。この時点で、Ingress オブジェクトの変更を検出し、負荷分散デバイスを構成したり、Ingress ルールに従ってリバース プロキシとして機能したりするコントロール プレーン コンポーネント Ingress Controller Pod (Nginx や Traefik など) をデプロイする必要があります。 Ingress コントローラーはクラスター内でポッドとして実行されます。クラスターの外部から流入するリクエストは、Ingress Controller の入り口を介してバックエンド サービスに転送されます。 同時に、Ingress コントローラーは、単純なラウンドロビン リクエスト分散を実装できるだけでなく、仮想ホスティング、HTTPS、ターゲット URL またはドメイン名に基づく認証などの追加機能もサポートし、エントリとしての機能を最大限に活用できます。 したがって、Ingress によって定義された複雑なトラフィック管理ルールを実際に実装できるのは Ingress Controller を通じてのみであり、同時に、統合された Ingress を通じて外部への安全で信頼性の高いサービス アクセス機能も提供できます。これは、Ingress が外部アクセスを実現するための標準的なソリューションです。 Ingress Controller はどのように機能しますか?一般的に言えば、Ingress コントローラーの一般的な動作原理は次のとおりです。
Ingress Controller はどのような問題を解決できますか?一般的に、Ingress コントローラーは、Kubernetes クラスターで実行され、クラスターに流入するネットワーク トラフィックを管理および制御するコンポーネントです。主に以下の重要な問題を解決します。
|
<<: 5 分間の技術講演 | VXLAN トンネルと「クラウド ゲートウェイ」でのその応用
モバイルインターネットの発展により、従来の金融業界にまったく新しいビジネスモデルが生まれました。金融...
SEO ドメイン名の謎は誰もが知っていると思います。ウェブサイトの3つの重要な構成要素は1.ドメイン...
6月末にBingがリンク否認ツールをリリースした後、何千人ものSEO担当者が待ち望んでいたGoogl...
[[419665]]正直に言うと、3~5 年間 Java 開発を行っていても、JVM チューニング ...
ウェブマスターサークルに足を踏み入れるすべての草の根ウェブマスターは、心の中にウェブマスターの夢を持...
数日前、数年にわたる発展と業界での地盤を徐々に固めてきた百度傘下の動画サイト「iQiyi」が突然、「...
私は SEO 初心者で、SEO を学び始めて 6 か月が経ちました。それで、私はこの 6 か月間をど...
6月22日と6月28日のBaiduの洗礼を受けた後、残念ながら私のウェブサイトはランキングと外部リン...
Sharktech の VPS は特別なことをしています。すべての VPS が 50% オフという前...
1. クラウドネイティブテクノロジースタック次の図は、CNCF が公開したクラウド ネイティブ イン...
[51CTO.com からのオリジナル記事] 最近、ガートナーは新しいクラウド インフラストラクチャ...
現在、60%以上の企業が入札プロモーションにおいて一連の問題を抱えています。入札プロモーションの競争...
分析の前に、広告の定義について簡単に説明させてください。多くの学生は、広告というと、印刷広告やテレビ...
以前、友人がQQを通じて自分のウェブサイトを送ってくれました。百度で「劉亦菲」という3つの単語を検索...
ドイツのクラウド サーバー マーチャント unesty が春のプロモーションを実施しています。ドイツ...