😺

SOA

に公開

Amazon RDS

Amazon RDS Performance Insights

詳細な待機イベントによって分類された負荷を表示する
待機イベント:データベースインスタンスがリソースの処理を待機している状況を示すイベント

Amazon Auroraバックトラック機能

データベースクラスターを72時間までの指摘した時間に復元

Amazon Auroraポイントインタイムリカバリ

新しいデータベースクラスターに復元

特徴 バックトラック ポイントインタイムリカバリ(PITR)
目的 過去の状態への即時巻き戻し 過去の時点を基にした新しいインスタンスの作成
リカバリ対象 現在のデータベースの状態を変更 新しいデータベースインスタンスを作成
リカバリ範囲 最大72時間前まで バックアップ保持期間内(最大35日間)
データベースの影響 現在のデータベースの状態を直接変更 現在のデータベースには影響なし
スキーマ変更の対応 サポート外(DDL操作は巻き戻せない) サポート(DDL含むすべての状態をリカバリ可能)
処理速度 高速(すぐに過去の状態に戻る) 遅い(新しいインスタンス作成に時間がかかる)
用途 誤操作やテスト環境での迅速なリセット データ損失や障害からの復旧、特定時点のデータ参照

S3

静的サイトをホスト

  • index.htmlをS3にアップロード
  • Block all public accessをオフにし、バケットポリシーのs3:GetObject許可する
  • バケット全体ではなくオブジェクトへのアクセス許可をする

オブジェクトロック

上書きや削除から守る(デフォルトの指定は90日間)

バージョニング

更新は旧バージョン、削除は削除マーカ付きとして保存される

アクセスサーバログ

リクエスト送信元を調査できる

エンドポイントの種類

エンドポイント種類 概要 特徴 使用例
パブリックエンドポイント インターネット経由でアクセスするデフォルトのエンドポイント。 - URL形式: https://s3.<リージョン>.amazonaws.com
- インターネット経由。
S3バケットにインターネット上のユーザーやアプリケーションからアクセスする場合。
ゲートウェイ型VPCエンドポイント VPC内からS3へプライベート接続するためのエンドポイント。 - インターネットを経由せず、AWSバックボーンネットワークを利用。
- S3とDynamoDB専用。
EC2やLambdaがインターネットなしでS3にアクセスする場合。
インターフェース型VPCエンドポイント プライベートIPアドレスを使用してVPC内からS3に接続。 - ENIを使用。
- プライベートDNSを有効化すると標準のS3 URLでプライベート接続可能。
AthenaやGlueがVPC内からS3にアクセスする場合。
アクセスポイント バケットごとに複数のカスタムエンドポイントを作成可能。 - URL形式: <アクセスポイント名>-<アカウントID>.s3-accesspoint.<リージョン>.amazonaws.com
- VPCアクセスポイントで特定のVPC内アクセスを制限可能。
チームやアプリケーションごとに異なるアクセス制御ポリシーが必要な場合。
リージョン固有エンドポイント 特定のリージョンでのみ使用されるエンドポイント。 - URL形式: https://s3.<リージョン>.amazonaws.com
- データがリージョン内にとどまることを保証。
データを特定のリージョンに閉じ込めておきたい場合。
Transfer Accelerationエンドポイント 地理的に分散したクライアントから高速アップロードを提供。 - URL形式: https://<バケット名>.s3-accelerate.amazonaws.com
- CloudFrontを利用した転送高速化。
グローバルアプリケーションで大量のデータを高速にアップロードする必要がある場合。

S3ゲートウェイエンドポイント

S3専用のVPCエンドポイント
インターネットに出ずS3に接続
1つのゲートウェイで複数のS3にアクセス

S3 Block Public Access

公開をしない
AWSアカウントレベルで設定する

s3 cpコマンド

マルチパートアップロード

S3 Batch Operations

複数のオブジェクトに対してオペレーションを実行(タグの書き換え等)

S3 Transfer Acceletion

エッジロケーションとS3の間で高速なバックボーンネットワークを利用してデータ転送を最適化する

AWS Compute Optimizer

リソースの設定、使用率のメトリクスを分析、コスト削減とパフォーマンス向上の推奨事項を生成

Compute Savings Plans

AWSでのコンピューティングリソースのコスト削減を支援するための柔軟な料金プランです。このプランは、利用量に基づくディスカウントを提供し、特定のインスタンスタイプやリージョンに縛られずに、AWSの幅広いコンピューティングサービスでコスト効率を最大化できる。

