BIG-IP の QKView 取得と iHealth 解析の手順|CLI と GUI の使い分け

  • URLをコピーしました!
目次

はじめに

F5 BIG-IP の運用中に、原因不明のエラーや障害でサポート問い合わせを行うと、最初に求められるのが QKView(キューケービュー)の提出です。

QKView は、BIG-IP の構成情報・ログ・統計データなどを単一の診断ファイルにまとめたもので、F5 サポート側での原因切り分けには欠かせない情報源です。

本記事では、QKView の取得手順について、初心者向けの GUI 操作と、実務でよく使われる CLI 操作の両方を解説します。あわせて、取得した QKView を F5 iHealth で解析するセルフチェックの手順、CLI オプションの実用例、ハマりやすい制約事項、HA 構成や F5OS(rSeries / VELOS)での違いについても整理します。

※ 本記事の手順は BIG-IP 17.5.x をベースに、BIG-IP 15.x / 16.x でも共通する内容で記載しています。BIG-IP 16.1.x は 2025 年 7 月 31 日に EoTS(End of Technical Support)に到達しているため、サポート対象外バージョンを運用中の場合はアップグレードを推奨します。

この記事でわかること
  • GUI(ブラウザ)から QKView を取得する手順
  • CLI(コマンド)から QKView を生成・ダウンロードする手順
  • 取得時のシステム負荷や -s 0 の挙動など、ハマりやすい制約
  • F5 iHealth を使った診断結果(Heuristics)の確認手順
  • GUI / CLI / iHealth 直接アップロードの使い分け基準
  • rSeries / VELOS / BIG-IP Next での取得方法の違い

QKView と iHealth の概要

作業手順に入る前に、それぞれの役割を整理します。

QKView(診断データファイル)

QKView は、BIG-IP システムの構成情報・ログファイル・ハードウェアステータス・統計情報などを、単一の圧縮アーカイブ(tar.gz 形式)にまとめた診断データです。拡張子は .qkview で、内部には machine-readable な診断データが含まれます。

参考: F5 K12878 – Generating diagnostic data using the qkview utility
“The qkview utility is an executable program that generates machine-readable (XML) diagnostic data and combines the data into a single compressed Tape ARchive (TAR) format file.”
(qkview ユーティリティは、machine-readable な診断データを生成し、それらを単一の圧縮 TAR フォーマットファイルにまとめる実行プログラムです。)
https://my.f5.com/manage/s/article/K12878

設定・ログ・OS の状態・過去の統計情報まで含まれているため、システムの全体像を把握する用途に適しています。

rSeries / VELOS(F5OS)では出力形式が JSON ベースの tar.gz になります。BIG-IP(TMOS)と F5OS では取得方法も異なる点に注意が必要です(詳細は後述)

iHealth(クラウド型解析ツール)

iHealth は、QKView ファイルを解析する F5 公式のクラウドサービスです。F5 サポートアカウントがあれば無償で利用可能で、QKView をアップロードすると、F5 のナレッジベースと照合した自動診断が実行されます。

主な診断内容は次のとおりです。

  • 設定の妥当性チェック(推奨値からの乖離)
  • 既知のバグ・脆弱性(CVE)への該当判定
  • リソース使用状況(CPU・メモリ・ディスク)の評価
  • ベストプラクティスからの逸脱箇所の指摘

参考: F5 TMOS Operations Guide – BIG-IP iHealth
“F5 recommends that you download a qkview file from your BIG-IP system and upload it to iHealth on a weekly basis.”
(F5 は、BIG-IP システムから QKView ファイルをダウンロードして iHealth へ週次でアップロードすることを推奨しています。)

QKView は障害発生時にサポートへ提出するためだけのものではありません。平時から定期的(F5 推奨は週 1 回)に iHealth でセルフチェックを行うことで、潜在的なリスクを事前に把握できます

取得方法 ① GUI から取得する手順

ブラウザ操作のみで完結する基本的な取得方法です。CLI 操作に不慣れな場合や、システム負荷に余裕がある通常時はこの手順で十分です。

