AWSome dayまとめ
そもそもクラウドとは?
- ↔︎オンプレミス
- インターネットの向こう側にあるサーバー
- インフラストラクチャをソフトウェアとして扱う
- オンプレミスだとリソースの取得に時間がかかる(一般的にはサーバーを用意するのに一ヶ月程かかる)
- 従量課金(固定費ではなく変動費)
- 使いたい時だけ使う(キャパシティ見積もりの不要)
- データセンターを用意しなくていい
アベイラビリティーゾーン(AZ)
- 一つ以上(複数)の仮想データセンター群
リージョン
- 三つ以上のAZで構成されている
- 世界全体で31のリージョンが存在する
- 100km圏内に配置をするというポリシーがある
- マルチAZ...複数のアベイラビリティーゾーンにシステムを冗長化する。災害システムなどに
- どれが選択するリージョンになるかどうかの優先度はシステムによって違う
コンピューティング
EC2(Amazon Elastic Compute Cloud)
→Cが二つ並んでいるのでEC2
AWSがOSまで用意してくれる、起動した時から従量課金
メモリやOSの種類も選択可能(650種類以上あるとか)
アンマネージドとマネージド
- アンマネージドは自分で管理できる(EC2)
- マネージドはAWSにお任せ, manageの段階がある
- 一番段階上なのはサーバーレス(...サーバーを意識しなくていい)
- スケーリングが自動
- 実行した時間だけ課金の対象
AWS Lambda
フルマネージド型のコンピューティングサービス
あらかじめ設定したスケジュールでプログラムを実行できる
プログラムの1機能を作るという単位
ランタイム...実行環境
同時実行はデフォルトだと1000?
ストレージ
ストレージの種類
- サーバー自身からしかアクセスできない(内蔵ストレージ)
- 複数のサーバーからアクセスできる
Amazon S3(Amazon Simple Storage Service)
サーバーレスのオブジェクトストレージ
インターネット経由でアップロード、ダウンロードできる
バケットに保存可能なオブジェクト数は無制限
アップロードなどのイベントをきっかけにLambda関数を呼び出せる
AZを選ばない(Lambdaも同様)
リージョンの中でデータを管理する
イレブンナインの設計→3拠点以上にまたがってデータのコピーがされている
容量課金(アップロードしたデータ量に応じて課金額が発生する)
S3 Glacier
長期保管用データストレージ
コールドデータ→氷河(グレイシア)
非常に低コストなストレージ
磁気テープの代替
Amazon EBS(Amazon Elastic Block Store)
ブロックストレージ
→サーバー自身からしかアクセスできない(内蔵ストレージ)
EC2インスタンスに使う容量もこれ
バックアップはS3に自動的に保存される
データベース
データベースサービスの種類
- EC2上で運用
- オペレーティングシステムへのアクセスが可能
- マネージド型データベース
- AWSに全部お任せ
リレーショナル
- より正確でかつ複数の人が同時にアクセスしても整合性がとれる
Amazon RDS(Amazon Relational Database Service)
マネージドのリレーショナルデータベース
冗長化可能、フェイルオーバーも自動で出来る
マルチAZ配置の設定も可
Amazon Aurora
クラウド向けに構成されたリレーショナルデータベース
MySQLとPostgreSQLと互換性がある
非リレーショナル(NoSQL)
Amazon DynamoDB
どんな規模にも対応する高速で柔軟なNoSQLデータサービス
データはKey-Valueの関係でシンプルな設計
ゲームサーバー(ランキング集計)などに
ネットワーク
Amazon VPC(Amazon Virtual Private Cloud)
AWSクラウドのプライベートネットワーク空間
VPC内でAZを複数使うことができ、マルチAZ構成が作りやすい
- サブネット(セグメント)
- ネットワークの一区画
- パブリックサブネット
- インターネットに繋がる
- Webサーバーなどを置く
- プライベートサブネット
- インターネットに繋がらない
- DBなど外から見られたくないものを置く
- VPCからネットワークに繋ぐにはIGW(Internet GateWay)を付ける
インフラストラクチャの保護
- セキュリティグループで外からのアクセスを制限する
- インスタンスごとでもインスタンスを跨って使用するでも利用できる
- 一回入ったら自動的に出られる(入る通信と出る通信が同じ)
- ネットワークアクセスコントロールリスト(ネットワークACL)
- サブネットごとに設定する
- 入る通信と出る通信は別個のものとして考える
- ルートテーブル
- ルーティングを司る設定
- ネットワークトラフィックの送信先を決定するために使用される「ルート」と呼ばれる一連のルールが含まれる
- VPC, ゲートウェイ、サブネットに関連づけることができる
VPNのエンドポイントも作ることができる
Direct Connectで既存のネットワークと接続することもできる
セキュリティ
AWSにおいて最優先事項
責任共有モデル
AWSにおけるセキュリティの考え方→セキュリティは全員の責任
シェアードレスポンシビリティモデル
→AWS、ユーザーそれぞれでセキュリティを守っていく
アクセス管理と認証
認証
その人が申請した本人か確認を取ること
認可
その人がどんなことをしていいか許可を与える
AWS IAM(Identity and Access Management)
AWSリソースへのアクセスを安全に制御する
- IAMユーザー…一人一人のユーザー、アカウント内のユーザー
- IAMグループ...同じ権限を持つべきIAMユーザーのグループ
- IAMポリシー…AWSのサービスへのアクセス(出来る事、出来ない事リスト)
- IAMロール...AWSのリソースに対して使うアクセス権の制御
リソースベースのアクセス制御
リソース側の設定を変更することもできる
ex. S3へのアクセス
- デフォルト(所有者のみ)、パブリック(全公開)、アクセスポリシー(所有者と特定ユーザーのみ)
アクセス状況の追跡
AWS CloudTrail
AWSアカウントのユーザーアクティビティとAPIの使用状況の追跡(監査証跡)
ログファイルはS3バケットに送信される
設定内容のチェックとアドバイス
AWS Trusted Advisor
コスト削減、パフォーマンス向上、セキュリティの強化に役立つガイダンスを提供するサービス
AWSでイノベーション
IoTで活用
- 「モノ」の管理の課題
AWS IoT Core
デバイスをクラウド接続する
Greengrass
- クラウドの機能をローカルデバイスに拡張するソフトウェア
- ex.) 工場の隣でAWSの機能を使える(タイムラグが起きない)
機械学習
人工知能(AI)...Amazon Rekognition
- 機械学習(ML)...Amazon SageMaker
- 深層学習 (DL)
Amazon Rekognition
画像分析(オブジェクト、シーン分析/顔分析など)を手軽に出来る
その他
Amazon Ground Station
人工衛星を管理できる
地上局のフルマネージドサービス
気象情報、農業、火災対策、小売業などで使われている
メモ
- AWS Budgetで請求アラーム設定
- skill Builder、Cloud Practitioner Essentialsで学習
- ランプアップガイド
- Hands-on for Beginners