LoginSignup
0
1

More than 5 years have passed since last update.

AWS-UG 初心者支部#13 「AWS Night school」 メモ

Last updated at Posted at 2018-08-23

AWS Night School

Twitterのハッシュタグは #jawsug_bgnr

AWS Night school 第1回(AWSJ 亀田さん)

ビルディングブロック

ブロックを組み合わせるようにサービスを組み合わせて利用するという思想

AWS利用料の一般的な内訳

EC2・RDSが利用料金の9割
→EC2・RDSから学習すると良い

AWSの利用額が怖い

Billing Alertを活用しよう
一定金額を超えたらアラート(メール)を飛ばす

AWSのグローバルインフラストラクチャ

大阪リージョンは単独で利用できないので、東京リージョンとセットで利用する
※リージョン=国・地域

東京は4つのアベイラビリティゾーンで構成されている
※アベイラビリティゾーン=データセンター

リージョンとアベイラビリティゾーン

アベイラビリティゾーンをまたがないとSLA適用外
1台構成は要件を満たしているか要確認

アベイラビリティゾーンを跨ぐ場合、1ms程度の時間が掛かる

マルチアベイラビリティゾーンでデータセンターレベルで単一障害点を失くす

EC2・EBS

コンピューティング処理能力を変更可能
Linuxの場合、1分単位で課金

インスタンスのCPU・メモリを変更する場合、再起動が必要

前払い機能で割引あり(リザーブドインスタンス)

東京リージョンは高い(アメリカより)
データ分析など、データの転送速度よりCPUが必要な場合はアメリカのリージョンを使うと良い

インスタンスタイプとは?

C3.8xlarge のように表記する

C:インスタンスファミリー
3:世代数(より大きいものが良い)
8xlarge:スペック(より大きいほうが性能が良く料金が高い)

初めて触る場合、M5がオススメ

インスタンスのユーザーデータ

インスタンス起動後にスクリプトを実行することができる

ストレージ

  • EBS 永続的に保存できる

  • インスタンスストア シャットダウンするとデータが消える

AWSは障害が起きない×
障害は発生しているが即時に別ハードウェアで起動するなどして瞬断で復旧している○

EC2が不安定なときは停止・起動で安定する場合あり
何故か? 可能な限り別ハードウェアで起動するため、不安定なハードウェアから脱出できる

EC2とストレージはネットワークで繋がっているため、ここがボトルネックになるケースがある
「EC2最適化」でEC2を起動すると良い(ネットワークとストレージ用ネットワークが別で提供される)

10万IPOSを超えるようなアクセスの場合、EC2に直付けのインスタンスストアを使用すると良い
シャットダウンでデータが消えるため定期的にEBSやS3に退避すること

EBS

アベイラビリティゾーン内で自動的にレプリケートしている

  • 1GiB〜1TiBのEBSマグネティックボリューム
  • 最大16TiBのSSDボリュームを提供 基本的にSSDを利用すると良い

複数のEC2から一つのEBSへのアクセスはできない
NASのように利用する場合はEFSを利用すると良い

ストレージパフォーマンスが必要ならプロビジョンドIOPSを利用すること

EBSスナップショットは差分バックアップで取得される
取得したバックアップは自動的に圧縮される
そのため、見積もりがしにくい点に注意

インスタンスメタデータ

169.254.169.254にアクセスすることで取得可能

GitHubにAWSのシークレットキーをアップロードしないこと

クロールしているユーザーがいて、仮想通貨のマイニングに使用される

AWSでもGitHubにシークレットキーがアップロードされていないかクロールしているが、
AWSではお客様のアカウントを操作しないというポリシーになっているため連絡のみ
基本的には自己防衛

第2回ではS3・RDSを予定

Auroraの凄さを振り返る(クラスメソッド株式会社 大栗 宗さん)

Auroraの凄さを振り返る
https://speakerdeck.com/maroon1st/aurorafalseqi-sawozhen-rifan-ru

JAWS-UG 初心者支部#12 AWS Night schoolでAuroraの凄さを話してきた #jawsug #jawsug_bgnr
https://dev.classmethod.jp/cloud/aws/jaws-ug-bgnr-13-aurora-session/

Auroraの特徴

クラウド自体にAmazonが再設計したRDBMS
MySQLとPostgreSQL互換

MySQLの最大5倍
99.999999999%の堅牢性 (S3と同じ)

移行サポートが豊富
低コスト(実際に利用した分だけ料金が発生)
→将来のデータサイズを見越した設計をしなくて良い

AZを跨いだ統一的なストレージボリュームがある

既存のAWSサービスを組み合わせてAuroraが実現されている
ユーザーからは隠蔽されており、ユーザーは意識せずに利用できる

Well-Architected Framework

信頼性の柱

6重化された分散ストレージ
1つのAZに2個、3AZでデータを保存

1つぐらいデータセンターがなくなっても運用可能

なぜ6重化?
クォーラムモデルによる多数決のため
本来なら3重化でも良いが、AZ停止のような大規模障害にも耐えるため6重化

ストレージが独立している
フェイルオーバーが速い(データリカバリが殆ど無い)

パフォーマンス効率の柱

レプリケーションによるスレーブへの書き込み負荷がない
スレーブにはログの位置情報のみを伝える(ストレージが共用なので可能)
(通常のRDSはスレーブにもマスターと同じ書き込みを行っているため負荷がある)

レスポンスタイムが安定している

MySQL限定だが、特定のJoinが高速化されている
Joinの種類やスキャン方法を追加している

MySQLが苦手なフルスキャンが高速化されている

コスト最適化の柱

Multi-AZの予備機をリードレプリカとして利用できる
(予備機も含めてすべて利用可能)

負荷に合わせてリードレプリカをオートスケーリングできる

Aurora Serverlessで待機コストを極小化
停止後の起動に25秒ほどかかることに注意

運用上の優秀性

コネクションを切断せずにパッチ適用可能(例外あり)

高速フェイルオーバー(数秒)
通常はDNSで切り替えるが、
マスターフラグ・スレーブフラグがあり、そこをクライアントで判定して切り替えることで高速化可能

backtrack:DBデータを任意の時点に戻すことができる
drop tableのオペミスにも活用できる

Database clone:即座にDBデータを複製

Performance insights搭載:パフォーマンス分析・トラブルシューティングが可能
DBの待ち時間の可視化
クエリ単位でも状況確認可能

IAM認証でログインできる

カラム追加も高速

AuroraからLambdaを実行可能

0
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
1