Argo CDでCalicoをデプロイしているとmetadata.annotations: Too longエラーが出る

はじめに

TL; DR

  • Argo CDのApplicatoinのsyncOptionsServerSideApply=trueを追加すれば良い

github.com

問題

スクショを取っていなくて申し訳ないんですが、CalicoのHelm Chartをアップデートしたところ以下のようなエラーが出るようになりました。

CustomResourceDefinition.apiextensions.k8s.io "installations.operator.tigera.io" is invalid: metadata.annotations: Too long: must have at most 262144 bytes

解決策

こちらの記事が参考になりましたが、Argo CDは大きなCRDを同期する場合にエラーになるようでして、
その場合はServerSideApplyを有効化にすれば良いようです。

www.arthurkoziel.com

おうちクラスタでも、ServerSideApplyを有効化にしたらエラーが出なくなりました。

  syncPolicy:
    syncOptions:
    - CreateNamespace=true
+    - ServerSideApply=true
    automated:
      prune: true
      selfHeal: true

github.com

めでたし、めでたし。

いずれはServerSideApplyがデフォルトの挙動になるような記述がありますが、どうなんでしょうかね。