カテゴリー: tech

  • AMI

    AMI

    AMI起動タイプ

    すべての AMI が Amazon EBS-Backed と Instance Store-Backed のいずれかに分類されます。前者は、AMI から起動されるインスタンスのルートデバイスが、Amazon EBS スナップショットから作成される Amazon EBS ボリュームであるということです。後者は、AMI から起動されるインスタンスのルートデバイスが、Amazon S3 に格納されたテンプレートから作成されるインスタンスストアボリュームであるということです。

    https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/ComponentsAMIs.html#storage-for-the-root-device

     

    解説の図は以下がわかりやすい

    Instance store-Backed

    EBS-baced

    https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/RootDeviceStorage.html

     

    その中でも、準仮想化 (PV) およびハードウェア仮想マシン (HVM))というのが存在する。

    種別でいうと、以下の4種類が存在している

    • HVM instance Store
    • PV instance Store
    • HVM EBS-Backed
    • PV EBS-backed

    HVMについて

    この仮想化タイプでは、ベアメタルハードウェア上でオペレーティングシステムが動作するのと同様に、修正を行わなくても仮想マシン上でオペレーティングシステムを直接実行することができます。

    (中略)

    HVM のゲストは、ホストシステム上の基盤となるハードウェアへの高速なアクセスを可能にするハードウェア拡張を利用できます。

     PVについて

    特別なハードウェア拡張 (拡張ネットワーキングや GPU 処理など) を利用できません。従来、PV のゲストは HVM のゲストよりも多くの場合にパフォーマンスが向上しました。ただし、HVM 仮想化の機能強化や HVM AMI で PV ドライバが利用可能になったことにより、このようなパフォーマンスの向上はなくなりました。PV-GRUB の詳細や Amazon EC2 での使用方法については、「独自の Linux カーネルを有効にする」を参照してください。

    次の旧世代のインスタンスタイプは、PV AMI をサポートします: C1、C3、HS1、M1、M3、M2、および T1。現行世代のインスタンスタイプは PV AMI をサポートしません。

    次の AWS リージョンでは、PV インスタンスをサポートしています: アジアパシフィック (東京)、アジアパシフィック (シンガポール)、アジアパシフィック (シドニー)、欧州 (フランクフルト)、欧州 (アイルランド)、南米 (サンパウロ)、米国東部(バージニア北部)、米国西部 (北カリフォルニア)、米国西部 (オレゴン)。

    https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/virtualization_types.html

    上記より抜粋

    まとめると、HVMはOSを直接操作することができるので、低レイテンシで操作が可能。

    一方、PVはエミュレートするようなイメージで、ワンステップを挟む必要があるので、HVM以上のパフォーマンスは出せない(と思う)また、サポートしていないインスタンスタイプがある。

  • Auto-Scaling group

    Auto-Scaling group

    Auto-ScalingがEC2を終了する場合の挙動

     

    • SNS通知を送るように設定可能
    • 2つのEC2インスタンスが実行しているAZのインスタンス1つを終了する

      Auto Scalingの起動設定

    Auto Scalingを使用していいるインスタンスのインスタンスタイプを変更する事が可能。

     

  • CloudFront

    CloudFront

    CloudFrontのディストリビューションは、異なるAWSリージョンのオリジンを持つことはできない。

     

  • S3

    S3

    暗号化について

    暗号化するには

    • AWSキー管理サービスの管理キーによるAmazon S3サーバーサイド暗号化を使用する
    • Amazon S3のユーザ提供キーによるサーバサイド暗号化(SSE-C)を使用する
    • 自分のマスターキーを使用して、Amazon S3に取り込む前に、クライアント側のデータを暗号化する

    正常時の動作

    HTTP 200結果コードとMD 5チェックサムが、操作が成功したことを示す。

    暗号化について

    保存データをネイティブに暗号化することが可能。

    また、保存データのネイティブ暗号化はAmazon Glacierでも可能

    料金プラン

    type耐久性可用性特徴
    STANDARD99.99999999 %99.99 %複数箇所にデータを複製。
    耐久性が高い。
    STANDARD-AI99.99999999 %99.9 %スタンダードに比べて安価。
    データの読み出し容量に応じた課金
    One Zone-AI99.99999999 %99.5 %アクセス頻度は低い
    必要に応じてすぐに取り出し可能
    RRS99.99 %99.99 %低冗長化ストレージ
    Glacierからの取り出しなどで利用
    Amazon Glacier99.99999999 %安価なアーカイブ用ストレージ
    データの抽出に3−5時間かかる
    ライフサイクルマネジメントで指定が可能
    ポールロック機能でデータを保持

    RRS(Reduced Redundancy Storage)は、

    ストレージコストを最適化してデータの高可用性を達成できる。そのため、頻繁に検索されるデータなどに有効。

    管理機能

    ライフサイクル機能

    プロパティ

    以下の設定が可能

    • バージョン管理
    • 静的ホスティング
    • オブジェクトレベルのログ管理

    アクセス制御

    バケットまたはオブジェクトにS3ACLを設定

    S3バケットポリシーを設定する

    S3-backed AMIのインスタンスが停止した際の挙動

    ルートボリュームのデータは自動的に削除される

    S3データへのアクセス制限する機能

    • バケットまたはオブジェクトにS3 ACLを設定
    • S3バケットポリシーを設定

     

     

  • Cloud Trail

    Cloud Trail

    特徴

    • Cloud Trailは、グローバルで有効になる
    • Cloud Trailは、リージョン単位で有効になる
    • 集約の為に、ログは単一のAmazon S3 バケットに集約可能

    EC2削除前の確認

    EC2インスタンスの削除する前に、所有者が必要でないことを確認する必要があり、Cloud Trailを使うことで確認が可能。

    CloudTrailイベントのCloudWatchアラームを作成

    他のリージョンのAWS APIのアクティビティを監視する事が可能。

  • Amazon Storage Gateway

    Amazon Storage Gateway

    保存データをネイティブに暗号化することが可能

     

  • AWS Lambda

    AWS Lambda

    Lambdaを呼び出すことができるサービス

    • Amazon DynamoDB
    • Amazon SNS

    トラフィックが増える事が予想される際の対応

    API gatewayで1つのAWS lambda関数をトリガーとして使用。Lambdaは受信イベントのレートに合わせてキャパシティを割り当てる。

     

  • AWS IAM

    AWS IAM

    IAMのルートアカウントの特徴

    • 逆引きDNS設定
    • CloudFrontのキーペアの作成
    • IAMユーザの課金情報へのアクセスのアクティベイト

    Active Directoryを利用したAWS Management Consoleへのアクセス権について

    会社のポリシー上、IDフェデレーションとロールベースアクセス制御をしたいとする。

    企業のアクティブディレクトリのグループを使用してロールが割り当てられているとすると、

    AWSコンソールのアクセス権を開発者に与えるには以下の2つが必要になる

    • AWS Directory Service AD Connector

    AD Connector は、クラウドの情報をキャッシュせずにディレクトリリクエストをオンプレミスの Microsoft Active Directory へリダイレクトするのに使用するディレクトリゲートウェイです。 

    https://docs.aws.amazon.com/ja_jp/directoryservice/latest/admin-guide/directory_ad_connector.html

    • IAM roles

     

    IAMエンティティ(ユーザー、グループ、ロール) が最後にAWSサービスにアクセスした⽇付と時刻を表⽰する機能

    Access AdvisorのLast Accessed DataにIAMエンティティ(ユーザー、グループ、ロール) が、最後にAWSサービスにアクセスした⽇付と時刻が表⽰されます。

    パワーユーザーとは

    パワーユーザーはIAMユーザーやグループの管理以外の全てのAWSサービスへのフルアクセス権限を有しています。

     

    管理ポリシー

    AWS管理ポリシー

    AWSが作成および管理する管理ポリシー

    カスタム管理ポリシー

    AWSアカウントで作成、管理する管理ポリシー

    同じポリシーを複数のIAMエンティティにアタッチが可能

     インラインポリシーとは

    ⾃⾝で作成および管理するポリシー

    1つのプリンシパルエンティティ(ユーザ、グループ、ロール)に埋め込まれたポリシー。

    プリンシパルエンティティにアタッチすることができる。

    1アカウントで

    • 5000ユーザまで作成可能
    • 所属グループは10グループまで
    • 作成は100グループまで
    • IAMユーザーは10個のグループまで

    所属することが可能。

    AWSアカウント内のRoute53のドメイン登録は管理者権限などで実施できる

    AMI

    AMIの作成時点のEBSボリュームも復元可能

    別リージョンへのアタッチ

    別リージョンにサービスを立ち上げた際も、既存のIAMロールをアタッチさせる事が可能

  • AWS 料金

    AWS 料金

    リザーブドインスタンスの特徴

    • AZ間で利用可能
    • Auto Scalingによる起動されるインスタンスも適用可能
    • システムの総所有コスト(TCO)を軽減為に使用することが可能

    コスト最適化

    CPUキャパシティなど、リソースが十分に活用されてないEC2インスタンスを特定するサービス

    • AWS truested advisor
    • Amazon CloudWatch
  • AWS Direct Connect

    AWS Direct Connect

    転送コストを部署毎に分配する際の対応

    AWS Direct Connect経由のデータ転送のコストを各部門にどのように分配すべきか

    1. 仮想インターフェースを構成
    2. 仮想インターフェースの所有者を部門のAWSアカウント番号に設定する