AWSで提供されているサービスをすべて覚えることはできないし、すべてのサービスを触ってみることも時間的にも不可能、、しかし、試験に受かるためにはざっくりでも聞きなれないサービス名も、名前を聞いたらなんとなく思い出せるレベルである必要があると思ったので、一覧でまとめます。
実務の観点からも、あーそんなサービス聞いたことあるなと、頭の片隅で引っかかる状態にしておけば、打合せで恥をさらすこともなく、抵抗感なくAWSと付き合っていけるのではないかと思ってます。
ということで、一気にまとまめてます。
調べるにあたって参考にさせていただいたサイトなどのリンクも掲載しておきます。
※正しいサービスの理解については公式ドキュメント等をご覧ください。
サービス一覧
自動化サービス
CloudFormation
IaCサービス。自動的なプロビジョニング(構築して準備すること)をテンプレートを用いて行う。インフラ構成も自動化できる。
YAML形式やJSON形式のテキストファイルであるテンプレートに、どのようなリソースを作成するかを記述しておく。
スタックの作成をする際に、テンプレートをアップロードしておくことで、テンプレートの取りにリソースを作成する。こうして作成されたリソースのグループをスタックと呼ぶ。
テンプレートに記述されている通りに、リソースのグループであるスタックを作成する。
例えば、EC2インスタンスとS3バケットを作成するためのテンプレートを用意しておき、「スタックを作成する」という操作をすることでEC2やS3という複数のリソースのまとまりであるスタックができる。
これにより、一時的なテスト環境の構築など、スタックを何度も自動作成できる。作成したリソースを削除する時も、CloudFormationを削除すれば作成したリソースは一気に削除することも可能。
Service Catalog
エンドユーザにセルフサービスとしてスタックを作成、削除してもらえるサービス。
CloudFormationテンプレートを製品として登録しておき、エンドユーザはその中から利用したいサービスを選択するようなイメージ。
Elastic Beanstalk
Webアプリケーションの環境をAWS上に簡単に構築するためのサービス。アプリのデプロイ自動化を実現。
CloudFormationと似ているが、テンプレートを作成する必要がない。
パラメータを設定することで、ApacheやNginx、IISの実行環境も合わせて簡単に構築できる。例えば、Java開発者がすばやくAWSにアプリケーションをデプロイするのに役立つ。
キャパシティのプロビジョニング、ロードバランシング、Auto Scaling からアプリケーションのヘルスモニタリングまで、デプロイを自動的に処理。
OpsWorks
Puppet(オープンソースの構成管理ツール)を使用してEC2の構成方法を自動化するサービス。マネージド型インスタンスのサーバー設定、デプロイ、管理を自動化できる設定管理サービス。インフラのデプロイ自動化。
運用サービス
Systems Manager
EC2を中心にAWSの運用を広い範囲でサポートするサービス。パッチ適用、追加ソフトウェアのインストール、インストール済みモジュールの確認、設定変更、再起動、特定時点のバックアップなどを効率的に実行するための機能を提供。
パッチマネージャー
セキュリティパッチを適用する。パッチグループを作成することで、複数のEC2に対してまとめて対応できる。
パッチの内容は事前にパッチベースラインを定義しておく。
セッションマネージャー
SSHやEDPのインバウンドポートを許可することなく、LinuxコマンドやPowerShellコマンドを実行できる。
パラメータストア
複数のアプリケーションの共有外部パラメータとして使用。アプリケーションプログラムからSystems ManagerのAPIアクションGetParametersをSDKから呼び出して使用する。
AppConfig
ソフトウェアのConfig設定など、OSのローカルで複数の設定値のセットをファイルとして保存しておきたい場合もある。その時、そのような設定ファイルとデプロイ先の環境を一元管理できる。
バージョン管理、デプロイができる。
開発、CI/CDサービス
CI/CDとは、Continuous Integration/Continuoius Delivery,Deployの略。継続的な開発と提供の意味。
Cloud9
統合開発環境のこと。Webブラウザから数クリックで開始できる。IDEのインストールやランタイムインストール、AWSツールキットのプラグインなどが不要。
複数のIAMユーザで同じ環境を共有できる。
※2024年8月時点で、Cloud9の新規利用はできなくなっております。マネジメントコンソールから「Cloud9」で検索しても次のような画面が表示されアクセスできません。
CloudShell
マネジメントコンソールに統合されているWebブラウザのシェル。
CLIコマンドを簡単且つ無料で実行できる。
CodeCommit
Gitのマネージドサービス。
ソースコードの保管、バージョン管理、複数の開発との共有ができる。
CodeBuild
ソースコードをもとに、ユニットテストやコンパイル、パッケージングなどのビルドを行うサービス。
CodeDeploy
EC2・オンプレミス、ECS・Fargate、Lambda関数へアプリケーションを安全にデプロイする。
CodePipeline
ソース、ビルド、デプロイの各ステージをつないで自動化するサービス、ソフトウェアの変更を継続的にリリースするために必要なステップを自動化する。
CodeCommitのソースコードを更新する→CodeBuildでビルドする→CodeDeployでデプロイする、この流れをCodePipelineで自動化する。
CodeArtifact
プライベートなリポジトリ。ソフトウェアパッケージを保存公開できるサービス。
開発チームや会社内で使用している独自のライブラリなどを保存することができ、pip、npmなどでインストールできるように設定できる。
モバイルアプリ、Webアプリ向けサービス
Device Farm
Webブラウザと実際のモバイルデバイスでテストすることで、Webアプリケーションとモバイルアプリケーションの品質を向上させるアプリケーションテストサービス。
各種端末や環境を用意しなくても、クラウド上でモバイルアプリケーション、Webアプリケーションのテストができる。
Amplify
モバイル、Webアプリケーションの開発を迅速化するための開発フレームワークで、次の機能を提供。
Webアプリケーションやスマホアプリ用の開発フレームワーク。UIの構築からサーバ設定、デプロイまでをまとめて行うことができる。
・Amplify Studio
モバイルアプリケーションの構築、拡張、管理を行うためのGUI開発環境で、マネジメントコンソールが実行できる。
・Amplify Hosting
CloudFrontへのデプロイを、組み込みCI/CDワークフローによって実行する。
・Amplify CLI
amplifyコマンドで、開発環境からプロジェクトのデプロイ、更新ができる。
・Amplifyライブラリ
JavaScriptなどでの開発をすばやく行えるようにするライブラリが用意されている。
AppSync
開発者はGaraphQLおよびPub/Sub APIのマネージドサービス。
Cognito
Webアプリケーション、モバイルアプリケーションのエンドユーザを管理するサービス。
ユーザプールとIDプールの2つの機能がある。
Cognitoユーザプール
ユーザプールによって、モバイルアプリケーション、Webアプリケーションのユーザのサインアップ、サインインができる。
認証の仕組みを構築したり、認証サーバを運用する必要がない。
Cognito IDプール
IDプールは、Cognitoユーザプール、Google、FaceBookなど他のIDプロバイダーでサインインしたユーザに、認証されたロールとしてIAMロールを連携して、AWSサービスへアクセス権限が与えられる。
ユーザにAWSサービスへのアクセス権限を与えることができr、それにより、DynamoDBを参照可能であるが、編集にはサインインを必要とするような制御をかけられる。
その他のサービス一覧
〇コスト管理編
〇モニタリング・管理編
〇移行・導入編
〇人工知能・機械学習・ビジネス・分析編
まとめと参考文献
以上、ざっくり一覧整理でした。
内容は逐次更新かけていきたいと思います。
コメント