とり研

iPhoneアプリ開発とかプログラミングとかの話題。

【随時更新】AWS Certified Cloud Practitioner 学習ノート

はじめに

AWSに関しては全くの素人ですが、仕事に役立ちそうだし、まずは資格を取ろうと思い立ち「AWS Certified Cloud Practitioner」試験に向けて勉強することにした。 ここでは、日々学んだことを書き留めておく。というか覚える単語が多すぎて、ノートを取らないと覚えきれない。

参考書は以下を使用しています。

※注意:これ以降のノートは自分なりに解釈して書いています(参考書の内容をそのままブログに写すのはNGだと思うので)。そのため、誤っている可能性もあります。

EC2について

インスタンスの種類

  • リザーブドインスタンス
    • スタンダード:1年/3年間の契約
    • コンバーティブル : インスタンスの属性を変更できる
    • スケジュールドリザーブドインスタンス:現在は提供されていない
  • オンデマンド
    • 都度課金して使用
  • スポット
    • 格安だが、途中で止められてしまう場合がある。

ストレージ

インスタンスストア

内蔵ハードディスクのようなイメージ。ただし、インスタンスを終了すると消えてしまう。

EBS (Elastic Block Store)

外付けハードディスクのようなイメージ。 スナップショットでS3に保存可能。フルバックアップ→その後の増分を保存。

Amazon EFS (Elastic File System )

NASのようなイメージ。複数のEC2インスタンスからアクセス可能。

DB関連

Amazon RDS

リレーショナルデータベース。フルマネージド。マルチAZ対応は設定が必要。Aurora, Postgre, MySQL, MariaDB, Oracle, SQL Server。

DynamoDB

NoSQLデータベース。フルマネージド。デフォルトでマルチAZ対応。

ElastiCache

リアルタイムデータベース。インメモリ。フルマネージド型。マルチAZ対応は設定が必要。Redis、Memchached互換。

Redshift

リレーショナルデータベース。データウェアハウス、BI向け。データ解析が得意。

EMR

ビックデータ向け。フルマネージド型。HadoopやSparkなどのフレームワーク。

Athena

S3のデータをSQLで検索できる。

S3 Select (Glacier Select)

S3やGlacier内のCSVやJSONファイルをSQLで検索できる。 ※ Athenaとの違いがよくわからない...【AWS re:Invent 2017】S3 SELECTとAmazon Athenaの違い | Skyarch Broadcasting

ネットワーク関連

AWS Global Accelerator

ユーザーからリソースまでの経路を最適化。

Amazon CloudFront

  • エッジサーバーにコンテンツのキャッシュを配置
  • API Gatewayと連携可能
  • データ転送(out)とhttp(s)リクエスト数でコストが決まる

ネットワークACL(Access Control List)

VPC内の通信アクセス(in - out)を制御する仮想ファイアウォール

ELB

ロードバランサ。

Application Load Balancer とは? - Elastic Load Balancing

コンテナ関連

Amazon ECS (Elastic Container Service)

Docker コンテナオーケストレーションサービス

Amazon EKS (Elastic Kubernetes Service)

Kubernetes で コンテナを実行

Amazon ECR (Elastic Container Registry)

Dockerコンテナイメージを保存する

アカウント関連

AWS Organizations

アカウントグループを作ったり、ポリシーを適用したり。アカウント作成の自動化。

IAM

アカウントを作成・管理

ユーザー関連 (IAM)

付与対象

  • IAM ユーザー
    • 個人
  • IAM ユーザーグループ
    • ユーザーをグループ化したもの
  • IAM ロール
    • EC2などの個々のサービス

設定

  • IAM ポリシー

AWSリソース(ユーザー・ユーザーグループ・ロール)へのアクセス権限を設定

アクセス制限

セキュリティグループ

インスタンス単位。1つ以上のインスタンス(EC2やRDSなど)への通信を制御する仮想ファイアウォール。インスタンスごとに設定できるので、通常のファイアウォールよりもきめ細かい。

ネットワークACL

サブネット単位。VPC用。サブネットへのインアウトのトラフィックを制御するファイアウォール。

認証関連

AWS STS (AWS Security Token Service)

一時的な認証でアクセスできる。

アクセスキー

AWSサービスへのプログラム呼び出しを認証するために使用される

Amazon Cognito

アプリにサインイン機能を追加できる。Apple、Facebook、Google、Amazon などのアカウントでサインイン対応。

ログ・監査関連

Amazon CloudWatch

AWSリソースが対象。 AWSリソース(EC2など)のモニタリングを行う。CPU使用率など。

Amazon CloudWatch Logs

AWSリソースが対象。 AWSリソースのログを監視してアラート通知を送ったり出来る。

AWS CloudTrail

AWSアカウントが対象。 AWSアカウント内のAPI呼び出しを記録(= AWS内のすべての操作ログ)。

AWS Config

AWSリソースの変更を自動記録。

Trusted Advisor

AWSアカウントの状態を自動的にチェックし、アドバイスをレポート。

  • コスト最適化
  • パフォーマンス
  • セキュリティ
  • etc.

Amazon Inspector

EC2インスタンスの脆弱性調査。EC2にインストールして使用。

AWS Systems Manager

利用中のインフラを可視化。AWSリソースをグループ化したりして、管理する。

コスト計算・見積もり関連

Cost Explorer

コスト分析ツール。現在の使用状況を分析する。

TCO計算ツール

見積もりを行うツール。

セキュリティ関連

Amazon Inspector

EC2インスタンスを分析し、脆弱性をチェック。テンプレートに基づいて調査。

AWS GuardDuty

AWSアカウントをモニタリング。

AWS Shield

DDos攻撃に対する保護サービス。Standard(無料)とAdvanced(有料)がある。

AWS WAF

ファイアウォール(Web Application Firewall)。 適用対象は CloudFront, ALB (Application Load Balancer)、API Gateway。

自動構築関連

AWS CloudFormation

インフラ構成をテンプレート化しておき、一括起動できる。

AWS Elastic Beanstalk

アプリケーションを自動デプロイ。ソフトウェアが対象。

AWS OpsWorks

Chef や Puppetによる構成管理。インフラ構成の自動化。

オンプレとの連携・データ移行

AWS DMS (Database Migration Service)

データベースの移行サービス

AWS SMS (Server Migration Service)

サーバーのマイグレーションサービス