AWS

AWS CloudShellをVPC環境下で起動してみた


はじめに

こんにちは、ディーネットの山田です。

CloudShell が VPC で実行できるようになっていたので、早速試してみました。

Using AWS CloudShell in Amazon VPC

AWS CLI 実行の踏み台環境が社内にあったりしますが、 CloudShell が VPC 起動に対応したことで少しずつ CloudShell の幅が広がっている気がします。

構成図

VPC 内で CloudShell が起動したかどうか確かめたいので、以下のような構成を作成して検証してみました。

CloudShell を VPC で使ってみる

CloudShell 専用のセキュリティグループを作成する

「default」でも利用は可能ですが、正しく使う場合は専用に作成しましょう。

以下のサンプルでは、アウトバウンドルールを私の考える最低限のルールのみに制限しています。

VPC で CloudShell を起動する

VPC 環境で CloudShell が起動するように選択する。

必要なパラメータを入れる

対象にしたい VPC と Subnet と セキュリティグループ(先ほど作成したもの)を選択する。

CloudShell が起動する

私の環境だと体感1分程度で起動できました。

(検証のためになんども CloudShell 周りを触っていたので、その影響があるかもしれません)

少し試してみる

本当に CloudShell は、VPC で起動しているのか裏取り

[cloudshell-user@ip-10-10-138-233 ~]$ curl http://checkip.amazonaws.com/
57.181.11.61

57.181.11.61は、本当に NAT ゲートウェイの IP アドレスなのか?

★ちゃんと、NAT ゲートウェイを経由しておりました。

制限事項

AWS ドキュメントに書かれていることにはなりますが、以下がございます。

  • IAM プリンシパルごとに最大 2 つの VPC 環境を作成できます。
  • VPC 環境の [アクション] メニューでは、CloudShell のアップロードおよびダウンロード オプションは使用できません。
  • VPC 環境では永続的なストレージはサポートされません。ストレージは一時的なものです。アクティブな環境セッションが終了すると、データとホーム ディレクトリは削除されます。
  • AWS CloudShell 環境は、プライベート VPC サブネット内にある場合にのみインターネットに接続できます。
  • お客様のアカウントにマネージド CloudShell 環境を提供するために、AWS は基盤となるコンピューティングホストの次のサービスへのネットワークアクセスをプロビジョニングする場合があります。

まとめ

VPC を利用しない CloudShell と比較して、現時点では以下を考慮する必要がありますね。

  • CloudShell 単体で、ファイルのアップロードおよびダウンロードができない。
  • CloudShell 単体で、永続的なストレージがサポートされない。

どちらも、AWS CLI を使って、S3 などと組み合わせることで、回避はできそうです。

返信を残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA