このページでは、サポートされている Config Sync のバージョンの既知の問題について説明します。
ここに記載されている問題の多くはすでに修正されています。修正済みバージョンは、修正が導入されたバージョンを表します。この修正を適用するには、記載されているバージョン以降にアップグレードしてください。
Google Developer Program に参加している場合は、このページを保存して、このページに関連するリリースノートが公開されたときに通知を受け取ることができるようにしてください。詳細については、保存したページをご覧ください。
既知の問題をプロダクト バージョンまたは問題のカテゴリでフィルタするには、次のプルダウン メニューからフィルタを選択します。
Config Sync のバージョンを選択:
問題のカテゴリを選択:
既知の問題をフィルタすることもできます。
カテゴリ | 特定されたバージョン | 修正済みのバージョン | 問題と回避策 |
---|---|---|---|
指標 | 1.5.0 |
削除されたパッケージについて報告された指標
ResourceGroup オブジェクトは、RootSync オブジェクトまたは RepoSync オブジェクトの削除前に削除の伝播が有効になっている場合にのみ自動的に削除されます。
回避策:
|
|
コンポーネントの状態 | 1.15.0 |
Reconciler のスケジュールが設定できないConfig Sync Reconciler には、RootSync または RepoSync の構成に応じて、さまざまな量のリソースが必要です。特定の構成では、他の構成よりも多くのリソースが必要になります。 Reconciler がスケジューリングできない場合は、ノードで使用可能な量を超えるリソースをリクエストしている可能性があります。 Standard モードの GKE クラスタを使用している場合、Reconciler リソース リクエストは非常に低く設定されます。この設定は、スロットリングやパフォーマンス低下につながる場合でもあっても、スケジューリングを可能にすることを目的として選択されています。これにより、Config Sync は小規模なクラスタや小規模なノードでも機能します。ただし、GKE Autopilot クラスタでは、同期中の使用状況をより現実的に表すように、Reconciler リクエストが高い値に設定されます。 回避策: GKE Autopilot または GKE Standard でノード自動プロビジョニングを有効にすると、リソースのリクエスト数を確認して適切なサイズのノードを作成し、スケジューリングを行うことができます。ただし、ノードまたはノード インスタンス サイズを手動で構成する場合は、Reconciler Pod のリソース要件に合わせて、それらの設定の調整が必要になる可能性があります。 |
|
指標 | 1.15.0 | 1.17.2 |
修正済み: エクスポート失敗: 認識できない指標ラベルバージョン 1.15.0 では、Config Sync によって多くの指標に |
指標 | 1.15.0 |
エクスポートに失敗しました。権限が却下されましたデフォルトでは、Reconciler マネージャーがアプリケーションのデフォルト認証情報を検出すると、Otel コレクタは Prometheus、Cloud Monitoring、Monarch に指標をエクスポートするように構成されます。 回避策: Cloud Monitoring を構成していないか、Cloud Monitoring と Cloud Monarch を無効にしていない場合は、 |
|
指標 | 1.15.0 |
カスタム構成で otel-collector がクラッシュするデフォルトの ConfigMap のいずれか( 回避策: 指標のエクスポート構成をカスタマイズするには、 |
|
nomos cli | 1.15.0 | 1.17.2 |
修正済み:
|
修復 |
Config Sync が自身と競合しているConfig Sync が自身とコントローラの競合状態になっているように見えることがあります。この問題は、Git リポジトリ内のリソースのオプション フィールドにデフォルト値を設定した場合に発生します。たとえば、RoleBinding のサブジェクトに対して 回避策: リソース宣言からフィールドを削除します。 |
||
修復 |
Config Sync が Config Connector リソースと競合しているConfig Sync と Config Connector が StorageBucket などのリソースに対して競合状態になっているように見える場合があります。この問題は、信頼できる情報源のリソース 回避策:
この問題を回避するには、リソース宣言に |
||
信頼できる情報源 | 1.17.3 | 1.18.3 |
修正済み: GitHub での Git SSH 認証エラー
git のエラー メッセージは次のとおりです。 回避策: 別の認証方法を使用してください。 |
信頼できる情報源 | 1.15.0 | 1.18.0 |
修正済み: Cloud Source Repositories の認証情報が定期的に無効になるCloud Source Repositories の認証トークンが期限切れになると、Config Sync が定期的にエラーになることがあります。この問題は、トークンの更新が期限切れになるまで待ってからトークンを更新すると発生します。 バージョン 1.18.0 以降では、トークンの有効期限が切れてから 5 分以内に最初のリクエストが行われると、トークンが更新されます。これにより、認証情報が実際に無効でない限り、無効な認証情報エラーを防ぐことができます。 |
信頼できる情報源 | 1.15.0 | 1.17.0 |
修正済み: リポジトリ同期エラー: コンテキストの期限超過1.17.0 より前のバージョンでは、Config Sync はデフォルトで Git リポジトリのすべての履歴をチェックアウトしています。このため、commit が多い大規模なリポジトリでは、取得リクエストのタイミングがずれる可能性があります。 バージョン 1.17.0 以降では、Git の取得は アップグレード後もこの問題が発生する場合は、信頼できる情報源にファイルが多い、Git サーバーのレスポンスが遅い、または他のネットワークに関する問題が原因になっている可能性があります。 |
信頼できる情報源 | 1.13.0 | 1.20.1 |
修正済み: OCI ソースのアクセス トークンを生成できないConfig Sync が信頼できる情報源として OCI を使用し、Workload Identity Federation for GKE で認証するよう構成されている場合、Config Sync がコンテナ レジストリで認証を試みた際に一時的な この問題は、oauth2 ライブラリがトークンの有効期限が切れた後にのみ認証トークンを更新することにより発生します。 エラー メッセージに、 回避策: Config Sync が信頼できる情報源からのフェッチを次に試行する際に、エラーは自動的に解決します。 Config Sync で複数回エラーが発生すると、再試行の頻度が低下します。Config Sync を強制的に再試行するには、Reconciler Pod を削除します。このアクションにより、Config Sync は Reconciler Pod を再作成し、信頼できる情報源からすぐにフェッチします。 kubectl delete pod -n config-management-system RECONCILER_NAME RECONCILER_NAME は、RootSync オブジェクトまたは RepoSync オブジェクトの Reconciler 名に置き換えます。 |
信頼できる情報源 | 1.19.0 | 1.20.0 |
修正済み: Git ロックファイルが残っている
KNV2004: error in the git-sync container: ... fatal: Unable to create '/repo/source/.git/shallow.lock': File exists. ... 回避策: この問題を回避するには、影響を受ける Reconciler Pod を再起動して、新しいエフェメラル ボリュームを Pod に割り当てます。 kubectl delete pod -n config-management-system RECONCILER_NAME RECONCILER_NAME は、RootSync オブジェクトまたは RepoSync オブジェクトの Reconciler 名に置き換えます。
|
同期 | 1.7.0 |
ミューテーションを無視するアノテーションが適用されないConfig Sync 適用ツールのバグにより、 回避策: |
|
同期 | 1.5.0 | 1.20.1 |
修正: API 検出エラーにより、マネージド オブジェクトが
|
同期 | 1.15.0 |
監査ログ内の多数の無効な
|
|
同期 | 1.17.0 | 1.17.3 |
修正済み: Config Sync がブランチから最新の commit を pull できないConfig Sync バージョン 1.17.0、1.17.1、1.17.2 では、同じブランチが複数のリモートで参照されていて、それらが同期されていない場合、Config Sync が特定のブランチの HEAD から最新の commit を pull できないという問題が発生する可能性があります。たとえば、リモート リポジトリ たとえば、次のような問題が発生します。 git ls-remote -q [GIT_REPOSITORY_URL] main main^{} 244999b795d4a7890f237ef3c8035d68ad56515d refs/heads/main # the latest commit be2c0aec052e300028d9c6d919787624290505b6 refs/remotes/upstream/main # the commit Config Sync pulls from バージョン 1.17.3 以降では、git-sync の依存関係が別の取得メカニズムで更新されました。 アップグレードできない場合は、Git ブランチ( |
非公開レジストリ | 1.19.0 |
Config Sync が reconciler Deployment に非公開レジストリを使用しない場合非公開レジストリが構成されている場合、Config Sync はすべての Deployment のイメージを置き換える必要があります。ただし、Config Sync は、Reconciler Deployment のイメージのイメージ レジストリに代わるものではありません。 回避策: この問題を回避するには、containerd でイメージ レジストリ ミラーを構成します。 |
|
同期 | 1.17.0 | 1.18.3 |
修正済み: Config Sync Reconciler がクラッシュループするConfig Sync バージョン 1.17.0 以降では、一部の Kubernetes プロバイダで、Reconciler が REST 構成を作成できないという問題が発生することがあります。 この問題は Reconciler ログに次の例のように表示されます。 Error creating rest config: failed to build rest config: reading local kubeconfig: loading REST config from "/.kube/config": stat /.kube/config: no such file or directory |
同期 | 1.7.0 |
更新されたインベントリをクラスタに書き込めませんでしたConfig Sync が ResourceGroup オブジェクトのステータスの更新に失敗すると、Reconciler ログに次のようなエラーが断続的に書き込まれる場合があります。 KNV2009: task failed (action: "Inventory", name: "inventory-set-0"): failed to write updated inventory to cluster: Operation cannot be fulfilled on resourcegroups.kpt.dev "root-sync": the object has been modified; please apply your changes to the latest version and try again このエラーは、Reconciler と ResourceGroup Controller 間の競合状態が原因で発生します。Reconciler が ResourceGroup 仕様を更新する前に ResourceGroup Controller が ResourceGroup のステータスを更新すると、 回避策: この問題の回避策はありません。エラーは自然に解決されます。 |
|
Terraform | Terraform version 5.41.0 |
Terraform を使用して Config Sync をインストールまたはアップグレードできないTerraform バージョン 5.41.0 では、 回避策:
|
|
Google Cloud コンソール |
Google Cloud コンソールの Config Sync ダッシュボードにデータがない旨のエラーが表示されるGoogle Cloud コンソールのダッシュボードに、Config Sync クラスタに関する「データがない」や「クラスタ認証情報が無効」といった内容のエラーが表示されることがあります。この問題は、GDC(VMware)クラスタまたは GDC(ベアメタル)クラスタにログインしていない場合に発生することがあります。 回避策: Google Cloud GDC(VMware)または GDC(Bare Metal)クラスタのコンソールにこういったエラーが表示された場合は、GKE Identity Service または Connect Gateway を使用してクラスタにログインしていることを確認します。 |
次のステップ
- さらにサポートが必要な場合は、Cloud カスタマーケアにお問い合わせください。