## Message de will ds affilium https://discord.com/channels/874270880975450112/1291867776310579221/1441782992258207846 Bonjour, Hier, on a finalement réussi à régler l’erreur de création d’IPAddress qui tournait en boucle. Au final, c’était un bug connu avec OCP 4.20 et Ceph. L’info est ici : https://github.com/okd-project/okd/issues/2280 En gros, le problème était : -Après l’upgrade vers 4.20, le ipallocator-repair-controller créait des IPAddress dans le namespace `default` -Leur spec.parentRef pointait vers des Services dans le namespace `rook-ceph` - Les références cross-namespace ne sont pas permises, donc l’opérateur les supprimait immédiatement - Ce qui créait une boucle infinie - L’erreur alternait entre rook-ceph-mgr-dashboard et rook-ceph-mgr selon lequel était actif - Aucun Service Ceph n’existait dans `default`, mais des IPAddress y étaient quand même créés avec un ref vers `rook-ceph` L’application des ressources ci-dessous a réglé le problème : ``` apiVersion: admissionregistration.k8s.io/v1 kind: ValidatingAdmissionPolicy metadata: name: deny-ceph-ipaddress-in-default spec: matchConditions: - name: is-default-ns expression: 'object.metadata.namespace == "default"' - name: parent-is-ceph expression: 'object.spec.parentRef.namespace == "rook-ceph" && (object.spec.parentRef.name == "rook-ceph-mgr" || object.spec.parentRef.name == "rook-ceph-mgr-dashboard")' validations: - expression: 'false' message: 'IPAddress for Ceph service must not be created in default; cross-namespace parentRef is invalid.' failurePolicy: Fail matchConstraints: resourceRules: - apiGroups: ["networking.k8s.io"] apiVersions: ["v1"] operations: ["CREATE"] resources: ["ipaddresses"] --- apiVersion: admissionregistration.k8s.io/v1 kind: ValidatingAdmissionPolicyBinding metadata: name: deny-ceph-ipaddress-in-default-binding spec: policyName: deny-ceph-ipaddress-in-default validationActions: ["Deny"] ```