Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
RDS のトラブル発生に備えて!やっておくべき設定・監視 #jawsdays2021 #jaw...
Search
もっさん
March 20, 2021
Technology
7.3k
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
RDS のトラブル発生に備えて!やっておくべき設定・監視 #jawsdays2021 #jawsdays2021_B
もっさん
March 20, 2021
More Decks by もっさん
See All by もっさん
AIで社員の自主発信に広報目線を組み込む
_mossann_t
0
170
未経験領域&ぼっちチームに 転生したので、 セルフレトロスペクティブを回している話
_mossann_t
1
110
主催・運営として"場をつくる”というアウトプットのススメ
_mossann_t
0
410
ゼロからわかる!!AWSの構成図を書いてみようワークショップ 問題&解答解説 #デッカイギ #羽田デッカイギおつ
_mossann_t
0
2.3k
組織内のデータ活用の障壁を解消する!? Amazon DataZone のハンズオンをやってみた
_mossann_t
0
440
共通認識を生む、「例え話」のテクニック
_mossann_t
0
660
AWSから届く通知「Abuse Report」の対応 JAWS-UG福岡 #14
_mossann_t
0
3.7k
【ITインフラ基礎】サーバってなんだ?運用の大切さ #devio2022
_mossann_t
0
1.7k
WorkSpacesへのアクセス制限を考える
_mossann_t
0
2.7k
Other Decks in Technology
See All in Technology
自主式軟體工廠
philipz
0
200
行動するAIのためのオントロジー | DevRev — Encraft #26.pdf
dvrv_tknrszk
2
720
20260929_AmazonGuardDutyの検出通知メールにAWS DevOpsAgentの調査結果を追加する
yhana
1
450
「とりあえず動く」の先へ。 AI時代のチーム開発と内部設計/2026-slsdays
slsops
0
140
私の推しは「聞いてから進む」AIです -AI-DLCに一人でアプリを作らせた話
yama3133
1
170
Snowflake Horizon Catalog と Apache Iceberg で作る オープンなデータ基盤
kitagawaz
0
420
ビジネスを止めない技術的負債の返済のための戦略とその手法 - 技術的負債と向き合う / Complexity and Simplicity
soudai
PRO
3
540
メルペイ 会計システム概要と歴史
mewuto
0
130
OpenSharing について熱く語る〜AI アセットの共有について〜
kameitomohiro
0
210
使いこなすために知っておきたい Azure SRE Agent アンチパターン
torumakabe
2
260
OSC2026on_the-world-is-waiting-for-your-voice.pdf
naruoga
0
350
HacobuにおけるFDEとは/登壇資料(戸井田 裕貴)
hacobu
PRO
1
770
Featured
See All Featured
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
20k
How to Think Like a Performance Engineer
csswizardry
28
2.9k
10 Git Anti Patterns You Should be Aware of
lemiorhan
PRO
659
62k
StorybookのUI Testing Handbookを読んだ
zakiyama
31
6.9k
Money Talks: Using Revenue to Get Sh*t Done
nikkihalliwell
0
510
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
287
14k
Introduction to Domain-Driven Design and Collaborative software design
baasie
1
1k
DevOps and Value Stream Thinking: Enabling flow, efficiency and business value
helenjbeal
1
390
Being A Developer After 40
akosma
91
590k
JavaScript: Past, Present, and Future - NDC Porto 2020
reverentgeek
52
6.1k
Navigating Team Friction
lara
192
16k
Color Theory Basics | Prateek | Gurzu
gurzu
1
480
Transcript
RDSのトラブル発生に備えて! やっておくべき設定・監視
橋本(伊豫谷) 優希 / もっさん Yuki Hashimoto(Iyotani) / mossan Twitter :
@_mossann_t クラスメソッド株式会社 オペレーション部 テクニカルサポートエンジニア 好きなAWS サービス : WorkSpaces , IoT Core ブログhttps://dev.classmethod.jp/author/iyotani-yuki/
本セッションの対象者 • RDS を使い始めたばかりの方 • RDS のモニタリング・ログの設定を行ったことがない方 • モニタリング・ログ設定の重要性を説明する立場の方
今日お話しすること • RDS のモニタリング・ロギング機能の概要 • 各機能の設定手順 お話ししないこと • ログやメトリクスからの切り分け手法 •
サードパーティ社製品の概要や設定方法 • データベースのチューニング
突然ですが
RDSがなんだかおかしい!!! ……といった場面に遭遇したことはありますか?
「なんだかおかしい」の具体例 • 応答遅延 • 応答してない • アプリケーションやWEBサーバとの接続断 • 再起動
調査しようとしたけれど…… • RDS のCloudWatch 標準メトリクスには EC2でいう「StatusCheckFailed」がない →システム側(AWS基盤側)の問題なのか、インスタンス内部の問題なのかは CloudWatch 標準メトリクスの値からは読み取りにくい •
CPU使用率が高い理由は CloudWatch だけではわからない (処理が重いクエリのせい ? メンテナンス? 他の原因?) • メモリ使用率はCloudWatch 標準メトリクスでは取得できない
原因が不明 = 改善できない
RDS のモニタリング・ログ機能は CloudWatch 標準メトリクスだけではない! • Performance Insights • 拡張モニタリング •
スロークエリログ • RDS イベントに対する通知
RDS のモニタリング・ログ機能は CloudWatch 標準メトリクスだけではない! • Performance Insights • 拡張モニタリング •
スロークエリログ • RDS イベントに対する通知
Performance Insights • DB への負荷がグラフで可視化できる • 以下のことがわかる • アクティブなセッション数 (DBのレスポンス待ちの接続数
) • 待機イベント(ボトルネックになっているイベント ) • DB への負荷が高いクエリ • 最大 vCPU 値 参考:Performance Insights の概要 - Amazon Relational Database Service https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_PerfInsights.Overview.html
Performance Insights • RDS コンソールから RDS インスタンスを作成する場合、デフォルトで有効になっている • 作成時にPerformance Insights
を有効化していなかった場合も、後から有効化できる • データの保持期間を選択できる • 7日間(無料枠あり) • 2年間(長期保存) 参考: Performance Insights の有効化と無効化 - Amazon Relational Database Service https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_PerfInsights.Enabling.html 料金 - Performance Insights | AWS https://aws.amazon.com/jp/rds/performance-insights/pricing/
Performance Insights • RDS コンソールの場合:[データベース] - 対象DBインスタンスを選択 - [変更]
Performance Insights • AWS CLI の場合:rds modify-db-instance コマンド 参考:Performance Insights
の有効化と無効化 - Amazon Relational Database Service https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_PerfInsights.Enabling.html aws rds modify-db-instance \ --db-instance-identifier sample-db-instance \ —enable-performance-insights
RDS のモニタリング・ログ機能は CloudWatch 標準メトリクスだけではない! • Performance Insights • 拡張モニタリング •
スロークエリログ • RDS イベントに対する通知
拡張モニタリング • メモリ使用率など、OSからのメトリクスを取得できる • どのプロセスやスレッドで CPUが使われているのかわかる • CloudWatch Logs にデータが保存できる
参考:拡張モニタリングの使用 - Amazon Relational Database Service https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html
拡張モニタリング • [データベース] - 対象データベースを選択 - [変更] -モニタリング
RDS のモニタリング・ログ機能は CloudWatch 標準メトリクスだけではない! • Performance Insights • 拡張モニタリング •
スロークエリログ • RDS イベントに対する通知
スロークエリログ • 実行に時間がかかっているクエリを記録することができる • 閾値は自分で設定することができる (デフォルトは10秒) • パラメータグループの値を変更することで設定可能 参考:拡張モニタリングの使用 -
Amazon Relational Database Service https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/UserGuide/USER_Monitoring.OS.html
スロークエリログ • [パラメータグループ] - [編集] - slow_query_log の値を 1にする 参考:MySQL
を実行している Amazon RDS DB インスタンスのログを有効にしてモニタリングする https://aws.amazon.com/jp/premiumsupport/knowledge-center/rds-mysql-logs/
スロークエリログ 設定するパラメータ 参考:MySQL を実行している Amazon RDS DB インスタンスのログを有効にしてモニタリングする https://aws.amazon.com/jp/premiumsupport/knowledge-center/rds-mysql-logs/ slow_query_log
有効 (1) / 無効(0) Long_query_time 実行時間の閾値(秒) slow_query_log_file ログファイルパス
スロークエリログ 設定の注意点 設定の反映に再起動が必要になる場合がある • パラメータグループの入れ替えを行う場合 (デフォルトのパラメータグループの値は変更できない ) • 変更した値の「適用タイプ」が static
の場合 参考:MySQL を実行している Amazon RDS DB インスタンスのログを有効にしてモニタリングする https://aws.amazon.com/jp/premiumsupport/knowledge-center/rds-mysql-logs/
RDS のモニタリング・ログ機能は CloudWatch 標準メトリクスだけではない! • Performance Insights • 拡張モニタリング •
スロークエリログ • RDS イベントに対する通知
RDS イベントに対する通知 • RDS のイベントサブスクリプション機能を使って、 RDS へなんらかのイベントが発生した時、 Eメール通知やSNS トピックへ配信できる •
特定インスタンスや特定クラスターのみ、特定のイベントのみ通知することも可能 参考:Amazon RDS イベント通知の使用 - Amazon Aurora https://docs.aws.amazon.com/ja_jp/AmazonRDS/latest/AuroraUserGuide/USER_Events.html
RDS イベントに対する通知 • [イベントサブスクリプション ] - [イベントサブスクリプションの作成 ]
RDS イベントに対する通知 • Eメール通知の場合 : [新しいEメールトピック] • 「これらの受取人を含みます」にメールアドレスを記載
RDS イベントに対する通知 • 2021 / 02 /19 の神アップデート (AWS さん本当にありがとうございます
) Amazon RDS がマルチ AZ 配置用の新しいイベントを発行 https://aws.amazon.com/jp/about-aws/whats-new/2021/02/amazon-rds-publishes-new-ev ents-multi-az-deployments/ • RDS がマルチAZ 配置の場合、フェイルオーバー 理由が イベントでわかるように • 従来は、フェイルオーバーの要因をユーザーが知ることができる項目はなかった 参考:[アップデート] RDS マルチAZ配置で「フェールオーバー時の ”理由”」がイベントログで確認できるようになりました! | DevelopersIO https://dev.classmethod.jp/articles/rds-publishes-new-events-multi-az-deployments/
RDS のモニタリング・ログ機能は CloudWatch 標準メトリクスだけではない! • Performance Insights • 拡張モニタリング •
スロークエリログ • RDS イベントに対する通知
注意事項 • RDSのパフォーマンスにわずかに影響する可能性がある →どうしてもパフォーマンス低下が見受けられる場合は、 データの取得頻度を減らす、メトリクスの粒度を大きくするなどの調整を検討ください • 今回紹介したモニタリングデータやログは、設定以後から取得可能 →設定をオンにする以前のデータは遡って取得できない 問題が発生した時に備えて、ぜひモニタリング・ログデータの取得設定を!
最後に • RDS に限らず、サーバは落ちるもの • 大事なデータベースは、マルチ AZなどの冗長化や リードレプリカなどの負荷分散の検討が必要 • 落ちた時に、落ち着いて状況を把握したり、次につながる改善策を考えるためにも、
モニタリングとロギングは超大事
原因がわかれば怖くない!
None