SlideShare a Scribd company logo
MySQL Clusterの
トラブル事例
MySQL Casual Talks vol.9
2016/01/22
自己紹介
• いとう ひろゆき
• サーバ運用・保守が仕事
• MySQL好き、酒好き
• (最近ベンチマークおじさん言われる)
今回のLTについて
• 2014年6月に発表した以下のスライド以降に
遭遇したお話になります
• http://www.slideshare.net/hiroi10/mcct2-
pub
お題
• Free Memoryとは?
• 突如滞留するクエリ1
• 突如滞留するクエリ2
FreeMemoryとは?
MySQL Clusterでは
ndb_mgm> all report memoryusage;
Connected to Management Server at: ***.***.***.***:1186
Node 1: Data usage is 10%(****** 32K pages of total *******)
Node 1: Index usage is 8%(****** 8K pages of total *******)
Node 2: Data usage is 10%(****** 32K pages of total *******)
Node 2: Index usage is 8%(****** 8K pages of total *******)
ndb_mgm>
• 管理ノードより各データノードの空きメモリ
を確認できます
突然の更新エラー
こんなログがSQLノードに
1140 [ERROR] /usr/local/mysql/bin/mysqld: The table ‘t1' is full
1140 [ERROR] /usr/local/mysql/bin/mysqld: The table ‘t2' is full
• 原因が割と 。空きはあるのに無いといわれ
る
対応
• DataMemoryを増やしてローリングリスタート
• 何もせずにローリングリスタートしても使用
不可領域の回収が行われるのか一時的には直
る
• データ量が多いテーブルのレコードを削除
突如滞留するクエリ1
定期的に一定時間クエリが滞留
• 最初原因が不明だったが、LCPが終わったタ
イミングで復旧していることが判明
• この症状が発生したMySQL Cluster環境では
FragmentLogFileSize(REDOログ)が小さいま
まだった
MySQL Clusterの動き
• 更新が多い環境ではほぼ常時LCPが行われる
• LCPはDataMemoryに入っている情報をファイ
ルとして書き出す処理(永続化のため)。最近の
バージョンでは2世代分保存する。
• 書き出している間の更新はGCP(REDOログ)に
保存する
REDOログが小さいと
• LCPの書き出しが終わる前にREDOログの領域
を使い切ってしまうと、LCPが完了するまでク
エリをブロックしてしまう
対応
• FragmentLogFileSizeを増やしてイニシャルロー
リングリスタート
• 別の対応としてはLCPの書き込み速度が7.3では
デフォルト10MB/sなのでこれを増やすのもあ
りだと思います
突如滞留するクエリ2
不定期にクエリが滞留
• これも原因が最初不明。発生が不定期だった
があるタイミングを境に収束
• 1台のデータノードのログにWARNINGのログ
が出力されていることを確認
こんなログ
[ndbd] WARNING  -- Ndb kernel thread 2 is stuck in: Job Handling elapsed=100
[ndbd] WARNING  -- Ndb kernel thread 3 is stuck in: Job Handling elapsed=100
[ndbd] WARNING  -- Ndb kernel thread 4 is stuck in: Job Handling elapsed=100
[ndbd] WARNING  -- Ndb kernel thread 6 is stuck in: Job Handling elapsed=100
[ndbd] WARNING  -- Ndb kernel thread 7 is stuck in: Job Handling elapsed=100
[ndbd] WARNING  -- Watchdog: Warning overslept 22447 ms, expected 100 ms.
[ndbd] WARNING  -- thr: 7: Overslept 4437 ms, expected ~10ms
[ndbd] WARNING  -- thr: 6: Overslept 4436 ms, expected ~10ms
[ndbd] WARNING  -- thr: 5: Overslept 4439 ms, expected ~10ms
[ndbd] WARNING  -- thr: 4: Overslept 4439 ms, expected ~10ms
[ndbd] WARNING  -- thr: 3: Overslept 4439 ms, expected ~10ms
LCP Frag watchdog : No progress on table 38, frag 15 for 29 s.  336576 rows
completed
LCP Frag watchdog : No progress on table 38, frag 9 for 29 s.  336576 rows
completed
原因
• データノードのサーバはSAS HDD 4本の
RAID10で運用していたが、1台のHDDが中途
半端に壊れかけてRAIDコントローラーから切
り離されないせいで発生していた
• その結果書き込み待ちになり、書き込みが完
了するまでクエリが応答出来なかった模様
対応
• RAIDコントローラーから見たHDDがFailedに
なって自然復旧。。。
• iostatのUtilとかから検知出来そう。また単純に
ログを監視しても良さそう。
その他
• MySQL Cluster 7.2からは
TimeBetweenEpochsTimeoutがデフォルト0になり
GCP stopが起きないようになっている
• 今回のケースだとTimeBetweenEpochsTimeoutを7.1
の頃の4000とかにしておけばGCP stopが起きて対象
のデータノードのみ停止していたかもしれません
まとめ
• 前回の発表から1年半ぐらい経過したけどこの
ぐらいなので(思ったより)安定してると思いま
す。