STEP
管理画面へのアクセス

BIG-IP の管理画面(HTTPS)に管理者権限でログインし、左メニューから次の順に進みます。

System > Support
STEP
スナップショット作成画面を開く

画面右上の [New Support Snapshot] をクリックします。

STEP
オプションの選択

「Health Utility」が選択されていることを確認し、実行モードを選択します。この選択が運用設計の分岐点になります。

オプション動作利用シーン
Generate and Upload QKView to iHealthQKView を生成し、F5 iHealth へ直接アップロードBIG-IP がインターネット接続可能で、F5 サポートアカウントを保有している環境
Generate QKView(推奨)QKView を生成し、PC へ手動ダウンロード閉域環境・セキュリティポリシーで直接アップロードが制限される環境

多くの企業環境では、サーバーから外部インターネットへの直接接続がポリシーで制限されているため、「Generate QKView」での手元ダウンロードが現実的な運用となります

STEP
生成と取得

[Start] をクリックすると QKView の生成が始まります。生成にはモジュール構成やログ量により 2〜10 分程度かかることがあります。完了後、表示される [Download] リンクから .qkview ファイルをダウンロードしてください。

参考: F5 BIG-IP techdocs(QKView 生成の挙動)
“It takes a few minutes for the system to finish creating the report and list it on the screen. The QKView Status changes to File generated successfully when it is done.”
(レポートの生成には数分かかり、完了すると QKView Status が “File generated successfully” に変わります。)
https://techdocs.f5.com/

※ QKView 生成中は BIG-IP 上で多数のコマンドが内部実行されます。システム負荷が高まるため、トラフィックピーク時間帯の取得は避けることを推奨します

取得方法 ② CLI で生成して GUI で取得する手順

実務の現場では、GUI ではなく CLI を使うケースが多くあります。

CLI を使うメリット

  • 動作が軽い: 障害発生時など BIG-IP の負荷が高く GUI が応答しにくい状況でも、CLI なら操作可能
  • 生成が速い: GUI の描画処理が介在しないぶん、コマンド実行のみで生成が完了する
  • 自動化に向く: ssh 経由でのバッチ実行やスクリプト化が容易
STEP
コマンドで生成する

SSH(Tera Term、PuTTY、OpenSSH 等)で BIG-IP に管理者権限でログインし、次のコマンドを実行します。

qkview

オプションなしで実行すると、デフォルトで /var/tmp/ 配下に <ホスト名>.tar.qkview というファイルが生成されます。

参考: F5 tmsh-reference – util qkview
“qkview files can only be written into /var/tmp/ and its subdirectories, and any filename given with the -f option will be prepended with /var/tmp/ unless the filename already begins with /var/tmp.”
(QKView ファイルは /var/tmp/ およびそのサブディレクトリにのみ書き込み可能です。-f で指定したファイル名が /var/tmp で始まらない場合、自動的に /var/tmp/ がプリペンドされます。)
https://clouddocs.f5networks.net/cli/tmsh-reference/v14/modules/util/util-qkview.html

任意のディレクトリへは出力できない仕様のため、出力先を指定する場合もファイル名のみを指定する形が一般的です。

STEP
ファイルをダウンロードする

ここで注意したいのが、WinSCP / SFTP / SCP での直接ダウンロードが制限されるケースです。

WinSCP で接続できない場合がある

最近のバージョンや管理者権限の制限環境では、tmsh シェル制限などのセキュリティ強化により、SFTP / SCP 接続が拒否される構成が増えています。一般ユーザー(admin 等)のデフォルトシェルが tmsh の場合、外部ツールからのファイル転送が成立しません。

解決策: CLI 生成 → GUI ダウンロードの組み合わせ

WinSCP の設定を変更したり、シェルを bash に切り替える運用は、セキュリティポリシー上の影響範囲が広いため推奨しません。代わりに「生成は CLI、ダウンロードは GUI」という組み合わせ運用が安全です。

CLI で qkview コマンドが正常終了すると、GUI の System > Support 画面のスナップショット一覧にも反映されます。GUI を開いて該当ファイルの [Download] ボタンを押すだけで、安全かつ確実にローカル PC へ取得できます。

