2017-09-19 14 views
2

gcloudにはそれぞれ独自の静的IPアドレスを持つkubenetesを使用して複数の異なるポッド(コンテナ)(9)があります。私はまた、それらがすべて使用するクラスタ内に複数のノードプール(9)を持っています。いずれかのポッド(コンテナ)からcURL要求を行うと、宛先URLのログに記録されているIPアドレスは、常にクラスタ内の最初のノードプールのIPアドレスになります。Gcloudドッカーコンテナの静的IPアドレスはCurlを使用

私の質問はこれが一貫して起こりますか?このノードプールが削除された場合、IPアドレスは失われます。このcURL要求アドレスを静的にする方法はありますか?

これらのコンテナはIP制限のある外部サービスを作成する必要があり、変更するたびにこのIPアドレスを変更するように要求する必要があるため、これが必要です。

答えて

1

ノード数が多いので、これを行う信頼性の高い方法は、送信トラフィックのNATゲートウェイとして単一のノードを構成することだけです。したがって、すべてのノードからの発信トラフィックはまずNATゲートウェイに送られ、NATゲートウェイは外部サービスに接続します。このゲートウェイVMインスタンスに静的IPを割り当てることができます。明らかに、これはまた、外部トラフィックに対して単一障害点を導入する。

このpageには、NATゲートウェイの設定に関する詳細な手順が記載されています。 this discussionも参照してください。

第2の選択肢は、外部アクセスを必要とするポッド用の専用プール/ノードを有することである。これらのノードだけに専用のIPを与えることができます。

+0

NATゲートウェイは現在のところ唯一の解決策かもしれませんが、欠点があります。 GKEチームは、この欠落している機能を認識しているようです。専用のIPをノードに割り当てるというあなたのコメントに関して、私はこれを行う方法を知らない。専用のIPをポッドに割り当てることはできますが、ノードは割り当てできません。あなたがこれを行う方法を知っているなら、これは解決策になるかもしれません。 – Apot

+0

クラウドダッシュボードから、「VPCネットワーク」と「外部IPアドレス」をクリックします。ここから、静的IPアドレスをノードに与えることができます。これらのIPアドレスは、API呼び出し時に外部サービスに表示されます。 –

+0

OK私はどのように参照してください。このhttps://stackoverflow.com/questions/41133755/static-outgoing-ip-in-kubernetesも役に立ちました。 – Apot

関連する問題