第5章 MicroShift ノードの Ingress コントロールの使用
MicroShift 設定ファイルの Ingress コントローラーオプションを使用して、Pod とサービスがノード外でアクセスできるようにします。
5.1. MicroShift での Ingress 制御の使用 リンクのコピーリンクがクリップボードにコピーされました!
MicroShift ノードを作成すると、ノードで実行されている各 Pod とサービスには IP アドレスが割り当てられます。これらの IP アドレスには、近くで実行されている他の Pod やサービスからはデフォルトでアクセスできますが、外部クライアントからはアクセスできません。MicroShift は、OpenShift Container Platform IngressController API の最小限の実装を使用して、ノードサービスへの外部アクセスを有効にします。
より多くの設定オプションを使用すると、特定のニーズに合わせて Ingress を微調整できます。拡張した Ingress 制御を使用するには、MicroShift 設定ファイル内のパラメーターを更新し、サービスを再起動します。
Ingress 設定は、次の例のようにさまざまな形で役立ちます。
- サーバーの応答速度に対応する
-
アプリケーションがクライアントからの要求の処理を開始していても、応答前に接続が切断される場合は、設定ファイルの
ingress.tuningOptions.serverTimeoutパラメーターをより高い値に設定し、サーバーからの応答の速度に対応できます。
-
アプリケーションがクライアントからの要求の処理を開始していても、応答前に接続が切断される場合は、設定ファイルの
- ルーター接続を閉じる
-
ノード上で実行されているアプリケーションが適切に接続を閉じないため、ルーターに多くの接続が開かれている場合は、
ingress.tuningOptions.serverTimeoutパラメーターおよびspec.tuningOptions.serverFinTimeoutパラメーターを低い値に設定し、それらの接続が早期に近づけることができます。
-
ノード上で実行されているアプリケーションが適切に接続を閉じないため、ルーターに多くの接続が開かれている場合は、
- クライアント証明書を確認する
-
クライアント証明書を検証するように Ingress コントローラーを設定する必要がある場合は、
ingress.clientTLSパラメーターを使用して、config map への参照である clientCA 値を設定できます。config map には、クライアントの証明書を検証するために使用される PEM でエンコードされた CA 証明書バンドルが含まれます。必要に応じて、証明書サブジェクトフィルターのリストも設定できます。
-
クライアント証明書を検証するように Ingress コントローラーを設定する必要がある場合は、
- TLS セキュリティープロファイルの設定
-
Ingress コントローラーの TLS セキュリティープロファイルを設定する必要がある場合は、
ingress.tlsSecurityProfileパラメーターを使用して、デフォルトまたはカスタムの個別の TLS セキュリティープロファイルを指定できます。TLS セキュリティープロファイルは、Ingress コントローラーの TLS 接続の最小 TLS バージョンと TLS 暗号を定義します。TLS セキュリティープロファイルが設定されていない場合、デフォルト値は API サーバーに設定された TLS セキュリティープロファイルに基づいています。
-
Ingress コントローラーの TLS セキュリティープロファイルを設定する必要がある場合は、
- 新規ルート要求のポリシーを作成する
-
新しいルート要求を処理するためのポリシーを定義する必要がある場合は、
routeAdmissionパラメーターを使用して、namespace 全体の要求を許可または拒否できます。routeAdmissionパラメーターを設定して、namespace 間でのホスト名の要求の処理方法を記述し、Ingress コントローラーがワイルドカードポリシーでルートを処理する方法を記述します。
-
新しいルート要求を処理するためのポリシーを定義する必要がある場合は、
- エラーページをカスタマイズする
- デフォルトのエラーページ(通常は空で、HTTP ステータスコードのみを返す)を使用する場合は、カスタムエラーページを設定します。
- HTTP ヘッダーまたはクッキーの取得
- HTTP ヘッダーまたはクッキーのキャプチャーを含める場合は、アクセスロギングで設定します。