【後編】Amazon RDS for MariaDB ワークショップやってみた
前回記事の続きになります。
今回は、RDS の基本的な機能に触れていきます。
ざっくりまとめ
所要時間:1 時間
使用するサービス:Amazon RDS for MariaDB、AWS Systems Manager
本記事は、以下の機能に触れていきます。
- バックアップとリストア
- Blue/Green デプロイ
- CloudWatch Database Insights
バックアップとリストア
スナップショットの作成からの復元
-
RDS のコンソール画面を開きます。
-
labstack-instanceを選択し、[アクション] ドロップダウンメニューから [スナップショットの取得] を選択します。

- スナップショット名
labstack-snapshotを入力し、[スナップショットの取得] を選択します。

-
左メニューから [スナップショット] を選択します。
-
スナップショット
labstack-snapshotを選択し、[アクション] ドロップダウンメニューから [スナップショットを復元] を選択します。

- 以下の設定を入力・選択し、残りの設定はデフォルトのまま、[DB インスタンスの復元] を選択します。
- DB インスタンス識別子:labstack-restore-backup
- DB インスタンスクラス:メモリ最適化クラス
- インスタンスタイプ:db.r6g.large

7.データベースページに、復元された DB インスタンス labstack-restore-backup が表示されます。

ポイントインタイムリカバリ
labstack-instanceを選択し、[アクション] ドロップダウンメニューから [得点時点への復元] を選択します。

- 以下の設定を入力・選択し、残りの設定はデフォルトのまま、[特定時点への復元] を選択します。
- DB インスタンス識別子:labstack-pitr-restore
- DB インスタンスクラス:メモリ最適化クラス
- インスタンスタイプ:db.r6g.large


- データベースページに、復元された DB インスタンス
labstack-pitr-restoreが表示されます。

Blue/Green デプロイ
Blue/Green デプロイの作成
labstack-instanceを選択し、[アクション] ドロップダウンメニューから [ブルー/グリーンデプロイを作成] を選択します。

- 以下の設定を入力・選択し、残りの設定はデフォルトのまま、[次へ] を選択します。
- ブルー/グリーンデプロイ名:labstack-bg-deployment
- グリーンエンジンバージョン:MariaDB 10.11.4

- 設定の詳細を確認し、[作成] を選択します。

- データベースページに、作成された Blue/Green デプロイ
labstack-bg-deploymentが表示されます。

- それぞれの DB インスタンスに接続し、以下のコマンドを実行します。
select version();
- 実行すると、以下の出力が表示されます。
- Blue インスタンス:10.6.19-MariaDB-log
- Green インスタンス:10.11.14-MariaDB-log
mysql> select version();
+---------------------+
| version() |
+---------------------+
| 10.6.19-MariaDB-log |
+---------------------+
1 row in set (0.00 sec)
mysql> select version();
+----------------------+
| version() |
+----------------------+
| 10.11.14-MariaDB-log |
+----------------------+
1 row in set (0.00 sec)
Blue/Green デプロイの切り替え
-
Green インスタンスを選択し、詳細を表示します。
-
[モニタリング] タブを開き、検索ボックスに「Replica」と入力して、
ReplicaLagメトリクスを確認します。
切り替えを行う前にダウンタイムを最小限に抑えるため、この値がゼロに近いことを確認します。

-
Blue インスタンスを選択し、詳細を表示します。
-
[モニタリング] タブを開き、検索ボックスに「connections」と入力して、
DatabaseConnectionsメトリクスを確認します。
切り替えの前にアクティブな接続がないことを確認します。

- データベースページに戻り、
labstack-bg-deploymentを選択し、[アクション] ドロップダウンメニューから [切り替え] を選択します。

- 概要を確認し、[切り替え] を選択します。

labstack-bg-deploymentのステータスが切り替え完了になったことを確認します。

labstack-instanceに接続し、以下のコマンドを実行します。
select version();
- 実行すると、以下の出力が表示されます。
mysql> select version();
+----------------------+
| version() |
+----------------------+
| 10.11.14-MariaDB-log |
+----------------------+
1 row in set (0.00 sec)
CloudWatch Database Insights
DB インスタンスに負荷をかける
- bash シェルで以下のコマンドを実行し、
sysbench-tpccフォルダに移動し、ファイル一覧を表示します。
bash
cd /home/ubuntu/sysbench-tpcc
ls
- 実行すると、以下の出力が表示されます。
ssm-user@ip-XXX-XXX-XXX-XXX:/home/ubuntu/sysbench-tpcc$ ls
LICENSE README.md tpcc-scm-1.rockspec tpcc.lua tpcc_check.lua tpcc_common.lua tpcc_run.lua
- 以下のコマンドを実行して、環境変数を設定します。
<instance_endpoint> は、前編で控えておいたinstanceEndpointに置き換えてください。
export DBHOST="<instance_endpoint>"
- 以下のコマンドを実行して、TPC-C ベンチマークテストを実行します。
./tpcc.lua --mysql-host=$DBHOST --mysql-user=$DBUSER --mysql-password=$DBPASS --mysql-db=mylab --time=300 --threads=64 --report-interval=1 --tables=10 --scale=100 --db-driver=mysql prepare
Database Insights の確認
-
labstack-instanceを選択し、詳細を表示します。 -
[モニタリング] タブを開き、[モニタリング] ドロップダウンメニューから [Database Insights] を選択します。

- ベンチマークテストを実行すると、以下と同様のパフォーマンスが表示されます。
[データベーステレメトリ] タブを開くと、インスタンスのメトリクス、ログ、スロークエリ、イベント、OS プロセスなど、詳細な情報を確認でききます。








