年次のre:Inventで、AWSはAWS CloudShellと呼ばれるAWSコンソールから利用可能なLinuxターミナルを導入した。CloudShellを使用すると、顧客の組織の運用チームと開発者は、ブラウザでAWS対応のシェルプロンプトを使用してAWSリソースにアクセスできる。
多くの組織は、AWSインフラストラクチャとリソースのデプロイメントを自動化するためにInfrastructure as Code (IaC) を実践している。ただし、管理者と開発者は、トラブルシューティング、迅速な修正、または新機能の実験のために、コマンドラインでAWSリソースと対話する必要がある。
摩擦を減らしてAWSとのやり取りをできるだけ簡単にするために、同パブリッククラウドベンダはブラウザベースのシェルAWS CloudShellをリリースした。このクラウドシェル機能により、管理者と開発者はそのままでAWSコマンドを実行できる。AWS CloudShellには、Command Line Interface (CLI) (v2) とOSにAmazon Linux 2がネイティブにインストールおよび構成されている。Bash、zsh、PowerShell、エディタ、Gitソース管理、npm/Java、pip/Pythonのパッケージ管理などシェルのコマンドラインユーティリティがすべて含まれている。
出典: https://aws.amazon.com/cloudshell/
AWS CloudShellにアクセスする場合、管理者または開発者は、コンソールへのログインに使用されるのと同じ認証情報を使用して事前認証される。管理者と開発者は、最大1GBのファイルをCloudShellホームディレクトリ ($HOME) にアップロードおよびダウンロードでき、$HOMEに保存されているファイル、スクリプト、およびツールはセッションの間保持される。さらに、CloudShellにはAWSリージョンごとに1GBの永続ストレージが付属しており、ユーザは提供されたルートアクセスを使用して必要に応じて他のツールをインストールできる。また、ネットワークアクセスに関しては、セッションはインターネットへのアウトバウンド接続を確立できるが、インバウンド接続は許可しない。さらに、セッションは現在、プライベートVPCサブネット内のリソースに接続できない。ただし、AWSはブログ投稿で短期的なロードマップについて言及した。
Hacker Newsのスレッドの回答者は、AWS CloudShellを使用する利点について次のように説明した:
CloudShellのポイントは、AWS CLIを設定したり資格情報を設定したりせずに簡単に使用できることです。ただし、これを独自のターミナルから使用するには、ソフトウェアをインストールしてから認証情報を設定する必要があります。そうすれば、AWS CLIをインストールして設定するのとまったく同じになります。
また、AWS CloudShellのRedditのスレッドの回答者は次のように述べた:
主な価値は、通常の作業マシンではないマシンを使用していて、CLI自体をインストールして資格情報を追加せずにCLIにすばやくアクセスしたい場合です。また、CLIを定期的に使用したいが、システムにインストールしていない場合にも役立ちます。たとえば、監査用の情報をUIからよりもCLIからエクスポートする方が簡単です。多くのAWSサービスと同様に、すべての人がそれらを使用するわけではありませんが、一部の人や状況では非常に役立ちます。
Linuxシェルを備えたパブリッククラウドプロバイダはAWSだけではない。しかも、同社は、2017年にAzureプラットフォームのCloud Shellをリリースし、Ubuntuインスタンスで実行している、Microsoftに追いついた。さらに、Googleには、Cloud Platform (GCP) 上のKubernetes管理用にkubectlがプリインストールされたCloud Shellがある。AzureとGCP Cloud Shellはどちらも5GBの永続ストレージを備えており、AWS CloudShellと同様の管理者の機能とメリットを提供する。
AWS CloudShellは現在、米国東部 (バージニア州北部) 、ヨーロッパ (アイルランド) 、アジア太平洋 (東京) などのいくつかのAWSリージョンで利用可能であり、残りのリージョンは短期的なロードマップにある。さらに、顧客は各リージョンで最大10個の同時シェルを無料で使用でき、CloudShellでアプリケーションを作成して実行するために使用する他のAWSリソースに対してのみ料金を支払う。最後に、AWS CloudShellの詳細はユーザガイドで入手でき、非公式のVS CodeのAWS CloudShellプラグインがGitHubで入手できる。