Amazon Elastic File System(Amazon EFS)

マウントターゲットはAZ毎に作成する必要がある

Amazon Trusted Adviser

AWS Supportプラン(Basic、Developer、Business、Enterprise、Enterprise On-Ramp)によって検査項目量が異なる
使用料がサービスクォータを超えるときにCloudWatchアラームと連携しSNS経由でアラート

CloudFormation

E2起動時にInsufficientInstance Capacityエラー

  • AZ内のインスタンス容量超過している
    インスタンスタイプを低性能にする、別のAZで起動などで対応する

E2起動時にInstance LimitExceededエラー

  • リージョンで実行できるインスタンスの上限に達している
    Service Quotasでクォータの引き上げを申請する

VPCは指定不要

です。

リソースのプロビジョニング順を制御

DpendOn属性で制御する

ロールバックする

CreactionPolicyのタイムアウトを設定する

condition

スタックからリソースを作成する際に作成条件を適用する

StackSets

複数のAWSアカウントやリージョンに対して、統一したインフラの展開や管理を行うための機能

OUTDATEDエラー

名前が一意でないグローバルリソースを作成しようとした場合に発生

Mappingセクション

テンプレート内で定義されるキーと値のペア(マッピング)を格納するセクション
これにより、特定の条件に基づいて異なる設定を適用したり、リソースを動的に設定したりすることができる。
環境やリージョン、アーキテクチャに応じてテンプレートのパラメータをカスタマイズするのに役立つ

デフォルトのVPCの数(クォータ制限)

5つまで

別リージョンでのデプロイが失敗

  • 別リージョンで利用できないAMIを参照
  • 別リージョンに存在しないサービスをリクエスト

プロビジョニング失敗時の動作

ロールバック(デフォルト)

CloudFront

更新されたファイルをすぐに反映

古いオブジェクトの無効化(キャッシュを削除)

ブラウザが最新のオリジンであるS3の内容を取得する

max-age=0 ブラウザは常に最新のオブジェクトを取得
Cache-ControlヘッダーフィールドをS3に追加する(ブラウザのキャッシュ制御)

ALBとの組み合わせでセッション管理

  • CloudFrontディストリビューションのキャッシュ動作設定で、Cookie転送を構成する
  • ALBのターゲットグループで、スティッキーセッションを有効化する

グローバルサービス

グローバルサービスのためリージョン指定ではない

Behavior機能

リクエストをどのように処理するかを定義するルール。
特定のパスやファイルタイプに応じて、キャッシュ設定やオリジンへのリクエスト処理方法をカスタマイズできる。

オブジェクトの自動圧縮

特定のタイプのファイルを圧縮してダウンロードを短縮化

Managed-CachingDisabled

キャッシュを完全に無効化するためのCloudFrontマネージドポリシー

Managed-CachingOptimized

高パフォーマンスのためにキャッシュを最適化する設定。
静的コンテンツ(画像、CSS、JavaScriptなど)の配信。
頻繁に変更されないデータ。

開発環境の整備

  • CloudFormationテンプレートを開発者に提供
  • 夜間帯は消す場合は、EvnetBridgeとLambdaで消す

NAT Gateway

  • セキュリティグループは不要
  • AZに依存しない

インターネットにアクセスできない

  • 通信プロトコルがサポートされていない(TCP、UDP、ICMPをサポート、GRE、IPSecは非サポート)
  • 状態がAvailable(利用可能)ではない

Amazon Route 53

ALIAS

  • Route 53の独自機能
  • ドメイン名を別のドメイン名に関連付ける(EC2のドメイン名をALBに向ける)
  • IPアドレスを直接返すのでCNAMEより効率的(CNAMEはDNSクエリが2回発生する)

位置情報ルーティング

地理的場所(クエリの送信元)に基づいて最適なルーティング

複数リージョンで冗長構成

Aレコード、フェイルオーバールーティングポリシー、ヘルスチェック機能

インバウンドリゾルバーエンドポイント

外部ドメイン(VPCの外部)からRoute53 Resolverを利用してVPC内のインスタンスの名前解決を行う
(オンプレミスのDNSサーバからのクエリをRoute53に転送する)

アウトバウンドリゾルバーエンドポイント

VPC内のインスタンスが名前解決を行う

ヘルスチェック

ルーティングやヘルスチェックはプライマリを指定する

ゾーンアペックス(Zone Apex)をALB配下のWebサーバにマッピング

