Flex Gateway新着情報
Governance新着情報
Monitoring API ManagerRuntime Fabric をローカルで管理するには、rtfctl
コマンドラインツールをインストールして使用します。rtfctl
ツールでは次のアクションがサポートされています。
Runtime Fabric の状況を取得する。
実行中のアプリケーションのヒープダンプまたはスレッドダンプを実行する。
実行中のアプリケーションのメモリ使用量を表示する。
プロキシ設定を管理する。
セキュアプロパティを管理する。
Mule ライセンスを管理する。
アラート送信者メールアドレスを管理します。
デフォルトの名前空間 (rtf) を使用している場合は、追加のフラグ --namespace <rtf_namespace>
を指定する必要はありません。このフラグは rtfctl バージョン 0.4.1 以降のみで導入されています。
このセクション内のタスクは、IT 管理者が実行する必要があります。 AKS 用に Runtime Fabric を使用していて、AKS で管理される Azure AD インテグレーションが有効になっている場合、次のコマンドで rtfctl コマンドを実行するために必要なログイン情報が返されます。
|
rtfctl
コマンドラインツールをダウンロードします。
rtfctl
は、Windows、MacOS (Darwin)、および Linux でサポートされています。適切な方法を選択してください。
Windows
curl -L https://anypoint.mulesoft.com/runtimefabric/api/download/rtfctl-windows/latest -o rtfctl.exe
MacOS (Darwin)
curl -L https://anypoint.mulesoft.com/runtimefabric/api/download/rtfctl-darwin/latest -o rtfctl
Linux
curl -L https://anypoint.mulesoft.com/runtimefabric/api/download/rtfctl/latest -o rtfctl
rtfctl
コマンドラインツールのファイル権限を変更します。
chmod +x rtfctl
「Organizing Cluster Access Using kubeconfig Files (kubeconfig を使用したクラスターアクセスの整理)」で説明されているように rtfctl
コマンドラインツールで kubeconfig ファイルがコンシュームされます。この方法を使用して、管理するクラスターを設定します。rtfctl
バイナリが現在の作業ディレクトリとユーザーの $PATH
に存在することを確認します。
特権ユーザーとして rtfctl
コマンドを実行します。
サポートされているすべてのコマンドのリストを表示するには、rtfctl -h
を実行します。
特定のコマンドの詳細については、rtfctl <command> -h
を実行します。
Runtime Fabric を設定するには次のコマンドを使用します。
コマンド | 説明 |
---|---|
Runtime Fabric 設定に変更を適用する |
|
rtfctl を更新する |
|
Runtime Fabric コンポーネントが準備完了になるのを待機する |
apply
Runtime Fabric 設定に変更を適用します。
rtfcl apply と一緒に値を使用しても、OpenShift では機能しません。OpenShift コンソールで値を更新する必要があります。
|
HTTP プロキシ設定を適用する
rtfctl apply http-proxy http://<host>:<port> --namespace <rtf_namespace>
プロキシをバイパスするホスト名を指定して HTTP プロキシ設定を適用する
rtfctl apply http-proxy http://<host>:<port> --no-proxy "DOMAIN1.com,DOMAIN2.com" --namespace <rtf_namespace>
認証を使用して HTTP プロキシ設定を適用する
rtfctl apply http-proxy http://<username>:<password>@<host>:<port> --namespace <rtf_namespace>
HTTP プロキシ設定をクリアする
rtfctl apply http-proxy "" --no-proxy "" --namespace <rtf_namespace>
セキュアプロパティを適用する
rtfctl apply secure-property --key <key> --value <value> --app-namespace <app_namespace> --namespace <rtf_namespace>
ホストノードにシステム設定を適用する
rtfctl apply system-configuration
最新のスクリプトをダウンロードせずにホストノードにシステム設定を適用する
rtfctl apply system-configuration --skip-download
Mule ライセンスを適用する
rtfctl apply mule-license <base64_encoded_license> --namespace <rtf_namespace>
監視プロキシを適用する
rtfctl apply monitoring-proxy http://<host>:<port> --namespace <rtf_namespace>
監視プロキシ設定をクリアする
rtfctl apply monitoring-proxy "" --namespace <rtf_namespace>
Runtime Fabric のインストールやアップグレード、またはバックアップや復元を実行するときには次のコマンドを使用します。
コマンド | 説明 |
---|---|
Runtime Fabric をインストールする |
|
ローカルの Runtime Fabric の状態をバックアップする |
|
ローカルの Runtime Fabric の状態をバックアップから復元する |
|
Runtime Fabric インストールのクラスターを検証する |
|
Runtime Fabric のバージョン情報を表示する |
install
Runtime Fabric をインストールする
rtfctl install <activation_data>
Docker イメージレジストリ URL およびシークレットを上書きする
rtfctl install <activation_data> --image-pull-registry <string> --image-pull-secret <string>
backup
ローカルの Runtime Fabric の状態をバックアップする
rtfctl backup <backup_file_name>.tar.gz --namespace <rtf_namespace>
restore
ローカルの Runtime Fabric の状態をバックアップから復元する
rtfctl restore <backup_file_name>.tar.gz --namespace <rtf_namespace>
validate
Runtime Fabric インストールのクラスターを検証する
検証チェックを実行する
rtfctl validate <activation_data>
検証チェックを実行し、プロキシ設定を含む fabric.tf
設定ファイルを渡す
rtfctl validate -f <path_to_settings_file>
プロキシを使用してインストールを検証するには、settings
ファイル内でプロキシ設定を指定する必要があります。
MULE_LICENSE=<your-mule-license> ACTIVATION_DATA=<activation_data> HTTP_PROXY=http://<proxy_domain>.com:<port>
Runtime Fabric にデプロイされたアプリケーションを管理するには次のコマンドを使用します。
コマンド | 説明 |
---|---|
セキュアプロパティを削除する |
|
アプリケーションの詳細を表示する |
|
アプリケーションのディスク使用量を表示する |
|
ポッド内の JVM メモリ使用量を表示する |
|
アプリケーションのデバッグ情報パッケージを作成する |
|
アプリケーションを再起動する |
|
JVM ヒープダンプを取得する |
|
JVM スレッドダンプを取得する |
describe
特定の名前空間でのアプリケーションの詳細を表示する
rtfctl describe apps <app_name> --namespace <rtf_namespace> rtfctl describe apps <app_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
disk
アプリケーションのディスク使用量を表示する
デフォルトである最初のレプリカを使用してアプリケーションのディスク使用量を表示する
rtfctl disk <app_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
特定のレプリカを使用してアプリケーションのディスク使用量を表示する
rtfctl disk <app_name> --details --pod <replica_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
memory
ポッド内の JVM メモリ使用量を表示する
各レプリカの JVM メモリを取得する
rtfctl memory <app_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
特定のレプリカの JVM メモリを取得する
rtfctl memory <app_name> --pod <replica_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
package
アプリケーションのデバッグ情報パッケージを作成する
デフォルトである最初のポッドを使用してアプリケーションのパッケージを作成する
rtfctl package <app_name> <application_package_filename> --app-namespace <app_namespace> --namespace <rtf_namespace>
アプリケーション、ポリシー、.mule
ディレクトリを含むアプリケーションのパッケージを作成する
rtfctl package <app_name> <application_package_filename> --apps --policies --dotmule --app-namespace <app_namespace> --namespace <rtf_namespace>
ヒープダンプを含むアプリケーションのパッケージを作成する
rtfctl package <app_name> <application_package_filename> --heap-dump --app-namespace <app_namespace> --namespace <rtf_namespace>
restart
アプリケーションを再起動する
rtfctl restart <app_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
heapdump
JVM ヒープダンプをトリガーする
デフォルトである最初のレプリカを使用してアプリケーションの JVM ヒープダンプを実行し、`/tmp/dump.hprof
として保存する
rtfctl heapdump <app_name> <destination_path> --app-namespace <app_namespace> --namespace <rtf_namespace>
特定のレプリカを使用してアプリケーションの JVM ヒープダンプを実行し、/tmp/dump.hprof
として保存する
rtfctl heapdump <app_name> <destination_path> --pod <replica_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
threaddump
JVM スレッドダンプをトリガーする
デフォルトである最初のレプリカを使用してアプリケーションの JVM スレッドダンプを実行する
rtfctl threaddump <app_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
特定のレプリカを使用してアプリケーションの JVM スレッドダンプを実行する
rtfctl threaddump <app_name> --pod <replica_name> --app-namespace <app_namespace> --namespace <rtf_namespace>
Runtime Fabric のトラブルシューティングを行うには次のコマンドを使用します。
コマンド | 説明 |
---|---|
1 つ以上のリソースを表示する |
|
ネットワーク接続をテストする |
|
診断レポートを生成する |
|
Runtime Fabric の状況を表示する |
|
Runtime Fabric コントロールプレーンへのアウトバウンドネットワーク接続を検証する |
get
1 つ以上のリソースを表示する
すべての環境のすべてのアプリケーションのリストを出力する
rtfctl get apps --namespace <rtf_namespace>
特定の環境のすべてのアプリケーションのリストを出力する
rtfctl get apps --app-namespace <app_namespace> --namespace <rtf_namespace>
HTTP プロキシ設定を表示する
rtfctl get http-proxy --namespace <rtf_namespace>
監視プロキシ設定を表示する
rtfctl get monitoring-proxy --namespace <rtf_namespace>
セキュアプロパティを表示する
rtfctl get secure-properties --app-namespace <app_namespace> --namespace <rtf_namespace>
Mule ライセンスを表示する
rtfctl get mule-license --namespace <rtf_namespace>
Runtime Fabric レジストリのログイン情報を表示する
rtfctl get registry-credentials <activation_data>
ping
ネットワーク接続をテストする
デフォルトである最初のレプリカを使用してアプリケーション内部から example.com に ping する
rtfctl ping <app_name> <host_or_ip_address> --app-namespace <app_namespace> --namespace <rtf_namespace>
デフォルトである最初のレプリカを使用してアプリケーション内部からポート 12345
上で example.com への接続を試みる
rtfctl ping <app_name> <host_or_ip_address> --port <port> --app-namespace <app_namespace> --namespace <rtf_namespace>
report
rtf-report.tar.gz
に診断レポートを生成する
rtfctl report --namespace <rtf_namespace>
並列で実行されるタスクの数を制御する workers
フラグを使用して、rtfctl report タスクを並列で実行します。デフォルト値は 10 です。
rtfctl report --workers <num_of_workers>
rtfctl report
と --use-fast-compression
フラグによって生成される tarball の圧縮を高速化します。デフォルト値は false です。
rtfctl report --use-fast-compression=true
--namespaces
フラグを使用して、インストールの名前空間の他にレポートに含めるアプリケーションの名前空間を選択します。このフラグにより、レポートに含める内容が制御され、選択した名前空間のみがレポートされる場合は収集が高速化される可能性があります。
# Reports rtf installation default namespace (rtf) rtfctl report # Reports only <rtf_namespace> rtfctl report -n <rtf_namespace> # Reports for <app_namespace_1> and <app_namespace_2> application namespaces that belong to <rtf_namespace> rtfctl report -n <rtf_namespace> --app-namespaces <app_namespace_1>,<app_namespace_2> rtfctl report -n <rtf_namespace> --app-namespaces <app_namespace_1> --app-namespaces <app_namespace_2> # Report for all application namespaces that belong to <rtf_namespace> rtfctl report -n <rtf_namespace> --app-namespaces all
status
Runtime Fabric の状況を表示する
JSON で状況出力を表示する
rtfctl status --output json --namespace <rtf_namespace>
Kubernetes DNS の健全性を確認する
rtfctl status dns-check --node-label "<k>:<v>"
test
Runtime Fabric コントロールプレーンへのアウトバウンドネットワーク接続を検証する
任意のノードでのチェックをスケジュールする
rtfctl test outbound-network --namespace <rtf_namespace>
node-label
パラメーターを満たすノードでのチェックをスケジュールする
rtfctl test outbound-network --node-label "<k>:<v>" --namespace <rtf_namespace>
すべてのノードでのチェックをスケジュールする
rtfctl test outbound-network --all --namespace <rtf_namespace>
必ずライセンスを Base64 でエンコードしてください。
次のコマンドを実行します。
$ sudo ./rtfctl apply mule-license '<license-key-information>' --namespace rtf1 Updating rtf namespace... OK
$ sudo /usr/local/bin/rtfctl heapdump hello-world /tmp/dump.hprof --app-namespace bed42b62-XXXX --namespace rtf1 Dumping heap for hello-world-f76484d8-l44qv... Heap dump written to /tmp/dump.hprof
追加の情報については、rtfctl heapdump -h
コマンドを実行します。
--pod
フラグを受け入れるアプリケーション管理コマンドの場合、describe
コマンドを使用してレプリカのリストを取得できます。
$ sudo ./rtfctl describe apps hello-world --app-namespace bed42b62-XXXX --namespace rtf1 Name: hello-world Namespace: bed42b62-XXXX Status: PROGRESSING Runtime: 2 ID: Version: Organization ID: d30f74c0-XXXX Replicas: 1 desired | 1 updated | 1 total | 0 available | 1 unavailable Name Status ---- ------ hello-world-77f5897949-z54gb Pending
rtfct
l コマンドラインツール (v1.0.29 以降) は、クラスター上の rtfctl
操作を監査し、Runtime Fabric コアソフトウェアに影響を与える操作の追跡を支援します。
以下の点に留意してください。
監査ログは rtfctl-audit
名前空間の Kubernetes シークレットに保存されます。
監査ログはクラスターにスコープ設定され、Runtime Fabric コアソフトウェアのライフサイクルには添付されません。
監査プロセスが操作の監査に失敗しても、コマンド実行は操作可能な状態を維持します。
操作を監査するには、次のコマンドを実行します。
$ sudo ./rtfctl audit-logs
出力例:
[{"timestamp":"2023-10-26 00:52:24.446 +0000 UTC","kubeContext":"test-k8scontext","command":["./rtfctl","restart","test-application","--app-namespace","8456f9c7-2149-4983-b02b-6b18ddd28efe","--namespace","rtf"]}]
現在、監査ログのロールオーバーや循環はサポートされていません。 |
rtfctl
コマンドラインツールでは通常、他のアプリケーションやシステムツールを呼び出し、これらの呼び出しの出力は標準出力および標準エラー出力に送信されます。この出力は実行される各操作のコンテキストで記述されます。
操作が成功したか失敗したかを明確にするために、rtfctl
コマンドラインツールには最も詳細なコマンドの最後の出力行が含まれます。通常の操作には、停止しているシステムユニットをもう一度停止しようとした場合など、中間の失敗メッセージが含まれる場合があります。
メッセージが問題を示しているかどうか疑わしい場合は、システム管理者と話し合うか、MuleSoft サポートにお問い合わせください。