最近AWSを触る機能がなかなかないので、復習を絡んで、AWSの代表的なサービスを纏めました。
AWS IAM(ユーザーアクセスと暗号化キーの管理)
「AWS IAM」は “AWS Identity and Access Management” の略称
AWSの各サービスやリソースに対して、作成したグループごとにアクセス権を管理できるサービスです。
IAMでは、以下の機能が用意されています。
・IAMユーザー(グループ)
・IAMポリシー
・IAMロール
Amazon EC2(安全でスケーラブルなクラウド上の仮想サーバー)
「Amazon EC2」は “Amazon Elastic Compute Cloud” の略称
なにかアプリケーションを起動させたい際は、まずEC2の起動が必要になります。
・世界の各地に存在する複数の拠点から、起動場所を選択できる
・OSの種類を複数選択肢の中から選択できる
・使用した分だけコストが発生する
・一時停止と再開が可能
・オンプレミスでいうサーバ調達から起動まで、数週間~数ヵ月かかる流れが、数分でできる
・同じ構成を持ったEC2インスタンスを複数起動できる(設定した内容を簡単に複製できる)
・セキュリティグループを作成し、通信を制御できる
Amazon S3(拡張性と耐久性を兼ね揃えたクラウドストレージ)
「Amazon S3」は “Amazon Simple Storage Service” の略称
なにかデータを入れておきたいときに使用します。
・保存できるデータ容量やファイル数が無制限
・高い耐久性(99.999999999%(イレブンナイン)(11 9s))に加え、自動的に冗長化して保存されるため、バックアップを意識しなくて良い
・インターネット経由でアクセス可能なため、静的なコンテンツであれば配信もできる
Amazon RDS(マネージドリレーショナルデータベース)
「Amazon RDS」は “Amazon Relational Database Service” の略称
AWSで簡単にリレーショナルデータベースを使用できるサービスで、データベースのエンジンは、「Aurora MySQL」「Aurora PostgreSQL」「RDS for MySQL」「RDS for MariaDB」「RDS for PostgreSQL」「RDS for Oracle」「RDS for SQL Server」の7つの中から選択できます。
・OSやデータベースエンジンのメンテナンスをAWSがおこなってくれる
・デフォルトで7日間の自動バックアップが設定されており、追加で設定が必要でないかぎりバックアップの管理が不要
・マルチAZ配置をオンにすると、障害時の対応を自動でおこなってくれる
AWS Lambda(イベント発生時にコードを実行)
サーバーやクラスターについて検討することなくコードを実行
お客様のコードが高可用性コンピューティングインフラストラクチャで運用され、お客様のコンピューティングリソースの管理のすべてが行われます。
またLambdaはイベント駆動型と呼ばれ、「何らかのイベントが起こったら、このプログラムを実行する」といった仕組みになっているため、あらかじめトリガーを設定しておく必要もあります。
・高速開発が可能である
・プログラムを実行するためのサーバを用意する必要がない
Amazon CloudFront(グローバルなコンテンツネットワーク機能)
「Amazon CloudFront」とは、スピードと安全性の高さが魅力の「高速コンテンツ配信ネットワーク機能」です。
グローバルにに分散した550以上のPoP(Point of Presence)を使用し、最も低い遅延度でコンテンツを配信できるCDN(Contents Delivery Network)サービスです。
・キャッシュを持たせることができるため、コンテンツを低遅延でブラウザに表示させることができる
・世界中の拠点を使用できるため、ユーザーから一番近く、遅延度の低い拠点から配信ができる
・ドメインの証明書を設定すると通信データを保護できたり、AWSのセキュリティサービスを組み合わせることで外部の攻撃からも守ることができたりするため、安全性が高い