nomos bugreport の内容
nomos
コマンドライン ツールは、診断アーカイブの生成など、Config Sync の一般的な管理タスクに役立ちます。アーカイブの正確な出力とレイアウトは変更される可能性があり、API とはみなされません。nomos
のコードは Config Sync リポジトリで入手できます。
kubectl get
や kubectl logs
を実行すると、クラスタから同様の情報を取得できますが、nomos bugreport
のメリットは、Config Sync システムに関する重要な情報のアーカイブが作成されることです。Google Cloud サポートに問い合わせる際は、nomos bugreport
出力を提供すると便利です。
独自のデバッグまたは内部サポートのために nomos bugreport
の出力を使用することもできます。
nomos bugreport
出力ファイル構造は次のようになります。
- raw/
- cluster/
- configmanagement/
- namespaces/
- config-management-monitoring/
- config-management-system/
- gatekeeper-system/
- resource-group-system/
- kube-system/
- processed/
- status.txt
- version.txt
nomos bugreport
から取得できる情報は次のとおりです。
- nomos のバージョンは、
nomos version
の出力である Config Sync のバージョンを示しています。 - nomos ステータスは、
nomos status
ステータスの出力を示します(たとえば、どの commit が同期されるかどうか、エラーかどうか)。 - Config Sync のカスタム リソースに関する情報:
- ConfigManagement や ClusterSelector などのクラスタ スコープのリソースの場合は、
raw/cluster-1/cluster/configmanagement/
にあります。 - RootSync、RepoSync、ResourceGroup などの名前空間スコープの場合は、
raw/cluster-1/namespaces/namespace-1
にあります。
- ConfigManagement や ClusterSelector などのクラスタ スコープのリソースの場合は、
- Config Sync によって同期、管理されるリソース:
- RootSync API と RepoSync API が有効になっている場合は、ResourceGroup の仕様に含まれています。リソースの数、種類、名前空間、名前を取得できます。
- RootSync API と RepoSync API が有効になっておらず、
ConfigManagement
オブジェクト(非推奨)で git フィールドが指定されている場合、リソースの完全なコンテンツは ClusterConfig と NamespaceConfig にあります。ConfigManagement
オブジェクトを移行する必要があります。
- すべての Config Sync Pod のログが
raw/cluster-1/namespaces/pod-namespace-1/pod-name-1/container-name.txt
の下に表示されます。 - すべての Config Sync Pod の完全なコンテンツ(
raw/cluster-1/namespaces/pod-namespace-1/pods.txt
の下)。 - Config Sync の RootSync API と RepoSync API は有効になっていますか(つまり、マルチリポジトリ モードを使用していますか)?
ConfigManagement
リソースを確認し、spec.enableMultiRepo: true
が表示される場合、RootSync API と RepoSync API が有効になっています。- RootSync、RepoSync、Reconciler Pod などのコンポーネントが表示される場合は、RootSync API と RepoSync API が有効になっています。
- git-importer Pod などのコンポーネントが表示される場合は、RootSync API と RepoSync API が有効になっていないため、
ConfigManagement
オブジェクトを移行する必要があります。