Verify Envoy Gateway Controller functionality

To verify that the Envoy Gateway Controller and its associated resources are functioning properly:

  1. Verify the control plane:

    kubectl get pods -n envoy-gateway-system -l app.kubernetes.io/name=envoy-gateway-controller
    kubectl get gatewayclass mke-gateway-ingress -o jsonpath='{.status.conditions[?(@.type=="Accepted")]}' | jq .
    
  2. Verify the Gateway data plane:

    kubectl get deploy,svc -n envoy-gateway-system -l gateway.envoyproxy.io/owning-gateway-name=test-gateway
    

    The Pods should present as Ready.

  3. Verify the HTTPRoute status:

    kubectl describe httproute -n gateway-test echo-route
    

    Expected result: Accepted: True and ResolvedRefs: True.

  4. Verify end-to-end connectivity:

    • NodePort (from a machine that can reach the node IP):

      curl -v http://$GATEWAY_NODE_IP:$GATEWAY_HTTP_NODEPORT/
      
    • port-forward:

      curl -v http://127.0.0.1:8080/
      

    Expected result: HTTP 200 and body hello from envoy gateway for the sample http-echo args.