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 の仕様にあります。これらのリソースの数、種類、Namespace、名前を取得できます。
- 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オブジェクトを移行する必要があります。