現在、ライブ環境とステージング環境をホストするために、AmazonEC2クラシックサーバーのセットを使用しています。各環境には、いくつかのWebサーバーとバックグラウンドワーカーサーバーがあります。次に、ビルドとデプロイ用のサーバーもいくつかあります。
一部のサーバーの性質上、T2サーバータイプ(これはビルドサーバーと展開サーバー)に移行することを最近決定しました。ただし、T2タイプはVPCでのみ開始できます。
これで、VPCをセットアップして正常に実行でき、すべてがほぼ良好です。
問題は、デプロイメントサーバーが特定のポート上のWebサーバーと通信できるようにしたいということです。以前は、これをセキュリティグループで設定していたため、これらのWebサーバーはそのポートの展開サーバーのみをリッスンし、他の誰もそれと通信できませんでした。
今、私はWebサーバーにアクセスしてセキュリティグループを編集し、VPC展開サーバーからそのサーバーグループを介してそのポートでトラフィックを許可すると言っています。ただし、Amazonは、「VPCグループと非VPCグループの間にルールを定義することはできません」と言っています。ただし、このVPC内のサーバーからのアクセスを許可すると言える他の方法は考えられません。展開サーバーのパブリックIPを許可リストにハードコーディングすることは明らかにできますが、展開サーバーを停止して開始すると、これが変わる可能性があるため、これは適切なソリューションではありません。
すべてのサーバーをVPCに移動することもできますが、これを機能させるためだけに、ライブWebサーバーを含む他のすべてのサーバーを移動することは避けたいと思います。ルールを作成し、VPCルールなどに変換します)。
では、EC2クラシックサーバーはVPC内の特定のサーバーによってのみポートxyzに接続できるというルールをどのように定義できますか?
アマゾンは発表しました ClassicLink 文字通り昨日。
私はまだそれを試す時間がなかったので、それが何ができるのか正確にはわかりませんが、そのブログ投稿から:
これで、VPCの一部またはすべてに対してこの機能を有効にしてから、既存のClassicインスタンスをVPCセキュリティグループに入れることができます。
この機能は、問題の解決に最適なようです。