ここでは、CLBヘルスチェックのソースIPを、CLBの仮想サービスアドレス(VIP)から100.64.0.0/10ネットワークセグメントに設定する方法について、TCPリスナーを例としてご説明します。 シナリオ
1. バックエンドサーバーのセキュリティグループの集約
ヘルスチェックのソースIPを100.64.0.0/10のネットワークセグメントに集約します。
2. 自作Kubernetesクラスタープライベートネットワークのループバック問題の解決
K8sサービスは、クラスター内とクラスター外の両方で公開する必要があります。クラスター内はクラスター内CLB(IPVS)によって、クラスター外はプライベートネットワークCLBによって実装されます。IPVSは、プライベートネットワークCLBのIPアドレスをローカルのインターフェースにバインドします。これにより、クラスター内のプライベートネットワークCLBへアクセスするためのアドレスには、実際はクラスター内のIPVS CLBが使用されます。
TKEでは、プライベートネットワークCLBがCLBのVIPアドレスをヘルスチェックのソースIPとして使用します。これは、ネイティブのK8s実装のIPVSにバインドされたアドレスと競合するため、プライベートネットワークCLBのヘルスチェックは失敗します。
ヘルスチェックのソースIPを100.64.0.0/10ネットワークセグメントに設定することにより、アドレスの競合を回避し、ヘルスチェックの失敗問題を解決できます。
処理手順
2. インスタンス管理ページの左上隅でリージョンを選択し、インスタンスリストから対象のインスタンスを見つけ、操作列のリスナーの設定をクリックします。
3. リスナー管理タブで、対象のリスナーを見つけ、リスナー右側のアイコンをクリックして、リスナーを編集します。 4. ポップアップしたリスナーの編集ダイアログボックスで、次へからヘルスチェックタブをクリックします。
5. ヘルスチェックタブで、ヘルスチェックのソースIPに100.64.0.0/10ネットワークセグメントを選択し、次へをクリックしてから送信をクリックします。
よくあるご質問
ヘルスプローブのソースIPを100.64.0.0/10ネットワークセグメントに切り替えると、どんなメリットがありますか。
ヘルスプローブのソースIPにネットワークセグメント100.64.0.0/10を使用する場合、バックエンドサーバーのセキュリティグループ内に、このネットワークセグメントの許可ポリシーを追加設定する必要はありません。バックエンドサーバー内にiptablesなどの他のセキュリティポリシーを設定している場合は、このネットワークセグメントを必ず許可しなければヘルスチェックに失敗します。
バックエンドサーバー集約のセキュリティポリシーは、100.64.0.0/10のネットワークセグメントに統一されています。
100.64.0.0/10ネットワークセグメントはTencent Cloudの内部アドレスであり、このセグメントにユーザーを割り当てることはできないため、アドレス競合の問題は発生しません。
100.64.0.0/10ネットワークセグメントをヘルスプローブのソースIPとして使用する場合、固定IPとなりますか。
プローブIPとして使用されるのは固定IPではなく、100.64.0.0/10ネットワークセグメント内のいずれかのIPです。
関連ドキュメント