How to quickly check the synchronization status of CRD
When using the Apache APISIX Ingress Controller declarative configuration, often use the kubectl apply
command. Only if the configuration was verified by its Open API V3 Schema definition and its validation webhooks (if any), can the configuration be accepted by Kubernetes.
When the Apache APISIX Ingress Controller watches the resource change, the logic unit of the Apache APISIX Ingress Controller has just started to work. In various operations of the Apache APISIX Ingress Controller, object conversion and more verification will be performed. When the verification fails, the Apache APISIX Ingress Controller will log an error message and will continue to retry until the declared state is successfully synchronized to APISIX.
Therefore, after the declarative configuration is accepted by Kubernetes, it does not mean that the configuration is synchronized to APISIX.
In this practice, we will show how to check the status of CRD.
#
Prerequisites- an available Kubernetes cluster (version >= 1.14)
- an available Apache APISIX (version >= 2.6) and Apache APISIX Ingress Controller (version >= 0.6.0) installation
#
Take ApisixRoute resource as an example#
deploy and check ApisixRoute resource- first deploy an ApisixRoute resource
e.g.
kubectl apply -f - <<EOF
apiVersion: apisix.apache.org/v2
kind: ApisixRoute
metadata:
name: httpbin-route
spec:
http:
- name: rule1
match:
hosts:
- httpbin.com
paths:
- /ip
backends:
- serviceName: httpbin-service-e2e-test
servicePort: 80
EOF
- After apply the ApisixRoute resource, now check the status of CRD
kubectl describe ar -n test httpbin-route
Then, will see the status of httpbin-route
resource.
...
Status:
Conditions:
Last Transition time: 2021-06-06T09:50:22Z
Message: Sync Successfully
Reason: ResourceSynced
Status: True
Type: ReousrceReady
...
#
Also supports checking the status of other resourcesApisixUpstream
ApisixTls
ApisixClusterConfig
ApisixConsumer
#
Frequent QuestionsIf can not see the Status information, please check the following points: