cockroachdb/cockroach-operator

operator status is ready before it's able to accept admission webhooks.

Open

#957 opened on Jan 27, 2023

View on GitHub
 (2 comments) (0 reactions) (0 assignees)Go (103 forks)auto 404
enhancementgood first issue

Repository metrics

Stars
 (318 stars)
PR merge metrics
 (PR metrics pending)

Description

I have a script that attempts to install the operator and create a db that looks something like:

    kubectl apply -f https://raw.githubusercontent.com/cockroachdb/cockroach-operator/v2.10.0/install/crds.yaml
    kubectl apply -f https://raw.githubusercontent.com/cockroachdb/cockroach-operator/v2.10.0/install/operator.yaml
    kubectl wait --for=condition=Ready pods --all -n cockroach-operator-system --timeout=5m

    kubectl apply -k ./overlays/cockroach

Results in:

customresourcedefinition.apiextensions.k8s.io/crdbclusters.crdb.cockroachlabs.com created
namespace/cockroach-operator-system created
serviceaccount/cockroach-operator-sa created
clusterrole.rbac.authorization.k8s.io/cockroach-operator-role created
clusterrolebinding.rbac.authorization.k8s.io/cockroach-operator-rolebinding created
service/cockroach-operator-webhook-service created
deployment.apps/cockroach-operator-manager created
mutatingwebhookconfiguration.admissionregistration.k8s.io/cockroach-operator-mutating-webhook-configuration created
validatingwebhookconfiguration.admissionregistration.k8s.io/cockroach-operator-validating-webhook-configuration created
pod/cockroach-operator-manager-75fff59c94-j6qvp condition met
...
Error from server (InternalError): error when creating "./overlays/cockroach": Internal error occurred: failed calling webhook "mcrdbcluster.kb.io": failed to call webhook: Post "https://cockroach-operator-webhook-service.cockroach-operator-system.svc:443/mutate-crdb-cockroachlabs-com-v1alpha1-crdbcluster?timeout=10s": dial tcp 10.96.201.111:443: connect: connection

Is there a better way to wait for the operator to be ready before trying to create crdb resources?

Contributor guide