DevOps Guru for RDS を触ってみた
こちらJapan APN Ambassador Advent Calendar 2021の11日目の記事です。
今年もre:Inventでたくさん発表がありましたね。
発表の中で気になった DevOps Guru for RDS を触ってみたので
ブログ書きたいと思います。
準備
こちらサポートされているのが現時点で
AuroraのみのようなのでAuroraを立ち上げます。
docs.aws.amazon.com
立ち上がってしばらくしてからAuroraに負荷をかけてみます。
※DevOps Guru for RDSは機械学習による異常検知なので、
作成後すぐに負荷をかけても異常検知されない可能性があります。
私も適当に負荷をかけていたのですが、
すぐには検知されず、
下記で異常を検知させることができました。
host="xxxxxxxxxxxxxx.rds.amazonaws.com" mysqlslap --delimiter=";" -u admin -p -h ${host} -P 3306 mydb --auto-generate-sql --concurrency=200 --number-of-queries=10000 --auto-generate-sql-write-number=2000 --number-int-cols=2 --number-char-cols=3
検知結果を見てみる
上記方法でAuroraに負荷かけ、異常が検出されたので見てみました。
insightsの一覧に表示されます。
また、この検知はeventBridgeやSNSと連携が可能です。
今回はwriteのlatencyが異常だと検知されました。
詳細を開くと、重要度や開始時間が書かています。
インシデント対応の時には、報告の際に、この種の情報が必要になるので
まとめてくれているのは嬉しいですね。
関連するメトリクスも提案表示してくれる
グラフを確認すると、関連するメトリクスもまとめてくれていました。
今回はwriteLatencyで検知されていたのですが、
同タイミングでコネクション数も増やしていたため、
これも怪しいのでは?ということで並べて表示してくれているようでした。
AWS関連の操作もまとめてくれる
また、Relevant eventsとして、
直近で実施したAWS関連の操作もピックアップしてくれていました。
例えば私は、この検証をする前に、
別の検証でcloudformation stackを削除していたのですが、
それも関連しそうなイベントとして一覧表示してくれていました。
Performance insightも併用
また、こちらは以前からあった機能ですが、 RDSのPerformance insightと併せて、 原因となるqueryの候補を確認できます。
試してみて
DevOps Guru for RDSを使ってみた感覚としては
RDSのメトリクスにanomaly detectionがかけられているような感覚でした。
また、パフォーマンス面で何かあった時に
簡単に見たいものが揃っていて、率直に嬉しいサービスと思いました。
私は前職でOracleで性能問題の対応をしたことがあったのですが、
その時こんなツールがあったら良かったなと昔を思い出してしまいました。
DBの理解には@odakeiji1さんの書籍に大変お世話になりました。
特にお気に入りはこの本です。
www.amazon.co.jp
今はAWSに所属されているようで、
これからも大いに学ばせて頂きます。
twitter.com
Ambassadorとして楽しく記事を書かせて頂きました。
ありがとうございました!