Zone Apexに対するエイリアスレコードを設定
(AレコードやAAAAレコードはALBのようにIPアドレスが動的に変更されるので不向き)
ゾーンアペックス(Zone Apex)とは、DNSのドメインゾーンにおける最上位のドメイン(ルート)を指す

AWS Organizations

サービスコントロールポリシー(SCP)

  • 組織のAWSアカウントの使用許可を一元管理する
  • 未承認のリージョンにEC2をプロビジョニングできないようにするには、ec2:Runinstanceアクションを拒否

コスト配分用タグキー

リソースに配分されているタグを、コスト配分タグとしてアクティブ化することで料金を把握できる
コスト配分タグをアクティブにできるのは、管理者アカウントのみ

組織単位(OU)でグループ化して管理負荷を軽減

AWS Personal Health Dashboard

  • AWSのメンテナンス予定を確認できる
  • 自身のAWS環境に影響を及ぼすイベント(メンテナンスや障害情報)を確認できる

AWS Service Health Dashboard

AWS全般のステータス(リージョン規模の障害等)を確認できる

IAM

IAMポリシーのCondition要素でタグを指定してアクセス制御できる

AssumeRole

Security Token Service (STS)のAPI操作で、指定したIAMロールを一時的に引き受けるためのアクション

ElastiCache Memcached

CreateCache Cluster API

Memcashedクラスターはノード変更できないのでスケールアップ/ダウンする際は新規にクラスターを作成する

ElastiCache Reids

Memcashedよりも高可用(マルチAZや自動フェイルオーバー機能あり)

エビクション(キャッシュが満杯の状態でエントリーを削除)

対応策は、ノードの追加、ノードのサイズを増やす

AWS Service Catalog

CloudFormationと連携してガバナンスが適用されたリソースをプロビジョニング
インポート済みポートフォリオは、ローカルポートフォリオに追加できる

CloudWatch

CloudWatchエージェント append_dimensisonsフィールド

CloudWatchエージェントによるメトリクス収集時にカスタムディメンションを追加するための機能。
構成ファイル内にappend_dimensisonsフィールドを追加し識別子として機能させる

CloudWatchアラーム

  • 異常検知に基づくアラーム
    過去のメトリクスデータを分析し予想されるモデルを作成

  • 欠落データを違反として扱うアラーム
    メトリクスのデータが欠落(例えば、予期しないデータの欠如)した場合に、アラームをトリガーする

StatusCheckFailed_Systemメトリクス

基盤となるハードウェア障害を検知できる

カスタムメトリクス

EBSボリューム

Amazon EFS

既存のファイルシステムを暗号化する場合は、新規作成して暗号化してコピーする

AWS Resource Groups

AWSリソースを論理的にグループ化し、一元的に管理・操作できるサービスです。リソースをグループ化することで、プロジェクト、環境、または用途別にリソースを効率的に管理し、特定の操作やモニタリングを簡単に行えるようになる。

Tag Editor

指定したリソースタイプのタグを一括表示、編集できる(タグ付き、タグ無しの洗い出しも可能)

Lambda

ログの出力

  • デフォルトでCloudWatch Logsに出力
    (CloudWatchのアイテムを作成する権限は必要)

Invocationsメトリクス値

Lambada関数が呼ばれた回数(処理がされなかったことを監視すること等に利用できる)

DirectConnect

パブリック仮想インターフェース

Amazon S3、Amazon EC2、Amazon DynamoDBなどのインターネット経由でアクセス可能なAWSサービスへの接続に使用される

プライベート仮想インターフェース

VPC内のインスタンスやその他のプライベートリソース(例: プライベートサブネットにあるEC2インスタンス)への接続に使用される

セキュリティグループ

拒否設定はできない

特徴 セキュリティグループ ネットワークACL
適用範囲 リソース単位(例: EC2インスタンス、RDS) サブネット単位
ステートフル/ステートレス ステートフル ステートレス
ルールの種類 許可(Allow)のみ 許可(Allow)と拒否(Deny)の両方
トラフィック方向 インバウンドとアウトバウンドを個別に設定 インバウンドとアウトバウンドを個別に設定
適用順序 リソースにアタッチされたすべてのルールが適用 数字の小さい順にルールが評価される
ユースケース リソース単位でのセキュリティ制御 サブネット全体でのトラフィック制御

EC2

スプレッドプレイスメントグループ

1つ1つのインスタンスが別々のハードウェア上で起動する

