このチュートリアルでは、Google Distributed Cloud の手動ロード バランシング モードを使用して Google Distributed Cloud と統合するときに F5 BIG-IP を設定する方法について説明します。
F5 BIG-IP プラットフォームでは、アプリのセキュリティ、可用性、パフォーマンスを向上させるさまざまなサービスが利用できます。これらのサービスには、L7 ロード バランシング、ネットワーク ファイアウォール、ウェブ アプリケーション ファイアウォール(WAF)、DNS サービスなどがあります。Google Distributed Cloud の場合、BIG-IP は外部アクセスと L3 / 4 ロード バランシング サービスを提供します。
追加構成
設定ユーティリティが完了したら、公開してアクセスするユーザー クラスタごとに管理パーティションを作成する必要があります。
まず、最初のユーザー クラスタのパーティションを定義します。クラスタ パーティションは他の目的では使用しないでください。各クラスタには、クラスタ専用のパーティションが必要です。
Google Distributed Cloud 外部エンドポイント用の BIG-IP の構成
バンドルされた Ingress を無効にしていない場合は、次の Google Distributed Cloud エンドポイントに対応する仮想サーバー(VIP)で BIG-IP を構成する必要があります。
ユーザー パーティション
- ユーザー クラスタ Ingress コントローラの VIP(公開ポート:
443
) - ユーザー クラスタ Ingress コントローラの VIP(公開ポート:
80
)
- ユーザー クラスタ Ingress コントローラの VIP(公開ポート:
ノード オブジェクトを作成する
クラスタノードの外部 IP アドレスは、BIG-IP システムでノード オブジェクトを構成するために使用されます。Google Distributed Cloud クラスタノードごとにノード オブジェクトを作成します。ノードはバックエンド プールに追加され、バックエンド プールが仮想サーバーに関連付けられます。
- BIG-IP 管理コンソールにログインするには、その IP アドレスに移動します。このアドレスはインストール時に提供されます。
- 前に作成したユーザー パーティションをクリックします。
- [Local Traffic] > [Nodes] > [Node List] の順に移動します。
- [Create] をクリックします。
各クラスタホストの名前と IP アドレスを入力し、[Finished] をクリックします。
バックエンド プールを作成する
ノードポートごとにバックエンド プールを作成します。
- BIG-IP 管理コンソールで、前に作成したユーザー パーティションをクリックします。
- [Local Traffic] > [Pools] > [Pool List] の順に移動します。
- [Create] をクリックします。
- [Configuration] プルダウン リストで [Advanced] をクリックします。
- [Name] フィールドに「
Istio-80-pool
」と入力します。 - プールメンバーのアクセス可能性を確認するために、[Health Monitor] で [tcp] をクリックします。省略可: これは手動構成であるため、デプロイメントに応じてより高度なモニタリングを利用することもできます。
[Action on Service Down] で [Reject] をクリックします。
このチュートリアルでは、[Load Balancing Method] プルダウン リストで [Round Robin] をクリックします。
[New Members] セクションで [Node List] をクリックし、前に作成したノードを選択します。
[Service Port] フィールドに、構成ファイルの適切な
nodePort
またはランタイム Istio Ingress Kubernetes Service(名前:istio-ingress
、Namespace:gke-system
)のspec.ports[?].nodePort
を入力します。[Add] をクリックします。
ステップ 8~9 を繰り返して、各クラスタノード インスタンスを追加します。
[Finished] をクリックします。
残りのユーザー クラスタ nodePort に対して、このセクションのすべてのステップを繰り返します。
仮想サーバーを作成する
最初のユーザー クラスタ用に BIG-IP に合計 2 つの仮想サーバーを作成します。仮想サーバーは、「VIP + ポート」の組み合わせに対応します。
- BIG-IP 管理コンソールで、前に作成したユーザー パーティションをクリックします。
- [Local Traffic] > [Virtual Servers] > [Virtual Server List] の順に移動します。
- [Create] をクリックします。
- [Name] フィールドに「
istio-ingress-80
」と入力します。 [Destination Address/Mask] フィールドに、VIP の IP アドレスを入力します。このチュートリアルでは、
configuration file
の HTTP Ingress VIP またはランタイム Istio Ingress Kubernetes Service(名前:istio-ingress
、Namespace:gke-system
)のspec.loadBalancerIP
を使用します。[Service Port] フィールドに、VIP の適切なリスナーポートを入力します。このチュートリアルでは、ポート
80
またはランタイム Istio Ingress Kubernetes Service(名前:istio-ingress
、Namespace:gke-system
)のspec.ports[?].port
を使用します。プロトコル固有のプロファイル、証明書プロファイル、WAF ポリシーの関連付けなど、アプリのエンドポイントを強化するための構成オプションがいくつかあります。
[Source Address Translation] で [Auto Map] をクリックします。
[Default Pool] で、前に作成した適切なプールを選択します。
[Finished] をクリックします。
次のステップ
外部向け VIP のセキュリティとパフォーマンスをさらに強化するには、以下について検討してください。
F5 BIG-IP アプリケーション サービスの詳細をご確認ください。
BIG-IP の構成と機能の詳細については、以下をご覧ください。