-
Notifications
You must be signed in to change notification settings - Fork 386
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
docs: update prerequisites files with installation and connectivity t… (
#5094) * docs: update prerequisites files with installation and connectivity testing steps Signed-off-by: DeeBi9 <deepanshudb1@gmail.com> * lint Signed-off-by: DeeBi9 <deepanshudb1@gmail.com> * docs: remove the Note Signed-off-by: DeeBi9 <deepanshudb1@gmail.com> * remove redundant code Signed-off-by: DeeBi9 <deepanshudb1@gmail.com> --------- Signed-off-by: DeeBi9 <deepanshudb1@gmail.com>
- Loading branch information
Showing
2 changed files
with
63 additions
and
17 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,24 +1,69 @@ | ||
--- | ||
--- | ||
|
||
Follow the steps from the [Quickstart](../tasks/quickstart) task to install Envoy Gateway and the example manifest. | ||
Before proceeding, you should be able to query the example backend using HTTP. | ||
Follow the steps below to install Envoy Gateway and the example manifest. Before | ||
proceeding, you should be able to query the example backend using HTTP. | ||
|
||
Verify the Gateway status: | ||
<details> | ||
<summary>Expand for instructions</summary> | ||
|
||
{{< tabpane text=true >}} | ||
{{% tab header="kubectl" %}} | ||
1. Install the Gateway API CRDs and Envoy Gateway using Helm: | ||
|
||
```shell | ||
kubectl get gateway/eg -o yaml | ||
``` | ||
```shell | ||
helm install eg oci://docker.io/envoyproxy/gateway-helm --version {{< helm-version >}} -n envoy-gateway-system --create-namespace | ||
``` | ||
|
||
{{% /tab %}} | ||
{{% tab header="egctl (experimental)" %}} | ||
2. Install the GatewayClass, Gateway, HTTPRoute and example app: | ||
|
||
```shell | ||
egctl x status gateway -v | ||
``` | ||
```shell | ||
kubectl apply -f https://github.com/envoyproxy/gateway/releases/download/{{< yaml-version >}}/quickstart.yaml -n default | ||
``` | ||
|
||
{{% /tab %}} | ||
{{< /tabpane >}} | ||
3. Verify Connectivity: | ||
|
||
{{< tabpane text=true >}} | ||
{{% tab header="With External LoadBalancer Support" %}} | ||
|
||
You can also test the same functionality by sending traffic to the External IP. To get the external IP of the | ||
Envoy service, run: | ||
|
||
```shell | ||
export GATEWAY_HOST=$(kubectl get gateway/eg -o jsonpath='{.status.addresses[0].value}') | ||
``` | ||
|
||
**Note**: In certain environments, the load balancer may be exposed using a hostname, instead of an IP address. If so, replace | ||
`ip` in the above command with `hostname`. | ||
|
||
Curl the example app through Envoy proxy: | ||
|
||
```shell | ||
curl --verbose --header "Host: www.example.com" http://$GATEWAY_HOST/get | ||
``` | ||
|
||
{{% /tab %}} | ||
{{% tab header="Without LoadBalancer Support" %}} | ||
|
||
Get the name of the Envoy service created by the example Gateway: | ||
|
||
```shell | ||
export ENVOY_SERVICE=$(kubectl get svc -n envoy-gateway-system --selector=gateway.envoyproxy.io/owning-gateway-namespace=default,gateway envoyproxy.io/owning-gateway-name=eg -o jsonpath='{.items[0].metadata.name}') | ||
``` | ||
|
||
Port forward to the Envoy service: | ||
|
||
```shell | ||
kubectl -n envoy-gateway-system port-forward service/${ENVOY_SERVICE} 8888:80 & | ||
``` | ||
|
||
Curl the example app through Envoy proxy: | ||
|
||
```shell | ||
curl --verbose --header "Host: www.example.com" http://localhost:8888/get | ||
``` | ||
|
||
{{% /tab %}} | ||
{{< /tabpane >}} | ||
|
||
</details> | ||
|
||
--- |