IBM Cloud サポート統合

パフォーマンスの問題について、 IBM Cloud サポートにいつ、どのように連絡すればよいかを知る。

セルフサービス・リソース

チケットを開く前に、以下を確認してください:

IBM サポートに連絡する場合

以下に該当する場合は、サポートにご連絡ください:

  • このガイドに従った後でも、パフォーマンスの問題が解決しない。
  • 最適化したにもかかわらず、レプリケーションの遅延が続いている。
  • ディスクのレイテンシは、ワークロードが急増しても高いままだ。
  • インフラレベルの問題が疑われる。
  • スケーリング後の予期せぬ動作。
  • 派遣の健康問題。
  • バックアップやリストアの問題

サポートに連絡する前に

以下の情報を収集します。

  • デプロイメントの詳細

    • 配備ID(CRN)
    • リージョンとアベイラビリティ・ゾーン
    • 現在の計画とリソース
    • MongoDB のバージョン
  • 問題の詳細

    • 問題の発生時刻(タイムゾーン付き)
    • 観察された症状
    • アプリケーションへの影響
    • 最近の変更(コード、コンフィギュレーション、スケーリング)
  • パフォーマンス・データ

    • Sysdigによるモニタリングのスクリーンショット
    • 問題を引き起こすクエリー例
    • 診断コマンドからの出力
    • Activity Tracker 発行期間中のイベント
  • MongoDB 診断学

    # Collect diagnostic data
    mongo "your-connection-string" --eval "
      printjson(db.serverStatus());
      printjson(db.currentOp());
      printjson(rs.status());
    " > mongodb-diagnostics.json
    

サポート・チケットのオープン

IBM Cloud コンソールを使用する場合

  1. トップメニューの「 サポート 」に移動します。
  2. 「ケース の作成」 をクリックします。
  3. セレクト Databases for MongoDB.
  4. 重大度レベルを選択します。
  5. 詳しく説明してください。
  6. 診断ファイルを添付する。

IBM Cloud CLI の使用

# Create support case
ibmcloud support case-create \
  --subject "MongoDB Performance Issue" \
  --description "Detailed description of issue" \
  --severity 2 \
  --offering databases-for-mongodb

重大度レベル

重大度レベル
重大度 説明 応答時間
1 (重大) 生産停止、データ損失 1 時間
2(高) パフォーマンスの大幅な低下 2 時間
3(ミディアム) 中程度の影響、回避策あり 4 時間
4(低い) 一般的な質問、機能要望 8 時間

エスカレーション手順

予想される期間内に問題が解決しない場合:

  1. 緊急にサポートケースを更新してください。
  2. IBM アカウントチームまでお問い合わせください。
  3. クリティカルな問題については、管理者にエスカレーションを要請する。

ベストプラクティスをサポートする

  • 前もって完全な情報を提供する。
  • サポート依頼に迅速に対応する。
  • 提案された解決策を、まず非本番環境でテストする。
  • 将来の参考のために、解決策を文書化する。

クイックリファレンス:診断コマンド

パフォーマンスのトラブルシューティングに不可欠な MongoDB コマンド。

診断コマンド
コマンド 目的 キー・メトリック 正常値
db.serverStatus() サーバー全体の統計 CPU、メモリ、接続 仕事量によって異なる
db.serverStatus().connections 接続統計 現在、利用可能 < 利用可能な80%未満
db.serverStatus().opcounters オペレーション・カウンター 挿入、クエリ、更新、削除 ベースライン依存
db.serverStatus().locks 統計のロック グローバルロック時間 < 総時間の10%未満
db.serverStatus().wiredTiger.cache キャッシュ統計 キャッシュ・ヒット率

95%

db.currentOp() 現在の事業 アクティブなクエリー、ロック 長期作戦はほとんどない
db.currentOp({ waitingForLock: true }) ロック待ちオペレーション ロック競合 空でなければならない
rs.status() レプリカセットの状態 レプリケーション・ラグ、メンバーの健康状態 ラグ < 1秒
rs.printSecondaryReplicationInfo() レプリケーション・ラグの詳細 セカンダリーあたりのラグ ラグ < 1秒
db.collection.stats() 収集統計 サイズ、インデックスサイズ、ドキュメント数 成長を監視する
db.collection.find().explain("executionStats") クエリ実行計画 実行時間、調査された文書 インデックスを使用する
db.system.profile.find() 遅いクエリーログ スローオペレーション 定期的な見直し
sh.status() シャーディングの状態(該当する場合) チャンク分配 均等配分
db.adminCommand({ top: 1 }) コレクション利用統計 ホットコレクション 最適化ターゲットの特定
db.printReplicationInfo() オプログ情報 オプログのサイズ、時間範囲 回復には十分

迅速な診断ワークフロー

// 1. Check overall health
db.serverStatus().ok  // Should return 1

// 2. Check connections
var conn = db.serverStatus().connections;
print("Connections: " + conn.current + "/" + conn.available);

// 3. Check replication (if replica set)
rs.status().ok  // Should return 1

// 4. Check for slow operations
db.currentOp({ "secs_running": { $gt: 5 } })

// 5. Check cache efficiency
var cache = db.serverStatus().wiredTiger.cache;
var hitRatio = 1 - (cache["pages read into cache"] /
  (cache["pages read into cache"] + cache["pages requested from the cache"]));
print("Cache hit ratio: " + (hitRatio * 100).toFixed(2) + "%");

// 6. Check for lock contention
db.currentOp({ waitingForLock: true })