よく使う CLI オプション

qkview コマンドには複数の実用的なオプションがあります。代表的なものを整理します。

参考: F5 K23928121 – Overview of qkview command-line options
https://my.f5.com/manage/s/article/K23928121

オプション用途使用例
-f <ファイル名>出力ファイル名の指定qkview -f mybigip-20260425.tar.qkview
-s <バイト数>最大ファイルサイズの指定qkview -s 1073741824(1 GB 上限)
-Cコアファイルを除外(容量削減)qkview -C
--exclude <モジュール>指定モジュールを除外qkview --exclude all
-c完全な情報を収集(機微情報含む)qkview -c
-t <秒>モジュールごとのタイムアウト秒数qkview -t 300
-hヘルプ表示qkview -h

重要: -s 0 の落とし穴

「サイズ無制限にしたいから -s 0 を指定」と考えると失敗します。-s 0 は無制限ではなく 75 MB 相当として扱われる仕様で、ログ量の多い環境では情報が途中で切り詰められます。

参考: F5 K23928121(-s オプションの挙動)
“Set maximum file size to capture, in bytes. Setting this value to -s 0 is equivalent to 75 MB.”
(取得するファイルサイズの最大値をバイト単位で指定します。-s 0 を指定した場合、75 MB を指定したのと同等になります。)
https://my.f5.com/manage/s/article/K23928121

実質的にサイズ上限を引き上げたい場合は、明示的に大きな値を指定する形が安全です。

# OK: 1 GB を上限として指定
qkview -s 1073741824

高負荷時の低優先度実行

BIG-IP の負荷が高い状況で QKView を取得する場合は、nice -n 19 を併用することで qkview プロセスを最低優先度で実行できます。これにより、トラフィック処理への影響を抑えながら情報収集が可能になります。

nice -n 19 qkview

高負荷環境では nice -n 19 指定により取得時間が長くなる場合があります。緊急性とのトレードオフで判断することを推奨します。

QKView 取得時の制約事項とハマりポイント

QKView の取得そのものは難しくありませんが、実務で遭遇しやすい制約や注意点がいくつかあります。事前に把握しておくことで、障害対応中の手戻りを減らせます。

制約 1: 出力先ディレクトリは /var/tmp/ 配下に固定

qkview コマンドの出力先は /var/tmp/ およびそのサブディレクトリに固定されています。-f オプションでファイル名を指定しても、/var/tmp/ 以外のパスは受け付けません。

# NG: 任意ディレクトリへの出力は不可(自動で /var/tmp/ にプリペンドされる)
qkview -f /home/admin/mybigip.tar.qkview

# OK: ファイル名のみ指定(/var/tmp/mybigip.tar.qkview として出力される)
qkview -f mybigip.tar.qkview

/var/tmp/ の空き容量が不足している環境では、QKView 生成自体が失敗する場合があります。事前に df -h /var/tmp で空き容量を確認することを推奨します。目安として 1〜2 GB の空きがあれば、ほとんどの環境で問題なく取得可能です。

制約 2: -s 0 は「無制限」ではない

CLI オプションの解説でも触れましたが、実務での遭遇率が高いため再掲します。

-s オプションは取得ファイルサイズの上限をバイト単位で指定しますが、-s 0 を指定すると 75 MB 相当として扱われ、ログ量の多い環境では情報が途中で切り詰められます。サイズ上限を引き上げたい場合は、明示的に大きな値を指定してください。

# NG: 「無制限」と思って指定すると 75 MB で切り詰められる
qkview -s 0

# OK: 1 GB を上限として指定
qkview -s 1073741824

制約 3: QKView 生成中はシステム負荷が上がる

QKView の生成中、BIG-IP は多数の診断コマンドを内部で並列実行します。すでに高負荷状態の環境では、追加のリソース消費がトラフィック処理に影響する可能性があります。