More Related Content

PDF
カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
PDF
5分で作るMySQL Cluster環境
PPTX
MCCT20130926 tsakuradac
PDF
Tritonn (MySQL5.0.87+Senna)からの mroonga (MySQL5.6) 移行体験記
PDF
SQL+NoSQL!? それならMySQL Clusterでしょ。
PPTX
MySQL Clusterを運用して10ヶ月間
PDF
MySQL 4.0で9年動き続けたサーバを リプレイスしてバージョンアップした話
PDF
No sql with mysql cluster (MyNA・JPUG合同DB勉強会)
カジュアルにMySQL Clusterを使ってみよう@MySQL Cluster Casual Talks 2013.09
5分で作るMySQL Cluster環境
MCCT20130926 tsakuradac
Tritonn (MySQL5.0.87+Senna)からの mroonga (MySQL5.6) 移行体験記
SQL+NoSQL!? それならMySQL Clusterでしょ。
MySQL Clusterを運用して10ヶ月間
MySQL 4.0で9年動き続けたサーバを リプレイスしてバージョンアップした話
No sql with mysql cluster (MyNA・JPUG合同DB勉強会)

What's hot (19)

PDF
MySQL5.7とMariaDB10.1の性能比較(簡易)
PPTX
AWSのRedHatにMySQL最速インストール
PDF
5.7の次のMySQL
PDF
MySQL 5.7の罠があなたを狙っている
PDF
mikasafabric for MySQL
PDF
dbts2013:MariaDB Galera Cluster 活用例
PDF
逝くぞ最新版、罠の貯蔵は十分か
PPTX
MySQL5.6でGTIDを試してそっと閉じた
PDF
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
ODP
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
PPTX
dimSTATから見るベンチマーク
PDF
ゆるふわMySQLフェイルオーバー
PDF
MySQL 5.7の次のMySQLは
PPTX
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
PPTX
最近始めたあなたも今日から語れるようになるMySQLの{概要と最新情報}入門@
PDF
MySQLおじさんの逆襲
PDF
MySQL 5.6への完全移行を実現したTritonnからMroongaへの移行体験記
PDF
MySQLの冗長化 2013-01-24
PDF
What's New in MySQL 5.7 InnoDB
MySQL5.7とMariaDB10.1の性能比較(簡易)
AWSのRedHatにMySQL最速インストール
5.7の次のMySQL
MySQL 5.7の罠があなたを狙っている
mikasafabric for MySQL
dbts2013:MariaDB Galera Cluster 活用例
逝くぞ最新版、罠の貯蔵は十分か
MySQL5.6でGTIDを試してそっと閉じた
MySQL Cluster 7.4で楽しむスケールアウト @DB Tech Showcase 2015/06
MySQl 5.6新機能解説@第一回 中国地方DB勉強会
dimSTATから見るベンチマーク
ゆるふわMySQLフェイルオーバー
MySQL 5.7の次のMySQLは
OSC2017 Hokkaido. MySQL今こそインストールを極めよう~改めて考える環境構築~
最近始めたあなたも今日から語れるようになるMySQLの{概要と最新情報}入門@
MySQLおじさんの逆襲
MySQL 5.6への完全移行を実現したTritonnからMroongaへの移行体験記
MySQLの冗長化 2013-01-24
What's New in MySQL 5.7 InnoDB
Ad

