AWS上でkopsを使用して作成されたVPCを実行していますが、データベースはGCPをクラウドプロバイダーとして使用してmongo-atlasで実行されています。
Mongoデータベースサーバーは世界中に公開されています。私がやろうとしているのは、VPCを使用して1つのIPをセットアップし、データベースと通信したり、さまざまなIPを取得したりできる方法を見つけることです。
これが私がすでに試したことです:
AWSクラスターには本当にパブリックIPが必要ですか? kops
を使用している場合、おそらくKubernetesを使用しているので、ワーカーノードをプライベートサブネットとインターネット向けロードバランサーのみがパブリックIPを持つパブリックサブネットにあります。
いくつかのオプションがあります。
[〜#〜] vpn [〜#〜] AWSとGCPの間-これにより、AWSリソースがプライベートIPを介してGCPリソースと通信できるようになります。これは、ノードにパブリックIPがある場合でも機能するはずです。
[〜#〜] nat [〜#〜] NATゲートウェイを使用するアウトバウンドAWSトラフィック、AWSアベイラビリティーゾーンごとに1つ。
NATゲートウェイには固定のElastic IPがあり、これをホワイトリストに追加できます。 GCP側。
ところで、ワーカーノードにパブリックIPがある場合、NATは少し注意が必要です。基本的に、NATゲートウェイを介してルーティングされる特定のアドレスのみが必要になります。例えば。 MongoノードのIPが192.0.2.1および192.0.2.100の場合、AWSルートテーブルは次のようになります。
ワーカーノードをプライベートサブネットに移動し、すべてのアウトバウンドトラフィックにNATを使用することをお勧めします。これにより、ルーティングとホワイトリストが簡単になります。
それが役に立てば幸い:)