参考: F5 K12878 – Generating diagnostic data using the qkview utility
“The qkview utility runs a large number of commands when collecting information. This behavior may cause an additional performance burden on systems that are already under heavy load.”
(qkview ユーティリティは情報収集時に多数のコマンドを実行します。すでに高負荷のシステムでは、追加の負荷を生じる可能性があります。)
https://my.f5.com/manage/s/article/K12878

対処パターンは次のとおりです。

状況推奨アプローチ
トラフィックピーク時間帯取得を可能な限り避け、低負荷時間帯にずらす
障害対応で取得が必須nice -n 19 qkview で最低優先度実行
HA 構成Standby 機から先に取得し、Active への影響を最小化
取得が途中で止まる/var/tmp 容量・CPU 負荷・タイムアウト(-t オプション)を確認

制約 4: HA 構成では Active / Standby の両系から取得が必要

冗長構成(Active / Standby)の BIG-IP では、両系から QKView を取得することを推奨します。片系のみの取得では、フェイルオーバー挙動や Config Sync の差分など、HA 関連のトラブル切り分けに必要な情報が片落ちになります。

取得順序の推奨は次のとおりです。

  1. Standby 機から先に取得(トラフィック影響なし)
  2. Standby の取得完了を確認後、Active 機を取得(必要に応じて nice -n 19 併用)

F5 サポートへ提出する際は、両系の QKView をセットで送付し、どちらが Active / Standby かをチケット上で明記することで、サポート側の調査がスムーズに進みます。

制約 5: 機微情報の取り扱い

qkview の標準出力には、設定情報・証明書情報・ログなど機微情報が含まれる可能性があります。F5 は出力時にパスワードや共通鍵などの一部フィールドを難読化しますが、IP アドレス・ホスト名・カスタム iRule の内容などは含まれます。

外部とやり取りする際は、次のオプションで含まれる情報量を制御できます。

# ASM のリクエストログや audit ログを除外
qkview --exclude audit --exclude secure

# 全ての除外可能モジュールを除外(最小情報での取得)
qkview --exclude all

社内の情報取扱規定に応じて、「サポート提出向け(フル取得)」と「外部共有向け(最小取得)」を使い分けることを推奨します。

制約 6: BIG-IP のシェル制限環境での取得

セキュリティ強化された環境では、admin ユーザーのデフォルトシェルが tmsh に制限されており、bash プロンプトに直接降りられない場合があります。この場合、qkviewtmsh から次のように実行できます。

# tmsh プロンプトから直接実行
admin@(bigip-01)(tmos)# run util qkview

参考: F5 tmsh-reference – util qkview
https://clouddocs.f5networks.net/cli/tmsh-reference/v14/modules/util/util-qkview.html

bash 経由でも tmsh 経由でも、生成される .qkview ファイルの内容は同等です。

F5 iHealth で診断結果を確認する手順

取得した QKView ファイルは、テキストエディタで開いても直接読み解くことは困難です(machine-readable データと圧縮ログの集合のため)。F5 iHealth にアップロードすることで、初めて人間が読める診断レポートとして活用できます

STEP
iHealth へのアップロード

ブラウザで F5 iHealth にアクセスし、F5 サポートアカウントでログインします。トップ画面の [Upload] ボタンから、ダウンロード済みの .qkview ファイルをドラッグ&ドロップでアップロードします。

アップロード対象に機微な設定情報が含まれる場合は、事前に qkview --exclude all 等で除外オプションを併用することを推奨します。F5 サポートが特定モジュールの情報を必要とする場合のみ、-c オプションでの完全収集に切り替える運用が安全です。

STEP
診断結果(Heuristics)の確認

アップロード完了後、解析が終わるとダッシュボードが表示されます。左メニューの [Diagnostics](または Heuristics)をクリックすると、重要度別に診断結果が並びます。

重要度内容と対応方針
Highシステム停止に直結する設定ミスや、重大な脆弱性(CVE)への該当の可能性。最優先での確認・対処を推奨します。
Medium推奨値からの乖離や軽微なバグ情報。次回メンテナンス時の修正検討を推奨します。
Low青/緑ベストプラクティスの案内・情報提供。

