コンテンツにスキップ

ボックス上のコマンド

Customer Edge には 2 つの独立したコマンドセットがあり、どちらも互いを包含しません。

  • ボックス上では、Site CLI に 6 つのトップレベルコマンド82 の execcli サブコマンドがあります。
  • ネットワーク経由では、デバッグ API が独自の 34 コマンドのカタログを持っています。

ボックス上の機能の大部分には API の対応物がありません。Vega コントロールプレーン全体、Envoy ラッパー、パケットキャプチャ、kubelet パラメーターセット、edit-* ファイル、および補助的な root アクセスペアは、ボックスからのみ到達可能です。

これらにアクセスするには SSH またはシリアルコンソールが必要であり、どこにもドキュメント化されていないことが 1 つあります。

計測方法とセットの重複について

Section titled “計測方法とセットの重複について”

以下のセットはベンダーのドキュメントから転記したものではありません。scripts/sitecli_ssh_harvest.py を使用してライブノードから読み取り、その出所とともに sitecli/exec-catalog.json にコミットされました。3 回の計測が 3 つの登録状態で行われました。

計測時の状態トップレベルexeccli
site_state: PROVISIONING682
site_state: PROVISIONED682
site_state: ONLINE682

3 回すべてで同一のセットが返されました。単に合計数が同じなのではなく、名前も同一であり、最後の計測は異なるデプロイメントで、サイト名およびリソース名も異なっていました。つまり、コマンドの表面は登録状態によって変化せず、存在しないコマンドは本当に存在しないのであって、まだ提供されていないというわけではありません。

デバッグ API の 34 コマンドと比較すると、区別しておく価値のある 2 つの数値が得られます。

  • 51execcli サブコマンドには API の対応物がありません。
  • 55 は、ボックス上全体で数えた場合の同じ数値です。これは、execcli 配下ではなくトップレベルに存在する 4 つの configure* コマンドも含むためです。

どちらも正確な数値です。一方を再計算して他方を見つけた読者は誤りを犯したわけではありません。ここに掲載されるすべての数値は sitecli/catalog.json および sitecli/exec-catalog.json から導出されています。

ドキュメント化されているものと一覧のみのもの

Section titled “ドキュメント化されているものと一覧のみのもの”

Customer Edge は Linux と多数のサードパーティデーモンを実行しています。それらのコマンドをドキュメント化すると、独自のリファレンスと重複し、F5 がそれらを所有しているかのように見せてしまいます。そのため、ルールは次のとおりです: F5 のソフトウェアをドキュメント化し、それ以外については CE 固有のものだけをドキュメント化する。

「自社製」と「他社製」の区別が明確ではないため、3 つの階層があります。この区別は sitecli/command-classification.json に記録されています。

階層扱い
F5 ソフトウェア完全なドキュメント — 目的、構文、引数、キャプチャされた出力、確認すべき内容。Argo、Vega、vpmvifdumpconfigure*edit-* セット、kubelet パラメーター、root アクセス。
CE 固有の解釈CE 上で特定の意味を持つサードパーティツール。CE 固有の読み方をドキュメント化し、ツール自体のセマンティクスはアップストリームに委ねます。
パススルーCE 固有の言及事項がない、純粋な Linux またはサードパーティ。利用可能として一覧化し、アップストリームへのポインターを示します。説明文なし。

この区別がページの存在有無を決定し、このドキュメントが man ページの劣化したコピーになることを防ぎます。

ボックス上で利用可能ですが、ここではドキュメント化しません — これらはオペレーティングシステムおよびサードパーティデーモンであり、F5 のソフトウェアではないため、独自のリファレンスがこのページで再記述できるものより優れています。

コマンドアップストリーム
ping, netstat, lsof, ip, ip-link-show, nmcli, tracepathiproute2、NetworkManager
top, check-mem, sysctl, load-sysctl-conf, journalctl, files, rpm-ostree, chronyc-sourcescoreutils、procps、systemd、rpm-ostree、chrony
edit-etc-hosts, edit-sysctl-confこれらのファイルはオペレーティングシステムのものです
systemctl-status-crio, systemctl-status-docker, systemctl-status-kubelet, systemctl-status-iscsid, systemctl-status-multipathdsystemd
systemctl-restart-crio, systemctl-restart-docker, systemctl-restart-kubelet, systemctl-restart-iscsid, systemctl-restart-multipathdsystemd — これらのいずれもノード上のワークロードを中断します

これらのうち 2 つは、ページがなくても知っておく価値があります。files はファイル操作を実行し、/tmp 配下にのみ書き込みます。そして、すべての systemctl-restart-* は定義上、破壊的です — criokubelet を再起動すると、そのノード上のワークロードが中断されます。