Dell NativeEdge: トラブルシューティングのためにNativeEdge OrchestratorとDell Automation Platformのログ バンドルを取得する方法
Summary: この記事では、ログ バンドルを取得して、NativeEdge OrchestratorとDell Automation Platformの問題をトラブルシューティングする方法について説明します。
Instructions
このツールは、すべてのNativeEdge OrchestratorおよびDell Automation Platform Kubernetesログを収集するために作成されます。また、ネイティブのKubernetesログを収集し、現在の状態のポッドの説明を収集します。システム ログとjournaldログも収集します。収集後、エンジニアリング チームに提供するtarballが作成されます。
このツールは、NativeEdgeまたはDell Automation PlatformポッドとKnativeポッドをトラバースし、内部のコンテナを一覧表示します。hzp-product-svc については、次の例を参照してください。
root@labmachine01:/nas/tools# kubectl get po -n hzp hzp-product-svc-00001-deployment-5695678c66-79zwm -o jsonpath="{.spec.containers[*].name}"
hzp-ese-svc hzp-product-svc queue-proxy hzp-iam-proxy
たとえば、ユーザーは tarball 内で次のファイル構造を取得します。
root@labmachine01:/nas/tools# tar -tf /tmp/native_edge_eo-logs_default_2023-08-30T07-13-39.750/native_edge_eo-logs_default_2023-08-30T07-13-39.750.tar.gz | grep product ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/ ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-iam-proxy.current.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-product-svc.current.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-product-svc-00001-deployment-5695678c66-79zwm.hzp-iam-proxy-init.init.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-product-svc-00001-deployment-5695678c66-79zwm.describe ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-ese-svc.previous.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/queue-proxy.current.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/queue-proxy.previous.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-ese-svc.current.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-product-svc.previous.log ./native_edge_eo-logs_default_2023-08-30T07-13-39.750/hzp/hzp-product-svc-00001-deployment-5695678c66-79zwm/hzp-iam-proxy.previous.log
したがって、これらのファイルは次の構造で格納されます。
namespace/pod-name/namespace-container.log
使用方法:
まず、ユーザーはNativeEdge Orchestrator (Dell Automation Platform)マシンに接続してログインする必要があります。
次に、ユーザーはroot権限を有効にする必要があります(sudo -iまたは有効になっている場合はsu)。
関連するすべてのログを収集するには、この記事のlogs_pkb.zipという添付ファイルをNativeEdge Orchestratorマシンにダウンロードする必要があります。
アーカイブの内容を抽出します。
unzip logs_pkb.zip -d logs-tool
そのディレクトリーに移動し、スクリプトを実行します。
./logs.sh
実行後、使用可能なスペースに関する情報メッセージと、続行するためのプロンプトが表示されます(続行するには「y」を入力)。
This script will access your local k3s secrets (secret values are not going to be printed). This script will collect all logs from all pods in NativeEdge-controlled namespaces and archive it in tarball. Please press "y" if you agree with this. You have 69G available on your storage. Consider that logs may require to have more that 1Gb of free space.
バージョン1.0-rc以降では、ログ収集ツールは、NativeEdgeまたはDell Automation Platformがデフォルト以外のネームスペースにインストールされているかどうかを検出します。ツールが標準の名前空間を見つけられない場合は、有効な Orchestrator 名前空間を入力するようにユーザーに求めます。以下の例を参照してください。
Available namespaces:
- default
- nativeedge
- kube-node-lease
- kube-public
- kube-system
- longhorn-system
- metallb-system
Warning: Namespace 'hzp' not found.
Please enter the namespace containing the 'nativeedge' containers:
デフォルトのネームスペースがインストールされている場合、このツールは、コレクションのリストに含まれているネームスペースを表示します。
Namespace 'hzp' found. Logs will be collected from following namespaces:
- hzp
- kube-system
- istio-system
- knative-eventing
- knative-serving
- longhorn-system
イベント キャプチャ:
ツールのバージョン0.9-beta以降では、EdgeOrchestrator/Dell Automation Platformイベント キャプチャーに関するプロンプトがユーザーに表示されます。
Do you want to collect the EO events (WARNING: this may require significant space on disk)?
これにより、EdgeOrchestrator/Dell Automation Platformからイベントがログtarballに直接キャプチャされ、トラブルシューティングが向上します。マシンに十分なスペースがある場合は、EdgeOrchestrator/Dell Automation Platformイベントを取得することをお勧めします。
追加の手順がある場合、ユーザーは実行する前にスクリプトの使用可能なオプションを確認できます。
./logs.sh -h
現在のバージョンは、次の方法で確認できます。
logs.sh -v