1日1%成長する ~Amazon EBS~
AWSの学習メモ
- AWSのblackbaltの動画を15分以上毎日見る
- 動画を簡単にまとめる
Amazon EBS ブロックストレージ - EC2インスタンス・ストレージ - ホストコンピュータの領域で一時的なもの(落とすと消える) - EBS - SSD-backed Volume - gp2, io1 - HDD-backed Volume - st1, sc1 EBSユースケース - gp2 - 負荷が読めないシステム - 小規模DB - 開発環境など - io1 - RDB - NoSQL - 他に持続的なIOPSパフォーマンスが必要な場合 - st1 - ビックデータ、分析 - Hadoop、Splunk - DWH - sc1 - ログデータ - アーカイブ - 低頻度アクセスの大量データ gp2 - デフォルトボリューム - 最小100IOPS(33.33GB以下)から最大16,000IOPS(5,334GB以上) - 1000GIBまでは3000IOPSまでバースト - スループットは1IOPS = 256KB/s - 128MB/s(170GBまで) - 最大250MB/s(170GBから334GB) - 250MB/s(334GB) - バーストバケットモデル - 5,400,000I/Oクレジットまで蓄積可能 - バケットにクレジットが残っていればIOPSを3000まで引き上げてくれる - 枯渇するとベースラインパフォーマンス分 - 3IOPS/GB以下でクレジット残高増加 I/Oクレジットの監視で常にバーストするのであればSSD増加やio1への移行を検討 io1 - 最小100IOPSからNitroベースインスタンスに対して最大64,000IOPS、 他のインスタンスに対して最大32,000IOPSを提供 - スループットは32,000IOPSで500MB/s、64,000IOPS/1000MB/sを提供 st1 - シーケンシャルアクセス時に高い性能を発揮 - ビックデータ向き - 500GB~16TBまで1GB単位で指定可能 - 最大500IOPS、1MBのIOサイズで読み取りと書き込みが処理 - スループット - 1TBあたり40MB/sがベースラインパフォーマンス 1TBあたり250MB/sまで性能を引き上げるバーストが利用可能 スループットの上限値は500MB/sとなる sc1 - ログやバックアップのアーカイブ先 - 500GB〜16TBまで1GB単位で指定可能 - 最大250IOPS、IMBのI/Oサイズで読み取りと書き込みが可能 - スループット - 1TBあたり12MB/sがベースラインパフォーマンス 容量1TBあたり12MB/sがベースラインパフォーマンス スループットの上限値は250MB/sとなる st1/sc1のバーストはスループット gp2とio1のIOPSカウント 256KBまでの連続したアクセスを1IOPSとカウント - 32KBの連続するアクセス8回は、I/O命令を1回発行 - 32KBのランダムなアクセス8回は、I/O命令を8回発行 256KBを超える場合は複数回の256KBブロックアクセスを行ったとしてカウントされる - 32KBアクセスの1回はI/Oを1回発行 - 512KBアクセスの1回はI/Oを2回発行 EC2インスタンス側のスループットを改善 - 最新ではないインスタンスタイプの場合はEBS最適化(EBS-Optimized)を有効 - インスタンスタイプを大きいものへ変更する EBS側のI/O処理性能を改善 - EBSボリューム側の実績IOPSを確認する - CloudWatchのVolume Read/Write Opsの合計値 - OSでEBSボリュームへのI/O命令回数を確認(iostatやperfmon) - 上限に達成していればボリュームの変更を検討 - タイプを変更(HDD -> gp2、gp2 -> io1) - スペックの変更(gp2:容量を増加、io1:IOPS値を増加)