特徴 クラスター(Cluster) スプレッド(Spread) パーティション(Partition)
配置戦略 密接に配置(同一AZ内) 異なる物理ハードウェアに分散配置 パーティション単位で異なるラックに配置
主な目的 高パフォーマンス 高可用性 障害の影響を隔離
最大インスタンス数 制限なし 各AZで最大7インスタンス パーティションごとに複数配置可能
適用例 HPC、ビッグデータ、マルチキャストアプリ ミッションクリティカルなアプリケーション 分散ストレージ、大規模データ処理
障害の影響範囲 AZ内の全インスタンスに影響 個々のインスタンスのみ パーティション単位で影響
ネットワーク性能 高性能(低レイテンシー、高帯域幅) 標準的なネットワーク性能 標準的なネットワーク性能

停止と再起動

  • 停止してから起動すると別のハードウェアで起動する
  • 再起動の場合は同じハードウェアで起動する

AZの変更

作成時に決まり変更できない
変更する場合は変更したいEC2からAMIを作成し起動する必要がある

ユーザデータ

EC2インスタンスの初回起動時に実行されるスクリプトやコマンドを指定するための設定。
これを活用することで、インスタンスのプロビジョニングや初期設定を自動化できる。

ネットワークACL

ステートレス(戻りの通信も書く必要がある)

Amazon EBS

高速スナップショットの復元機能

初回アクセス時におけるI/Oレイテンシーが無い

特徴 通常のスナップショット復元 高速スナップショット復元(FSR)
データアクセスのパフォーマンス 初期アクセスで遅延が発生 即時フルパフォーマンス
データ復元の仕組み オンデマンドでS3からブロックを取得 事前にすべてのブロックをプリロード
コスト スナップショット保存料金のみ スナップショット保存料金+FSR有効化料金
主なユースケース バックアップ、アーカイブ データベース、緊急リカバリ、パフォーマンス重視の環境

ボリューム変更

1.AWS CELでEBSのボリュームを変更
2.OSにマウントされたファイルシステムを(ディスク管理ツールで)拡張する

EBSボリュームの読み取り、書き込みメトリクスをに基づくアラート

CloudWatchアラームでVolumeReadBytesとVolumeWriteBytesメトリクスを使用

プロビジョンドスループットモード

一貫したスループットを保証(50MB/秒)

AWS Config

  • ルールに準拠していないアクションを制御(自動修復)
  • EventBridgeと連携してSNS等を経由して通知
  • AWS Configルールで設定変更の監視と移動修復
  • AWS Systems Manager Automationと連携して非準拠への対応(タグを付けるなど)

AWS KMS

ローテーション

自動キーローテーションは1年、短くするには手動(新しいCMKを作成する)

キーポリシーによるアクセス制御

CMKに対するアクセス制御ができる

Amazon GuardDuty

AWS および主要なサードパーティーの ML と統合脅威インテリジェンスを組み合わせて
AWS アカウント、ワークロード、およびデータを脅威から保護する

AWSマネジメントコンソールの不正アクセスを監視

UnauthorizedAccess:IAMUser/ConsoleLoginSuccess.Bの結果を監視する

デプロイ

Immutable

ELB配下にインスタンスを追加してアップデート

Rolling with addtional batch

インスタンスを追加してアタッチとデタッチを繰り返す

CloudTrail

ファイル整合性機能

操作ログファイルの変更・削除の検査が可能となる

整合性検証を有効

CloudTrailのダイジェストファイルからハッシュ値を検証し、削除や改ざんを追跡

ログの検索

Athenaを使用してログを検索できる

AWS Systems Manager

Session Manager

  • EC2やオンプレサーバにSSH接続やPowerShell接続ができる
  • EC2インスタンス上でのssm:StartSessionアクションを許可する必要がある
  • SSM Agentのインストールが必要

アクセス権

Systems Managerに対するアクセス権をIAMインスタンスプロファイルをEC2にアタッチすることでSystems ManagerからEC2にアクセス可能となる

Cost Explorer

コスト配分用のユーザ定義タグを、コスト配分タグとしてアクティブ化することでタグ別に利用料金を把握できる

AWC CLI

MFA

get-session tokenコマンドで一時的な認証情報を使用することをユーザに要求する

AWS GuardDuty

AWSアカウントのセキュリティ状況をモニタリング、通知する

Egress-Onlyインターネットゲートウェイ

VPCからインターネット通信のみ可能となる

AutoScaling