iHealth は問題箇所の指摘だけでなく、該当する F5 公式ナレッジベース(AskF5 / my.f5.com)へのリンクをセットで提示します。これにより、原因調査と対処手順の確認を大幅に短縮できます。

iHealth の活用タイミング

タイミング目的
障害発生時F5 サポートへの問い合わせ前にセルフチェック。原因を絞り込めるケースが多い
アップグレード前後既知バグや構成ミスの事前洗い出し、アップグレード起因の挙動変化の可視化
平時(週次)F5 公式推奨。潜在的リスクの早期発見

アップグレード前後の QKView 比較は、BIG-IP アップグレード手順とあわせて実施することで、変更起因の挙動変化を可視化できます。(※ 関連記事がある場合は内部リンクに差し替えてください)

GUI / CLI / アップロード方式の使い分け

QKView の取得経路には複数の選択肢があり、運用環境やセキュリティポリシーに応じて使い分けが必要です。判断基準を整理します。

取得経路の比較

比較軸GUI 取得(手元保存)CLI 取得(手元保存)iHealth 直接アップロード
操作性直感的・初心者向けコマンド習熟が必要GUI / CLI どちらからも実行可
動作の軽さGUI 描画があるため重め軽快(高負荷時も操作可)GUI / CLI 双方の特性を継承
インターネット接続不要不要BIG-IP からの直接接続が必要
F5 アカウント不要不要必須(管理画面で事前設定)
自動化適性高(ssh + cron 等で自動化可)中(CLI 経由なら自動化可能)
セキュリティ要件緩い環境向け緩い環境向け閉域要件があると不可
オプション指定限定的柔軟(全オプション利用可)GUI / CLI の制約を継承

シーン別の推奨パターン

