From fbaa692ad251070ecad59bab104da9856f9cb3f8 Mon Sep 17 00:00:00 2001 From: bitliu Date: Wed, 6 Sep 2023 10:20:55 +0800 Subject: [PATCH] :bug: Fix: follow-up of #1852 Signed-off-by: bitliu --- docs/latest/user/multicluster-service.md | 12 +++++----- docs/latest/user_docs.rst | 1 + examples/kubernetes/multicluster-service.yaml | 22 ++++++++++++++++++- 3 files changed, 28 insertions(+), 7 deletions(-) diff --git a/docs/latest/user/multicluster-service.md b/docs/latest/user/multicluster-service.md index 414020557ad..1c46c8ab1f7 100644 --- a/docs/latest/user/multicluster-service.md +++ b/docs/latest/user/multicluster-service.md @@ -4,7 +4,7 @@ The Multicluster Service API ServiceImport object can be used as part of the Gat We will use [Submariner project](https://github.com/submariner-io/submariner) for setting up the multicluster environment for exporting the service to be routed from peer clusters. -# Setting KIND clusters and installing Submariner. +## Setting KIND clusters and installing Submariner. - We will be using KIND clusters to demonstrate this example. @@ -32,7 +32,7 @@ subctl join --kubeconfig output/kubeconfigs/kind-config-cluster2 broker-info.sub Once the above steps are done and all the pods are up in both the clusters. We are ready for installing envoy gateway. -# Install EnvoyGateway +## Install EnvoyGateway Install the Gateway API CRDs and Envoy Gateway in cluster1: @@ -46,7 +46,7 @@ Wait for Envoy Gateway to become available: kubectl wait --timeout=5m -n envoy-gateway-system deployment/envoy-gateway --for=condition=Available --kubeconfig output/kubeconfigs/kind-config-cluster1 ``` -# Install Application +## Install Application Install the backend application in cluster2 and export it through subctl command. @@ -55,9 +55,9 @@ kubectl apply -f https://raw.githubusercontent.com/envoyproxy/gateway/latest/exa subctl export service backend --namespace default --kubeconfig output/kubeconfigs/kind-config-cluster2 ``` -# Create GatewayAPI Objects +## Create Gateway API Objects -Create the GatewayAPI objects GatewayClass, Gateway and HTTPRoute in cluster1 to set up the routing. +Create the Gateway API objects GatewayClass, Gateway and HTTPRoute in cluster1 to set up the routing. ```shell kubectl apply -f https://raw.githubusercontent.com/envoyproxy/gateway/latest/examples/kubernetes/multicluster-service.yaml --kubeconfig output/kubeconfigs/kind-config-cluster1 @@ -81,4 +81,4 @@ Curl the example app through Envoy proxy: ```shell curl --verbose --header "Host: www.example.com" http://localhost:8888/get -``` \ No newline at end of file +``` diff --git a/docs/latest/user_docs.rst b/docs/latest/user_docs.rst index bb060bbb994..21d8e9c0f6d 100644 --- a/docs/latest/user_docs.rst +++ b/docs/latest/user_docs.rst @@ -31,3 +31,4 @@ Learn how to deploy, use, and operate Envoy Gateway. user/gateway-address user/gatewayapi-support user/proxy-observability + user/multicluster-service diff --git a/examples/kubernetes/multicluster-service.yaml b/examples/kubernetes/multicluster-service.yaml index 06b29a40941..6c66f31ee6d 100644 --- a/examples/kubernetes/multicluster-service.yaml +++ b/examples/kubernetes/multicluster-service.yaml @@ -1,9 +1,29 @@ +apiVersion: config.gateway.envoyproxy.io/v1alpha1 +kind: EnvoyProxy +metadata: + name: custom-proxy-config + namespace: envoy-gateway-system +spec: + logging: + level: + default: warn + provider: + kubernetes: + envoyService: + type: ClusterIP + type: Kubernetes +--- apiVersion: gateway.networking.k8s.io/v1beta1 kind: GatewayClass metadata: name: eg spec: controllerName: gateway.envoyproxy.io/gatewayclass-controller + parametersRef: + group: config.gateway.envoyproxy.io + kind: EnvoyProxy + name: custom-proxy-config + namespace: envoy-gateway-system --- apiVersion: gateway.networking.k8s.io/v1beta1 kind: Gateway @@ -39,7 +59,7 @@ spec: type: PathPrefix value: / --- -apiVersion: gateway.networking.k8s.io/v1alpha2 +apiVersion: gateway.networking.k8s.io/v1beta1 kind: ReferenceGrant metadata: namespace: submariner-operator