ソースIPの確認

ソースIPの情報は、ELBのログを確認する

Route53を使ったフェイルオーバー

ALBをCloud Watchで監視するヘルスチェックを利用して、Route53フェイルオーバーを構成する

ヘルスチェックが失敗したい際に警告

UnHealthyHostCountメトリクスでCluodWachアラームを作成、0より大きいときにSNS通知を送信する

Billing and Cost Manager

請求額の閾値を超える際に、アラームを送る

課金アラートを有効→CloudWatchで課金アラームをセット→SNSメッセージを発行

VPCフローログ

拒否、許可、すべてから選択して設定。
一度設定すると変更不可。(新しいフィルタを作成する必要がある)

EC2

基本モニタリング(Standard Monitoring)

概要:デフォルトで有効化されるモニタリング機能。
特徴:5分間隔でメトリクスを収集。無料で利用可能。
取得可能なメトリクス例:
CPU使用率(CPUUtilization)
ネットワークの入出力(NetworkIn、NetworkOut)
ディスクの読み書き(DiskReadBytes、DiskWriteBytes)

詳細モニタリング(Detailed Monitoring)

概要:より高頻度(1分間隔)でメトリクスを収集するオプション。
特徴:詳細なリアルタイムモニタリングが可能。
有料(EC2インスタンスのタイプやリージョンにより料金が異なる)。
主なユースケース:
高トラフィックアプリケーションのパフォーマンス監視。
自動スケーリングポリシーの迅速なトリガー設定。

AWS Cost and Usage Report

AWSで発生するコストとリソースの使用状況を詳細に追跡し、分析するためのレポート。AWSアカウント全体のコスト管理において、最も包括的で詳細なデータを提供する。

Amazon Macie

AWSが提供するデータ保護とプライバシーの管理を支援するサービス。主にAmazon S3に保存されているデータのスキャンを行い、機密情報(PIIやクレジットカード情報など)の検出、モニタリング、保護を自動化する。

Amazon GuardDuty

AWSが提供する脅威検出サービスです。AWS環境全体を継続的にモニタリングし、不正アクセスや悪意のある行動など、セキュリティリスクを検出する。GuardDutyは、インフラ管理を必要としない完全マネージド型の脅威インテリジェンスサービス。

GuardDutyは以下のデータソースを分析する:

  • VPCフローログ: ネットワークトラフィックのログ。
  • DNSクエリログ: 不審なドメイン名へのクエリを検出。
  • AWS CloudTrailイベントログ: AWS APIコールやアカウント操作のログ。

AWS PrivateLink

同一リージョン内のみ

NATゲートウェイ

特徴 インターネットゲートウェイ(IGW) NATゲートウェイ
通信方向 双方向通信(インバウンドとアウトバウンド) アウトバウンド通信のみ
サブネットタイプ パブリックサブネット プライベートサブネット
リソースのIP パブリックIPまたはElastic IPが必要 プライベートIPのみでOK
セキュリティ インターネットから直接アクセス可能 インターネットから直接アクセス不可
主な用途 公開ウェブサーバーやインターネットアクセスが必要なリソース プライベートなデータベースやアプリケーションサーバーのアウトバウンド通信
ルートテーブル設定例 0.0.0.0/0 → IGW 0.0.0.0/0 → NATゲートウェイ

AWS Systems Manager

ssm:StartSession

AWS Systems Manager(SSM)Session Manager を利用して、EC2インスタンスやオンプレミスのサーバーへのリモートセッションを開始するためのアクション。このアクションを許可することで、ユーザーまたはシステムはSession Managerを使用して対象のリソースに接続できる。

SSMManagedInstanceCore

AWS Identity and Access Management (IAM) ポリシーの1つで、AWS Systems Manager (SSM) のマネージドインスタンスとして EC2 インスタンスやオンプレミスサーバーを登録・操作するために必要なアクセス権を提供する。

EC2にアクセス

  • EC2にSSMエージェントをインストール
  • EC2からSystems Managerにアクセスするネットワーク疎通や権限(IAMインスタンスプロファイル)が必要

AMI

起動設定と起動テンプレートの違い

項目 起動設定 起動テンプレート
変更の柔軟性 変更不可(再作成必要) 変更可能(バージョン管理)
設定の詳細 基本設定のみ 高度な設定も可能
AMIの指定 1つのみ 複数のAMIも選択可能
使用例 レガシーなAuto Scaling用 モダンなAWSリソース全般

Discussion