AWS入門:初心者が最初に理解すべきクラウドの基本とコアサービス10選
目次
クラウドコンピューティングとは何か
クラウドコンピューティングとは、サーバー・ストレージ・データベース・ネットワークなどのITリソースをインターネット経由で「必要なときに必要な分だけ」利用するサービスモデルです。自社でサーバーを購入・設置・保守する必要がなく、使った分だけ料金を支払う従量課金制が基本です。
クラウドには3つの提供モデルがあります。
| モデル | 意味 | AWSの例 |
|---|---|---|
| IaaS(Infrastructure as a Service) | インフラ(サーバー・ネットワーク)を提供 | EC2, VPC, S3 |
| PaaS(Platform as a Service) | アプリ実行環境まで提供 | Elastic Beanstalk, Lambda |
| SaaS(Software as a Service) | ソフトウェアをサービスとして提供 | Amazon Chime, WorkMail |
エンジニアが最も関わるのはIaaSとPaaSです。EC2はIaaSの代表例で、OS・ミドルウェアはユーザーが管理します。LambdaはPaaSで、コードを書くだけでインフラ管理は不要です。
AWSコアサービス10選
1. EC2(Elastic Compute Cloud)— 仮想サーバー
AWSの中核サービスです。クラウド上に仮想マシン(インスタンス)を立ち上げ、Webサーバー・APIサーバーとして利用します。
インスタンスタイプで性能を選択します。t3.micro(vCPU 2・メモリ1GB)は無料利用枠対象で、小規模な開発・学習に最適です。本番環境ではm7i.xlarge(vCPU 4・メモリ16GB)などアプリの負荷に応じて選びます。
2. S3(Simple Storage Service)— オブジェクトストレージ
画像・動画・静的HTMLなどあらゆるファイルを保存するストレージサービスです。容量制限がなく、耐久性は99.999999999%(イレブンナイン)を誇ります。
主な用途は以下の3つです。
- 静的Webサイトホスティング(S3単体でサイト公開可能)
- ユーザーアップロードファイルの保存
- バックアップ・ログの長期保存
3. RDS(Relational Database Service)— マネージドRDB
MySQL・PostgreSQL・Aurora等のリレーショナルDBをAWSが管理するサービスです。バックアップ・パッチ適用・フェイルオーバーを自動化してくれます。自前でDBサーバーを管理する手間が大幅に削減されます。
4. Lambda — サーバーレス関数実行
関数(コード)をアップロードするだけでサーバー管理不要で実行できるサービスです。リクエストが来たときだけ起動し、アイドル時はコストゼロ。100万リクエスト/月まで永続無料枠があります。
# Lambda関数の基本構造(Python)
import json
def lambda_handler(event, context):
name = event.get('name', 'World')
return {
'statusCode': 200,
'body': json.dumps({'message': f'Hello, {name}!'})
}
5. VPC(Virtual Private Cloud)— 仮想ネットワーク
AWS上に自分専用の仮想ネットワークを構築するサービスです。パブリックサブネット(インターネットからアクセス可)とプライベートサブネット(内部通信のみ)に分け、セキュリティグループでポートを制御します。
本番環境では「ALB(ロードバランサー)をパブリックサブネットに、EC2・RDSをプライベートサブネットに」という構成が基本です。
6. IAM(Identity and Access Management)— 権限管理
AWSリソースへのアクセス権限を管理するサービスです。「誰が」「何に対して」「何を」できるかをポリシーで定義します。
最重要ルール: ルートアカウントで日常作業をしてはいけません。必ずIAMユーザーを作成し、最小権限の原則に従ってポリシーを付与します。
7. CloudFront — CDN(コンテンツ配信ネットワーク)
世界中のエッジロケーション(450以上)にコンテンツをキャッシュし、ユーザーの近くから高速配信するサービスです。S3の静的ファイルにCloudFrontを組み合わせることで、世界中に低レイテンシで配信できます。
8. DynamoDB — NoSQLデータベース
フルマネージドのキーバリュー型NoSQLデータベースです。1桁ミリ秒のレイテンシで高いスループットを実現します。RDSのような固定スキーマが不要で、ゲームのスコアボード・IoTデバイスデータ・セッション管理などに向いています。
9. ECS(Elastic Container Service)— コンテナ管理
DockerコンテナをAWS上で実行・管理するサービスです。「Fargate」モードを使えばサーバー管理が不要になります。ECSはAWS独自のオーケストレーター、マネージドKubernetesが必要ならEKSを選びます。
10. Route 53 — DNSサービス
ドメインの購入からDNSレコード管理まで行うサービスです。ヘルスチェック機能を持ち、障害時に自動フェイルオーバーも可能です。example.comをALBやCloudFrontに向けるAliasレコードの設定が典型的な使い方です。
AWS無料利用枠の活用方法
AWSは新規アカウント作成後12ヶ月間、主要サービスを無料で利用できる枠を提供しています。
| サービス | 無料枠の内容 |
|---|---|
| EC2 | t2.microまたはt3.micro 750時間/月 |
| S3 | 5GB、PUT/GET各2万回/月 |
| RDS | db.t3.micro 750時間/月 |
| Lambda | 100万リクエスト/月(永続無料) |
| CloudFront | 1TB転送/月(永続無料) |
| DynamoDB | 25GB ストレージ(永続無料) |
注意点: EC2の750時間は「1インスタンスを24時間×31日=744時間」なので、1台なら月内ほぼフルに使えます。ただし複数台起動すると合計時間が超過するため注意が必要です。
AWS CLIのセットアップ
コマンドラインからAWSリソースを操作するためのツールです。
# macOS (Homebrew)
brew install awscli
# インストール確認
aws --version
# aws-cli/2.x.x Python/3.x ...
IAMでアクセスキーを発行し、以下で設定します。
aws configure
# AWS Access Key ID [None]: AKIAXXXXXXXXXXXXXXXXX
# AWS Secret Access Key [None]: xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx
# Default region name [None]: ap-northeast-1
# Default output format [None]: json
設定後の基本コマンド例です。
# S3バケット一覧を表示
aws s3 ls
# バケット内のファイル一覧
aws s3 ls s3://my-bucket/
# ファイルをS3にアップロード
aws s3 cp ./index.html s3://my-bucket/
# EC2インスタンス一覧
aws ec2 describe-instances --query 'Reservations[].Instances[].{ID:InstanceId,State:State.Name}' --output table
AWSを学ぶ順序
初心者が効率よく学ぶ順序として、以下のステップを推奨します。
- IAM → セキュリティの基礎。ユーザー・ロール・ポリシーを理解する
- VPC → ネットワーク構成の基礎。サブネット・セキュリティグループを理解する
- EC2 + S3 → 最も使われるコンピューティングとストレージ
- RDS → データベースの管理を体験する
- Lambda + API Gateway → サーバーレスアーキテクチャを体験する
- CloudFront + Route 53 → 本番環境のネットワーク構成
まずは無料利用枠でEC2インスタンスを立ち上げ、Nginxを動かしてみることが最速の理解への近道です。
AWSではじめるクラウド開発入門
AWSの基礎からEC2・S3・RDS・Lambdaの実践的な使い方まで、ハンズオン形式でわかりやすく解説。初心者がAWSを体系的に学ぶのに最適な一冊です。
※ アフィリエイトリンクを含みます
AWS認定ソリューションアーキテクト アソシエイト問題集
AWS SAA-C03試験対応の問題集。サービスの仕組みを問題演習で定着させながら資格取得を目指せます。実務での設計判断力も身につきます。
※ アフィリエイトリンクを含みます
まとめ
AWSのコアサービスを整理すると、役割が明確になります。
- コンピューティング: EC2(VM)、Lambda(サーバーレス)、ECS(コンテナ)
- ストレージ: S3(オブジェクト)、EBS(ブロック)
- データベース: RDS(SQL)、DynamoDB(NoSQL)
- ネットワーク: VPC、CloudFront、Route 53
- セキュリティ: IAM
無料利用枠を使いながら実際にリソースを作成・削除を繰り返すことで、クラウドの感覚を身につけましょう。最初の目標は「EC2を立ち上げてWebサーバーを公開し、不要になったら削除する」という基本サイクルをマスターすることです。