■RDS の特徴
- リードレプリカ、マルチ AZ 配置、およびマルチリージョン配置が可能です。
- Storage Auto Scaling(オートスケーリング)のサポートが開始され、増加するデータベースのワークロードに応じて、RDS のストレージ容量がダウンタイムなしで自動的にスケール(増加)されます。
- RDS は利用している途中でインスタンスタイプを縮小することができます。
- RDS はリードレプリカによって、データベース (DB) インスタンスのパフォーマンスと耐久性が向上します。
- RDS は ACID トランザクションをサポートする、可用性が高く一貫性のあるデータベースです。
クロスリージョンリードレプリカ
- リージョン間でリードレプリカ(クロスリージョンリードレプリカ)を作成できます。その結果、災害復旧機能が向上しグローバルにスケールアウトできます。
- クロスリージョンリードレプリカは MySQL、MariaDB、PostgreSQL、Oracle(EE+ADG)で利⽤可能です。
- SQL Server の場合クロスリージョンでバックアップをコピーするなどの対応が必要です。
クロスリージョン自動バックアップ
- ⾃動バックアップのバックアップデータを別リージョンに⾃動で転送します。
- 転送されたリージョンでPITRで復元することが可能です。
- Oracleの場合、BYOLまたはライセンス込みで、バージョン12.1.0.2.v10以降で利⽤可能。SE2も可能です。
- RDS for PostgreSQL にも対応します。
スナップショット
- 個々のデータベースだけではなく、その DB インスタンス全体がバックアップされます。
- DB インスタンスを復元するとき、復元の元となる DB スナップショットの名前を指定し、復元オペレーションから作成される新しい DB インスタンスの名前を指定します。(つまり、別の DB を構築することになります)
- スナップショットと自動バックアップは S3 に保存されます。
- RDS のスナップショットは手動で取得することができます。
- RDS のスナップショットは自動手動の設定ができます。
- RDS はクロスリージョン(マルチリージョン)でのスナップショットをサポートしていません。
RDS の暗号化対象について
- DB インスタンス
- 自動バックアップ
- リードレプリカ
- スナップショット
■RDS プライマリストレージサービスタイプ
- Amazon RDS は 3 種類のストレージタイプを提供します。
- ①汎用 SSD (別名 gp2)
- ②プロビジョンド IOPS SSD (別名 io1)
- ③マグネティック (別名標準) ← 旧世代の HDD。下位互換性のため。
■リードレプリカとスレーブの違いについて
- リードレプリカ ← 読み込み専用のデータベース。利用者が直接アクセス可能。
- スレーブ ← マスターのバックアップ。セカンダリ。同期レプリケーション。利用者は直接アクセスできない。マルチ AZ 構成で、マルチリージョン構成ではない。
Amazon Aurora
■Aurora の特徴について
- RDS はマネージド型サービスであるため、インフラ管理やDBソフトウェアのバージョン管理などは AWS 側で実行されます。(パッチの適用は管理できません。)
- マルチマスタークラスター機能とシングルマスタークラスター機能の 2 つがある。
- マルチマスタークラスター機能は、別 AZ のすべてのインスタンスに読み書き機能(Write)がついています。(リードレプリカだけではありません)
- AWS がマネージメントをしている為、最新バージョンの DB が直ぐに利用できるわけではありません。
- Aurora クラスターボリュームは、マルチ AZ(複数のアベイラビリティゾーン)に跨り仮想ボリュームを構成しています。
- Aurora の可用性は 99.99% です。(年間で 秒停止、月間では 秒停止)
マルチマスター構成(Aurora Multi-Master 構成)
Aurora のマルチマスター構成は複数ノードに書き込みが行える高可用性なクラスタ構成です。
1つのリージョンで複数のAZにまたがって構成できます。
そもそも Amazon Aurora はシングルマスタ・クラスタでも SLA が 99.99%ですが、マルチマスター構成により更に高い可用性を構成できます。
■マルチマスター構成の特徴
- すべての DB インスタンスに読み書き機能がついています。
- 単一の読み書きプライマリインスタンスと、複数の読み取り専用 Aurora レプリカとは異なります。
- マルチマスタークラスターには、プライマリインスタンスまたは読み取り専用の Aurora レプリカはありません。
RDS のフェイルオーバーについて
- Amazon RDS は、マルチ AZ 配置を使用して DB インスタンスの高可用性およびフェイルオーバーサポートを提供します。
- Amazon RDS のマルチ AZ 配置では、異なるアベイラビリティーゾーンに同期スタンバイレプリカが自動的にプロビジョニングされて維持されます。
- RDS コンソールを使用すると、DB インスタンスを作成する際にマルチ AZ を指定するだけでマルチ AZ 配置を作成できます。
※RDSはマルチ AZ のフェイルオーバーをサポートしていますが、マルチリージョンのフェイルオーバーはサポートしていません。
■参考(RTOとRPO)
Aurora のリードレプリカの特徴について
- パフォーマンスと耐久性が向上します。
- 読み込み処理の負荷を下げることができます。
- リードレプリカは最大で15個まで追加可能です。
- リードレプリカは、①アベイラビリティゾーン内、②マルチ AZ(AZ間)、③リージョン間で構成することができます。
- Aurora DB クラスター内の独立したエンドポイントであり、読み取りオペレーションのスケーリングと可用性の向上に最適です。
- 1 つの AWS リージョンの中で DB クラスターが処理するアベイラビリティーゾーン全体に分散できます。
- DB クラスターボリュームは DB クラスターのデータの複数のコピーで構成されます。
- クラスターボリュームのデータは、DB クラスターのプライマリインスタンスおよび Aurora レプリカの 1 つの論理ボリュームとして表されます。
- リードレプリカはシングルマスターです。
- マスタスレーブ構成のスレーブに対するリードレプリカも構築することができます。
- リードレプリカは非同期レプリケーションです。
Amazon Aurora Serverless
■Amazon Aurora Serverless の特徴
- 管理する DB インスタンスはありません。
データベースは、アプリケーションニーズに応じて、容量を自動的に起動、停止、および拡大または縮小します。
Amazon Aurora Serverless の使いどころ
Aurora Serverless の使いどころとしては一定した高負荷な使用状況ではなく、低負荷、低頻度、断続的な使用、予測不可能な使用状況が考えられます。
実際にデータベースを運用してみると机上の計算とは違い、実際はリソースをほとんど使用しないケースが多いです。
つまり無駄にハイスペックな環境であることが多いです。
しかし Aurora Serverless にすることで使用していない時はコストが発生しない、使用している時だけコストが発生することでコスト削減が可能になります。
また、開発用のデータベースは週末や夜間は使用されません。
データベースが使用されていない状況では Aurora Serverless は自動的にシャットダウンして使用され始めると起動されることでコスト削減ができます。
拡張モニタリング
- インスタンス上のさまざまなプロセスまたはスレッドが CPU をどのように使用しているかをモニタリングできます。
- 拡張モニタリングメトリクスは Cloudwatch メトリクスではなく CloudWatch ログに保存されます。
- CloudWatch は DB インスタンスのハイパーバイザーから CPU 使用率のメトリクスを収集し、拡張モニタリングはインスタンス上のエージェントからそのメトリクスを収集します。
CloudWath と拡張モニタリングの違い
拡張モニタリングは直接 OS 上で動作しているエージェントから情報を収集しているようです。
そのためより正確にメトリクスを収集できるのではと思います。
- CloudWatch は DB インスタンスのハイパーバイザーから CPU 使用率のメトリクスを収集
- 拡張モニタリングはインスタンス上のエージェントからそのメトリクスを収集
AWS 認定試験の勉強方法
最近はコロナ禍という状況が影響しているのかどうか分かりませんが、勉強や学習意欲が非常に高くなっています。
インフラエンジニアとして AWS をメインに業務を行っていることもあり、毎日 AWS 認定試験の試験勉強をしています。
資格について IT エンジニアの場合は実績が重要なので資格は必要ないという意見もありますが、個人的には資格取得の勉強をすることにより
- 自分が知らない分野の知識やスキルが身につく
- 食わず嫌いで今まで取り組んでこなかった知識が身につくので業務を改善する新しいアイデアが生まれる
- 業務が捗る
というメリットを感じています。
AWS 認定試験についは、Udemy を利用して飽きずに楽しく勉強しています。
■Udemy のメリット
大量に問題があるので、飽きずに楽しく勉強ができます。
私の場合はテキストを読んで勉強することが非常に苦手ですぐに飽きてしまします。
しかし Udemy の大量の模擬試験問題集を解き、解答を確認して、不明な点は AWS の公式サイトを確認して学習しているので、集中して学習を続けることができます。
とにかく大量の問題を解くことが私にとって学習を続けられる唯一の方法のような気がします。
ちなみに Udemy ではたまにプレゼント企画もやっています。
先日は1つの講座を申し込んだ際に「How to Learn: Effective Approaches for Self-Guided Learning」の講座を無料で受講することが出来ました。
コメント