Viewers also liked (16)

PPTX
MySQLメインの人がPostgreSQLのベンチマークをしてみた話
PDF
MySQL 監査システムを作った話 #mysqlcasual
PPTX
ITエンジニアの幸せな働き方(仮)
PDF
オープンソース・データベースの最新事情
PDF
NDBCLUSTERを使わない理由
PPTX
innodb_thread_concurrencyとtransparent hugepageの影響
PDF
InnoDB Table Compression
PDF
MyNA JPUG study 20160220-postgresql-json-datatype
PDF
イルカさんチームからゾウさんチームに教えたいMySQLレプリケーション
PDF
MySQLトラブル解析入門
PDF
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
PDF
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
PDF
ヤフー社内でやってるMySQLチューニングセミナー大公開
PDF
Blazing Performance with Flame Graphs
PDF
PostgreSQLによるデータ分析ことはじめ
PDF
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
MySQLメインの人がPostgreSQLのベンチマークをしてみた話
MySQL 監査システムを作った話 #mysqlcasual
ITエンジニアの幸せな働き方(仮)
オープンソース・データベースの最新事情
NDBCLUSTERを使わない理由
innodb_thread_concurrencyとtransparent hugepageの影響
InnoDB Table Compression
MyNA JPUG study 20160220-postgresql-json-datatype
イルカさんチームからゾウさんチームに教えたいMySQLレプリケーション
MySQLトラブル解析入門
[db tech showcase Tokyo 2015] B15:最新PostgreSQLはパフォーマンスが飛躍的に向上する!? - PostgreSQ...
メルカリのデータベース戦略 / PHPとMySQLの怖い話 MyNA会2015年8月
ヤフー社内でやってるMySQLチューニングセミナー大公開
Blazing Performance with Flame Graphs
PostgreSQLによるデータ分析ことはじめ
データモデルについて知っておくべき7つのこと 〜NoSQLに手を出す前に〜
Ad

Similar to MySQL Clusterのトラブル事例 (11)

PDF
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
PDF
States of Dolphin - MySQL最新技術情報2013秋 -
PDF
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
PDF
MySQL at Yahoo! JAPAN #dbts2018
KEY
1台から500台までのMySQL運用(YAPC::Asia編)
PPTX
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
PDF
ScyllaDBユーザー勉強会 #1
PDF
スケールアップファーストのNoSQL、ScyllaDB(スキュラDB)
PPTX
暗号通貨読書会 #7: Bitcoin NG
PDF
5分で作るMySQL Cluster環境
PPTX
マイクロサービスとは.pptx
汎用性と高速性を目指したペアリング暗号ライブラリ mcl
States of Dolphin - MySQL最新技術情報2013秋 -
Yahoo! JAPANのプライベートRDBクラウドとマルチライター型 MySQL #dbts2017 #dbtsOSS
MySQL at Yahoo! JAPAN #dbts2018
1台から500台までのMySQL運用(YAPC::Asia編)
ネクスト・ジェネレーションクラウドネットワーク~雲の中のリストラクチャリング~
ScyllaDBユーザー勉強会 #1
スケールアップファーストのNoSQL、ScyllaDB(スキュラDB)
暗号通貨読書会 #7: Bitcoin NG
5分で作るMySQL Cluster環境
マイクロサービスとは.pptx

MySQL Clusterのトラブル事例