[初心者向け]200以上あるAWSサービスのどこから始めれば良いのかガイド
AWS認定トレーニング講師の平野@おんせん県おおいたです。
みんな、温泉入ってますかー? (挨拶
さて先日こんなご質問をいただきました
「AWSは200サービス、「今から学ぼう!」て人は、多さが障壁になると思うので、この辺はどういったアドバイスありますか?」
確かにそうですよね。多くの人も同じように感じてるはず! ということで、このブログを書くことにしました。
これからAWSを始める人のお役に立てればと思います。
AWSのカルチャー
最初は機能やサービスではなく、AWSの考え方を理解することから始めてください。 ここをおさえておくと、各サービスの理解がスムーズになります。 オススメはAWSチーフエバンジェリスト亀田さんの登壇ビデオです。 3点ほどピックアップしましたので、参考にしてください。
ベストプラクティクス: Well-Architected フレームワーク
サービスではありませんが、Well-Architected フレームワークも抑えておきましょう。 AWSのベストプラクティクスがまとめられたものです。 最初は難しいと思いますが、繰り返し確認していきましょう。 ブログもまとめてますので、ご参考にしてください。
基本のサービス (9個)
まずはAWSを利用する上で、おさえておきたいサービスを紹介します。これらのサービスは、AWSの利用目的にかからわず使用するものになります。
AWS グローバルインフラストラクチャ
こちらは、AWSのベースとなるものです。 - リージョン - アベイラビリティ・ゾーン (AZ) について、まずは理解しておきましょう。
AWS IAM
IAMはAWSの認証認可を管理するサービスです。 セキュリティの基礎となります。 特にIAMポリシーによるアクセス許可(認可)のコントロールと、IAMロールによる(クレデンシャル情報を使わない)アクセス権限の付与についてはおさえておいてください。
Amazon CloudWatch
モニタリングのサービスです。 サービスの状態を可視化し、異常発生時にアラートを飛ばし、問題分析を行うログを提供したりできます。 オンプレミスだとzabbixなどのアプリケーションをサーバーにインストールして利用することが多かったと思いますが、CloudWatchを利用すると簡単にモニタリングすることができ、システムの安定稼働を管理することができます。
AWS Cost Explorer
コスト(利用費)を管理するサービスです。 アラート設定をすることで予算オーバーの予防に役立てたり、コスト削減のための分析を行うことなどができます。
AWS Trusted Advisor
AWSのベストプラクティスに基づくチェックと推奨事項を提供します。 現状の課題を簡単に可視化できますので、改善活動を効率的に実施することができます。
AWS CLI
コマンドインターフェースでAWSを操作する環境です。 AWSリソースの作成、メンテナンス等の手順を、テキストベースのコマンドで管理できますので、ミスの少ない運用環境構築にオススメです。 また、CLIの仕様を理解することで、AWSリソースの理解が深まります。スキルアップを目指す方にもオススメです。
AWS CloudFormation
構築するAWSリソースをコード(JSON or YAML)で記述するサービスです。 いわゆる、IaC(Infrastructure as Code)の環境を提供します。
Amazon S3
容量無制限/低コストのオブジェクトストレージサービスです。 様々なシーンで活用されるサービスです。
AWS Lambda
サーバーレスで簡単にシンプルなプログラムコードを実行するサービスです。 様々なシーンで活用されるサービスです。
従来型アプリケーション開発 (12個)
AWS利用で一番多いのが従来型のサーバーベースのアプリケーションの実行環境としての利用です。最近ではDockerコンテナの利用も増えてきていますが、アーキテクチャとしては共通点が多いので、ここにあげたサービスを理解しておくとスムーズに開発できると思います。
Amazon VPC
AWS上で利用する仮想ネットワークです。WEBサービスのようにインターネット接続するもの、外部との接続を遮断した閉域網のネットワーク、どちらも柔軟に構築できます。
セキュリティグループ
インスタンスにアタッチして利用する、ファイヤーウォールのサービスです。 ネットワークセキュリティの基本となるサービスです。
Amazon EC2
仮想サーバーのサービスです。 従来型アプリケーションの実行環境を提供します。
Amazon EBS
EC2にアタッチして利用するファイルシステム(ブロックストレージ)です。
Amazon EFS
複数のEC2に接続できる共有ファイルストレージです。
Amazon RDS
リレーショナルデータベースのマネージドサービスです。
Amazon ElastiCache
インメモリキャッシュのマネージドサービスです。
Amazon SNS
疎結合構成で利用する、メッセージングのマネージドサービスです。
Amazon SQS
疎結合構成で利用する、メッセージキューのマネージドサービスです。
Amazon Inspector
EC2のセキュリティ状態を可視化するサービスです。OSのアップデートなどEC2の管理は利用者の責任ですが、Inspectorを利用すると「何をすべきか」をアドバイスしてくれます。
Amazon ECS
マネージド型のコンテナオーケストレーションサービスです。 AWS環境をベースに、簡単にDocker環境を構築できます。
Amazon EKS
マネージド型のコンテナオーケストレーションサービスです。 Kubernetes(k8s)のマネージドサービスになります。 k8s環境をAWS上に構築する際に利用できます。
モダンアプリケーション (2個)
クラウド環境に最適化されたアプリケーションを実行するためのサービスです。
Amazon API Gateway
WEB API環境を簡単に構築できるサービスです。
AWS Amplify
WEBやモバイルのフロントエンドデベロッパーが、安全でスケーラブルなフルスタックアプリケーションを構築するためのサービスです。
シンプルアプリ環境 (2個)
アプリケーションを簡単にデプロイしたい時に利用できるサービスです。
Amazon Lightsail
仮想プライベートサーバー (VPS) のサービスです。
AWS App Runner
コンテナ化されたウェブアプリケーション/APIを簡単にデプロイできるサービスです。
WEBアプリケーション共通 (3個)
WEBアプリケーションを構築する際におさえておきたいサービスです。
Amazon DynamoDB
フルマネージドのNoSQLデータベースです。
Amazon Route53
フルマネージドのDNSサービスです。
Amazon CloudFront
CDNサービスです。キャッシュ機能により、エンドユーザのレイテンシーを向上させ、オリジン(配信元)の負荷を低減することができます。
その他のAWSサービス
AWSには、ざっと次のようなサービスカテゴリーがあります(2021.6現在、AWSドキュメントの区分より)
- コンピューティング
- コンテナ
- ストレージ
- データベース
- セキュリティ、アイデンティティ、コンプライアンス
- 暗号化とPKI
- 機械学習
- マネジメントとガバナンス
- デベロッパー用ツール
- 移行と転送
- ネットワーキングとコンテンツ配信
- メディアサービス
- IoT
- フロントエンドウェブ & モバイル
- エンドユーザーコンピューティング
- 分析
- アプリケーション統合
- ビジネスアプリケーション
- カスタマーイネーブルメントサービス
- 衛星
- ロボット工学
- Quantum Computing
- ブロックチェーン
- AR とバーチャルリアリティ
- ゲーム開発
- 請求とコスト管理
- AWS マネジメントコンソール
- SDK とツールキット
- 全般的なリファレンス
- その他のリソース
今回挙げた以外の多くのサービスについては、興味あるカテゴリから必要に応じて学んで行くことをオススメします。(全てを理解する必要はありません。)
AWSが提供する新サービスは、ユーザの要望で開発されたものですので、「どのような課題を解決できるサービスなのか」に注目すると、理解しやすいと思います。少しずつチャレンジしてみてください。
スキルアップ参考情報
リンク集
勉強に役立つリンク集をこちらにまとめてます
AWS公式トレーニング
AWSの基本を、時間を節約して学びたい場合は、有料の公式トレーニングもオススメです。
まとめ
以上、基本となるAWSサービスをまとめてました。AWSサービスは今後もどんどん増えていくはずですが、今回紹介した基本的なサービスを理解しておけば、新しいサービスへの理解もしやすくなります。 このブログがみなさんのスキルアップにお役に立てれば嬉しいです。