シーン推奨経路理由
通常運用・初回取得GUI 取得操作ミスが少なく、視覚的に進捗確認可能
障害対応中(GUI が重い)CLI 取得 + GUI ダウンロードCLI なら高負荷時も操作可、ダウンロードは GUI で安全に
定期チェック(自動化)CLI + ssh スクリプトcron や Ansible で週次自動化
F5 サポートへの即時提出iHealth 直接アップロード(接続可能なら)提出フローが最短
閉域環境・機微環境CLI 取得 + 手動アップロード外部接続を介さない
容量削減が必要CLI(-C --exclude allコアファイル除外で大幅に容量削減

iHealth 直接アップロードの事前設定

GUI / CLI どちらから iHealth に直接アップロードする場合も、F5 サポートアカウントの認証情報を事前に BIG-IP へ登録する必要があります。プロキシ経由のアップロードも公式にサポートされています。

参考: F5 BIG-IP techdocs – Configure iHealth uploads and web proxy
“If the host does not have internet access to reach f5.com, you can configure the system to upload QKView files to iHealth using a web proxy.”
(ホストが f5.com への直接インターネット接続を持たない場合、Web プロキシ経由で QKView ファイルを iHealth にアップロードするよう設定できます。)
https://techdocs.f5.com/

プロキシ環境下で iHealth 直接アップロードを使う場合は、管理画面の System > Support > iHealth からプロキシ設定を行います。閉域要件が厳しい環境では、手元保存 + 手動アップロードが現実的な選択です。

rSeries・VELOS・BIG-IP Next での違い

近年導入が進む新世代プラットフォーム(rSeries / VELOS / BIG-IP Next)では、従来の BIG-IP(TMOS)とは QKView の取得方法・出力形式が異なります。新環境への移行を検討中・実施中の場合は、ここを押さえておくことで移行後のサポート対応がスムーズになります

プラットフォーム別の取得方法サマリ

プラットフォームOSQKView 取得経路出力形式
BIG-IP(iSeries / VIPRION / VE)TMOSqkview コマンド or GUI(System > Support)XML ベースの tar.gz
rSeries(F5OS-A)F5OSsystem diagnostics qkview capture or GUI(Diagnostics > System Reports)JSON ベースの tar.gz
VELOS(F5OS-C)F5OSrSeries と同様の F5OS コマンド体系JSON ベースの tar.gz
BIG-IP NextBIG-IP Next OSCentral Manager 経由 or 各インスタンスの専用手順tar.gz

rSeries / VELOS(F5OS)の取得コマンド

F5OS では qkview 単独コマンドではなく、system diagnostics qkview capture という構造化されたコマンドを使用します。

# F5OS の config モードに入る
appliance-1# config
appliance-1(config)#

# QKView を生成(コアファイル除外、最大サイズ 500 MB、タイムアウトなし)
appliance-1(config)# system diagnostics qkview capture filename client-qkview exclude-cores true maxcoresize 500 maxfilesize 500 timeout 0

# 生成状況を確認
appliance-1(config)# system diagnostics qkview status

参考: F5 BIG-IP techdocs – QKView overview(F5OS)
“You can generate a QKView file from the CLI. … system diagnostics qkview capture exclude-cores [ false | true ] filename < … >”
(CLI から QKView ファイルを生成できます。)
https://techdocs.f5.com/en-us/f5os-a-1-3-0/f5-rseries-systems-supportability/overview-qkview.html

F5OS で押さえておくべき重要な制約

rSeries / VELOS の F5OS 層で取得した QKView は、テナント上で動作する BIG-IP の診断データを含みません

参考: F5 BIG-IP techdocs – rSeries Diagnostics
“The qkview utility on the rSeries system does not capture diagnostic data from tenant BIG-IP systems. To generate diagnostic data for a tenant BIG-IP, log in to the tenant system and perform the relevant procedure in: K12878.”
(rSeries システム上の qkview ユーティリティは、テナント BIG-IP からの診断データを取得しません。テナント BIG-IP の診断データを生成するには、テナントシステムにログインし、K12878 の手順を実行する必要があります。)
https://clouddocs.f5.com/training/community/rseries-training/html/rseries_diagnostics.html

つまり、rSeries / VELOS 環境でテナント BIG-IP のトラブルシュートを行う場合は、プラットフォーム層とテナント層の両方から QKView を取得する必要があります。

取得対象コマンド体系取得元
F5OS(プラットフォーム層)system diagnostics qkview capturerSeries / VELOS のシステム CLI
BIG-IP テナントqkview(従来どおり)テナント BIG-IP の CLI(K12878 の手順)

iHealth へのアップロードは共通

出力形式や取得経路は異なりますが、生成された QKView ファイルはいずれも iHealth へアップロード可能です。iHealth 側で自動的に形式を判別して解析します。

まとめ

本記事では、BIG-IP のトラブルシューティングに欠かせない QKView の取得方法と、iHealth による解析手順を解説しました。

  • QKView は BIG-IP の構成・ログ・統計を単一ファイルにまとめた診断データ
  • GUI(System > Support)と CLI(qkview コマンド)の両方で取得可能
  • WinSCP で取得できない環境では、CLI 生成 + GUI ダウンロードの組み合わせが安全
  • -s 0 は無制限ではなく 75 MB 相当として扱われる点に注意
  • 高負荷時は nice -n 19 qkview での低優先度実行を推奨
  • iHealth は F5 サポートアカウントがあれば無償で利用可能、週次のセルフチェックが公式推奨
  • HA 構成では Standby 機から取得し、両系の QKView をサポートにセット提出
  • rSeries / VELOS では F5OS 層とテナント BIG-IP の両方から取得が必要

以上、最後までお読みいただきありがとうございました。

よかったらシェアしてね!
  • URLをコピーしました!

この記事を書いた人

関西を拠点に活動する、現役インフラエンジニア。経験20年超。

大手通信キャリアにて、中〜大規模インフラ(ネットワーク・サーバ・クラウド・セキュリティ)の設計・構築およびプロジェクトマネジメントに従事。現場で直面した技術課題への対処や、最新の脆弱性情報への実務対応を、一次情報として発信しています。

保有資格
CCIE Lifetime Emeritus(取得から20年以上)/ VCAP-DCA / Azure Solutions Architect Expert

▶ 運営者プロフィール(詳細)

目次