スライド1: Debug Hacks ボツネタ集ミラクル・リナックス吉田Ver1.1
スライド2: Debug Hacks没ネタ・トラブルシューティング・ログ採取・開発環境・ボトルネックの分析・OSインストール/起動障害・テスト・サービス監視、自動復旧・等Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 2
スライド3: printfデバッグ・デバッガが使えない場合のデバッグに有効・例 デバッガ自身のDebug・リリース版とデバッグ版に管理が2重化する・オプションの場合もプログラム挙動が変化することがある・吉岡さんのポリシーで禁じられている。Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 3
スライド4: その他、触れられなかったツール・Btrax、VESPER・ftrace、LTTng、dmalloc、blktrace、utrace・kgdb、KDB、 lockmeter、mpatrol、・lockdepe、1000_dump、kmemcheck等Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 4
スライド5: トラブルシュート・問題切り分け・暫定回避(ワークアラウンド)・トラブルシューティングハックスhttp://blog.miraclelinux.com/thethird/files/DebugHacksHacks.xulCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 5
スライド6: ログ採取・効果的なログ採取・syslog・sysstat・mcinfo・パケット調査・ethereal/wireshark・tcpdumpCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 6
スライド7: 開発環境(1)・gdb+emacs・gcc拡張について・オブジェクトからの関数シンボルの抽出・nm・etags --declarationsCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 7
スライド8: 開発環境(2)・ソースコード参照システム・cscopeによる効率的なソース読解・cscope+vim・cscope+emacs・lxr(Linux Cross-Reference)・lxrサイトの利用・lxrによるwebの構築Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 8
スライド9: 開発環境(3)・git ・bisect ・git+emacs・gitGUI・高速コンパイル・分散コンパイル(distcc)・再コンパイル高速化(ccache)・高速カーネルビルドCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 9
スライド10: ボトルネックの分析・sar、iostat、top、vmstat・/proc/meminfo等・機能に応じたベンチマークの選択・bonnie・iozone・hackbench・等Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 10
スライド11: チューニング・sysctl・メモリ関連・ディスク関連・ネットワーク関連・スケジューラ・カーネル再構築Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 11
スライド12: OSインストール/起動障害・インストーラが起動しない・kernel bootオプション/サウスチップ等・ディスクが見えない・ストレージ(RAID/SCSI等)・ネットワークにつながらない・NICドライバ・GUI・XCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 12
スライド13: テスト・全ルート網羅試験・gdb を使ったソースコード全ルート網羅試験・p variable=value を利用したエラールートの通し方。・-x/.gdbinit を利用した各ルートごとの効率的なデバッグ・いかに .gdbinit を上手く作って楽をするか・バージョン違いのソースでデバッグするためのsource パス・デバッグログのとりかたCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 13
スライド14: サービス監視・ZABBIX・アプリケーション ストール監視・MAZE機能(MiracleLinuxV5独自機能)・HAクラスタ・MiracleFaleSafe(MiracleLinuxV5HA)Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 14
スライド15: サービス監視・ZABBIX・ 監視機能・ 機器から情報を取得する・ 取得したデータの保存・ 履歴管理・表示機能・ 監視データの管理・表示・ グラフ、マップの表示・ 障害履歴管理・表示・ 通知機能・ 障害を検知するための閾値設定・ 管理者への障害/復旧通知MySQLPostgreSQLOracle SQLiteApache + PHPZABBIX=統合監視ソフトウェア表示設定障害通知ZABBIX Server管理者Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 09/05/29 Copyright © 2000-2009 MIRACLE LINUX CORPORATION All rights reserved SNMP &SNMP TrapPing/ポート監視15ネットワーク機器ZABBIX AgentAgent導入サーバAgent未導入サーバ15
スライド16: 暴走検知(MAZE監視)機能特定したプロセスの暴走を監視、終了 (注1) させる機能暴走プロセスの早期発見・終了させることで、システムの安定稼働を支援ライブラリにより他ソフトとの連携 (注2) が可能暴走プロセスの再起動や他ソフトへの通知、任意のアクションを実行CPU0CPU1通常プロセス暴走プロセスAsianux Server 3==MIRACLE LINUX V5暴走を検出ひとつが暴走しCPU1が100%他のプロセスが一気にCPU0に集中システム全体が不安定に。暴走プロセスを終了させることでシステム全体が安定する他ソフトに通知ログに記録プロセスの再起動一定時間 (注3) 過ぎると、OSから強制終了させるCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 「暴走」とはソフトウェアの無限ループを指します注1:シグナルにより終了させます注2:ライブラリを使ったプログラムを作成する必要があります。注3:時間は設定可能16
スライド17: 自動復旧 MIRACLE Linux V5 HA(Miracle FailSafe)・ 監視機能・ HW監視NIC監視:Link Down, Ping失敗ディスク監視:HW障害、ストール・ SW監視OSストールOracle DB, PostgreSQL, MySQL,WebLogic, WebSphere, Apache, Tomcatftp, pop, imap, Sendmail, Postfix, Samba・ 復旧機能・ サーバの再起動、SWの再起動ML FailSafeがOSのストールを検出ML FailSafeがOSを再起動・復旧 障害件数230件のうち救済可能件数162件(NEC PPサポート調べ)ML FailSafeがDBの異常を検出DBCopyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved Copyright © 2000-2009 MIRACLE LINUX CORPORATION All rights reserved シングルサーバのシステムダウンの約70%はOS/AP再起動で業務再開可能障害件数 救済可能件数 救済率HW障害 76 43 58%SW障害 98 86 86%人為ミス 56 33 58%合計 230 162 70% (*)HW障害、SW障害、人為ミスの割合はGartnerの割合とほぼ一致。)ML FailSafeがDBを再起動・復旧DBPage1717
スライド18: 質疑応答は懇親会にて・ 休憩、懇親会準備・ 書籍販売 20:10~・ 机、ピザ配置、ビール配布 開始・ 乾杯 20:20~・ ネット参加者向け『Debug Hacks』と・ Tシャツが当たるプレゼント結果発表 20:25~・ 会場での抽選会(じゃんけん大会) 20:30~・ サイン会Time 20:40~・ 解散 21:15Copyright © 2000-2008 MIRACLE LINUX CORPORATION All rights reserved 18