Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
Expand Up @@ -68,4 +68,9 @@ af82a227630327c24026d7c6d3057c3d5478b14426b74c547df011ca5f23d271
$ buildah commit mywasm docker://my-remote-registry/mywasm:0.1.0
```

## Next steps

- See the full list of supported configuration fields in the
[EnvoyExtensionPolicy API reference](../../../api/extension_types#envoyextensionpolicy)

[EnvoyExtensionPolicy]: ../../../api/extension_types#envoyextensionpolicy
Original file line number Diff line number Diff line change
Expand Up @@ -503,6 +503,11 @@ across versions for these reasons
* Envoy Gateway might alter the xDS translation creating a different xDS output
such as changing the `name` field of resources.

## Next steps

- See the full list of supported configuration fields in the
[EnvoyPatchPolicy API reference](../../../api/extension_types#envoypatchpolicy)

[EnvoyPatchPolicy]: ../../../api/extension_types#envoypatchpolicy
[EnvoyGateway]: ../../../api/extension_types#envoygateway
[JSON Patch]: https://datatracker.ietf.org/doc/html/rfc6902
Expand Down
21 changes: 12 additions & 9 deletions site/content/en/v1.6/tasks/extensibility/ext-proc.md
Original file line number Diff line number Diff line change
Expand Up @@ -236,6 +236,18 @@ You should see that the external processor added headers:

```
curl -v -H "Host: www.example.com" http://localhost:10080/myapp

## Next Steps

Checkout the [Developer Guide](../../../contributions/develop) to get involved in the project.

- See the full list of supported configuration fields in the
[EnvoyExtensionPolicy API reference](../../../api/extension_types#envoyextensionpolicy)

[EnvoyExtensionPolicy]: ../../../api/extension_types#envoyextensionpolicy
[BackendTLSPolicy]: https://gateway-api.sigs.k8s.io/api-types/backendtlspolicy/
[Gateway]: https://gateway-api.sigs.k8s.io/api-types/gateway
[HTTPRoute]: https://gateway-api.sigs.k8s.io/api-types/httproute
[...]
< HTTP/1.1 200 OK
< content-type: application/json
Expand Down Expand Up @@ -270,12 +282,3 @@ kubectl delete httproute/myapp
kubectl delete envoyextensionpolicy/ext-proc-example
kubectl delete backendtlspolicy/grpc-ext-proc-btls
```

## Next Steps

Checkout the [Developer Guide](../../../contributions/develop) to get involved in the project.

[EnvoyExtensionPolicy]: ../../../api/extension_types#envoyextensionpolicy
[BackendTLSPolicy]: https://gateway-api.sigs.k8s.io/api-types/backendtlspolicy/
[Gateway]: https://gateway-api.sigs.k8s.io/api-types/gateway
[HTTPRoute]: https://gateway-api.sigs.k8s.io/api-types/httproute
Original file line number Diff line number Diff line change
Expand Up @@ -316,6 +316,10 @@ $ curl -v http://${GATEWAY_HOST}/example -H "Host: www.example.com" --user 'u
...
```

## Next steps

- See the full list of supported configuration fields in the
[EnvoyExtensionPolicy API reference](../../../api/extension_types#envoyextensionpolicy)

[xDS]: https://www.envoyproxy.io/docs/envoy/latest/intro/arch_overview/operations/dynamic_configuration
[design documentation]: /contributions/design/extending-envoy-gateway
Expand Down
3 changes: 3 additions & 0 deletions site/content/en/v1.6/tasks/extensibility/lua.md
Original file line number Diff line number Diff line change
Expand Up @@ -198,6 +198,9 @@ kubectl delete configmap/cm-lua-valueref

Checkout the [Developer Guide](../../../contributions/develop) to get involved in the project.

- See the full list of supported configuration fields in the
[EnvoyExtensionPolicy API reference](../../../api/extension_types#envoyextensionpolicy)

[EnvoyExtensionPolicy]: ../../../api/extension_types#envoyextensionpolicy
[Gateway]: https://gateway-api.sigs.k8s.io/api-types/gateway
[HTTPRoute]: https://gateway-api.sigs.k8s.io/api-types/httproute
3 changes: 3 additions & 0 deletions site/content/en/v1.6/tasks/extensibility/wasm.md
Original file line number Diff line number Diff line change
Expand Up @@ -182,6 +182,9 @@ kubectl delete envoyextensionpolicy/wasm-test

Checkout the [Developer Guide](../../../contributions/develop) to get involved in the project.

- See the full list of supported configuration fields in the
[EnvoyExtensionPolicy API reference](../../../api/extension_types#envoyextensionpolicy)

[EnvoyExtensionPolicy]: ../../../api/extension_types#envoyextensionpolicy
[Gateway]: https://gateway-api.sigs.k8s.io/api-types/gateway
[HTTPRoute]: https://gateway-api.sigs.k8s.io/api-types/httproute
Original file line number Diff line number Diff line change
Expand Up @@ -71,8 +71,12 @@ XDS Metadata serves multiple purposes:
- Envoy Gateway [Extension Servers][] can leverage Gateway API metadata as additional context annotating XDS resources sent for mutation.
- Envoy Proxy extensions can leverage XDS metadata as additional context when processing traffic:
- [lua][] extensions can access metadata using the [Metadata Stream handle API][] .
- [ext_proc][] extensions can access metadata using the `xds.*_metadata` [ext_proc attribute][].

- [ext_proc][] extensions can access metadata using the `xds.*_metadata` [ext_proc attribute][].

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)

[Static Metadata]: https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/core/v3/base.proto#envoy-v3-api-msg-config-core-v3-metadata
[Virtual Host]: https://www.envoyproxy.io/docs/envoy/latest/api-v3/config/route/v3/route_components.proto#config-route-v3-virtualhost
Expand All @@ -84,6 +88,3 @@ XDS Metadata serves multiple purposes:
[ext_proc]: ../../api/extension_types#extproc
[ext_proc attribute]: ../../api/extension_types#processingmodeoptions
[Extension Servers]: ../extensibility/extension-server.md



Original file line number Diff line number Diff line change
Expand Up @@ -125,3 +125,6 @@ done
## Next Steps

Check out the [Gateway Exported Metrics](./gateway-exported-metrics.md) section to learn more about the metrics exported by the Envoy Gateway.

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)
Original file line number Diff line number Diff line change
Expand Up @@ -105,4 +105,9 @@ Envoy Gateway monitors the status of the TopologyInjector webhook which injects

This metrics provides information on whether a webhook request was successful, failed, or a no-op.

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)

[prom-format]: https://prometheus.io/docs/instrumenting/exposition_formats/#text-based-format
Original file line number Diff line number Diff line change
Expand Up @@ -165,4 +165,9 @@ kubectl port-forward pod/$OTEL_POD_NAME -n monitoring 19001:19001
curl localhost:19001/metrics
```

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)

[EnvoyGateway]: ../../api/extension_types#envoygateway
Original file line number Diff line number Diff line change
Expand Up @@ -85,3 +85,8 @@ Many of our older dashboards are manually created in the UI and exported as JSON
These example dashboards cannot be updated in-place by default, if you are trying to
make some changes to the older dashboards, you can save them directly as a JSON file
and then re-import.

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)
Original file line number Diff line number Diff line change
Expand Up @@ -306,4 +306,9 @@ spec:
resources:
k8s.cluster.name: "cluster-1"
EOF
```
```

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)
119 changes: 60 additions & 59 deletions site/content/en/v1.6/tasks/observability/proxy-metric.md
Original file line number Diff line number Diff line change
Expand Up @@ -27,21 +27,11 @@ curl -s 'http://localhost:19001/api/v1/query?query=topk(1,envoy_cluster_upstream
```

To directly view the metrics in Prometheus format from the Envoy's `/stats/prometheus`
[admin endpoint](https://www.envoyproxy.io/docs/envoy/latest/operations/admin), follow the steps below.

```shell
export ENVOY_POD_NAME=$(kubectl get pod -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}')
kubectl port-forward pod/$ENVOY_POD_NAME -n envoy-gateway-system 19001:19001
```

View the metrics:

```shell
curl localhost:19001/stats/prometheus | grep "default/backend/rule/0"
```
### OpenTelemetry Metrics

If you are only using the OpenTelemetry sink, you might want to set the `telemetry.metrics.prometheus.disable` to `true`
in the _EnvoyProxy CRD_ as shown in the following command.
Envoy Gateway can export metrics to an OpenTelemetry sink. Use the following command to send metrics to the
OpenTelemetry Collector. Ensure that the OpenTelemetry components are enabled,
as mentioned in the [Prerequisites](#prerequisites).

{{< tabpane text=true >}}
{{% tab header="Apply from stdin" %}}
Expand All @@ -58,7 +48,7 @@ spec:
parametersRef:
group: gateway.envoyproxy.io
kind: EnvoyProxy
name: prometheus
name: otel-sink
listeners:
- name: http
protocol: HTTP
Expand All @@ -67,13 +57,16 @@ spec:
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: EnvoyProxy
metadata:
name: prometheus
name: otel-sink
namespace: envoy-gateway-system
spec:
telemetry:
metrics:
prometheus:
disable: true
sinks:
- type: OpenTelemetry
openTelemetry:
host: otel-collector.monitoring.svc.cluster.local
port: 4317
EOF
```
{{% /tab %}}
Expand All @@ -90,7 +83,7 @@ spec:
parametersRef:
group: gateway.envoyproxy.io
kind: EnvoyProxy
name: prometheus
name: otel-sink
listeners:
- name: http
protocol: HTTP
Expand All @@ -99,29 +92,58 @@ spec:
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: EnvoyProxy
metadata:
name: prometheus
name: otel-sink
namespace: envoy-gateway-system
spec:
telemetry:
metrics:
prometheus:
disable: true
sinks:
- type: OpenTelemetry
openTelemetry:
host: otel-collector.monitoring.svc.cluster.local
port: 4317
```
{{% /tab %}}
{{< /tabpane >}}


To completely remove Prometheus resources from the cluster, set the `prometheus.enabled` Helm value to `false`.
Temporarily enable the `debug` exporter in the OpenTelemetry Collector
to view metrics in the pod logs using the following command. Debug exporter is enabled for demonstration purposes and
should not be used in production.

```shell
helm upgrade eg-addons oci://docker.io/envoyproxy/gateway-addons-helm --version {{< helm-version >}} -n monitoring --reuse-values --set prometheus.enabled=false
helm upgrade eg-addons oci://docker.io/envoyproxy/gateway-addons-helm --version {{< helm-version >}} -n monitoring --reuse-values --set opentelemetry-collector.config.service.pipelines.metrics.exporters='{debug,prometheus}'

```

### OpenTelemetry Metrics
To view the logs of the OpenTelemetry Collector, use the following command:

Envoy Gateway can export metrics to an OpenTelemetry sink. Use the following command to send metrics to the
OpenTelemetry Collector. Ensure that the OpenTelemetry components are enabled,
as mentioned in the [Prerequisites](#prerequisites).
```shell
export OTEL_POD_NAME=$(kubectl get pod -n monitoring --selector=app.kubernetes.io/name=opentelemetry-collector -o jsonpath='{.items[0].metadata.name}')
kubectl logs -n monitoring -f $OTEL_POD_NAME --tail=100

```

## Next Steps

Check out the [Visualising metrics using Grafana](./grafana-integration.md) section to learn more about how you can observe all the metrics in one place.

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)[admin endpoint](https://www.envoyproxy.io/docs/envoy/latest/operations/admin), follow the steps below.

```shell
export ENVOY_POD_NAME=$(kubectl get pod -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}')
kubectl port-forward pod/$ENVOY_POD_NAME -n envoy-gateway-system 19001:19001
```

View the metrics:

```shell
curl localhost:19001/stats/prometheus | grep "default/backend/rule/0"
```

If you are only using the OpenTelemetry sink, you might want to set the `telemetry.metrics.prometheus.disable` to `true`
in the _EnvoyProxy CRD_ as shown in the following command.

{{< tabpane text=true >}}
{{% tab header="Apply from stdin" %}}
Expand All @@ -138,7 +160,7 @@ spec:
parametersRef:
group: gateway.envoyproxy.io
kind: EnvoyProxy
name: otel-sink
name: prometheus
listeners:
- name: http
protocol: HTTP
Expand All @@ -147,16 +169,13 @@ spec:
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: EnvoyProxy
metadata:
name: otel-sink
name: prometheus
namespace: envoy-gateway-system
spec:
telemetry:
metrics:
sinks:
- type: OpenTelemetry
openTelemetry:
host: otel-collector.monitoring.svc.cluster.local
port: 4317
prometheus:
disable: true
EOF
```
{{% /tab %}}
Expand All @@ -173,7 +192,7 @@ spec:
parametersRef:
group: gateway.envoyproxy.io
kind: EnvoyProxy
name: otel-sink
name: prometheus
listeners:
- name: http
protocol: HTTP
Expand All @@ -182,38 +201,20 @@ spec:
apiVersion: gateway.envoyproxy.io/v1alpha1
kind: EnvoyProxy
metadata:
name: otel-sink
name: prometheus
namespace: envoy-gateway-system
spec:
telemetry:
metrics:
sinks:
- type: OpenTelemetry
openTelemetry:
host: otel-collector.monitoring.svc.cluster.local
port: 4317
prometheus:
disable: true
```
{{% /tab %}}
{{< /tabpane >}}


Temporarily enable the `debug` exporter in the OpenTelemetry Collector
to view metrics in the pod logs using the following command. Debug exporter is enabled for demonstration purposes and
should not be used in production.

```shell
helm upgrade eg-addons oci://docker.io/envoyproxy/gateway-addons-helm --version {{< helm-version >}} -n monitoring --reuse-values --set opentelemetry-collector.config.service.pipelines.metrics.exporters='{debug,prometheus}'

```

To view the logs of the OpenTelemetry Collector, use the following command:
To completely remove Prometheus resources from the cluster, set the `prometheus.enabled` Helm value to `false`.

```shell
export OTEL_POD_NAME=$(kubectl get pod -n monitoring --selector=app.kubernetes.io/name=opentelemetry-collector -o jsonpath='{.items[0].metadata.name}')
kubectl logs -n monitoring -f $OTEL_POD_NAME --tail=100

helm upgrade eg-addons oci://docker.io/envoyproxy/gateway-addons-helm --version {{< helm-version >}} -n monitoring --reuse-values --set prometheus.enabled=false
```

## Next Steps

Check out the [Visualising metrics using Grafana](./grafana-integration.md) section to learn more about how you can observe all the metrics in one place.
4 changes: 4 additions & 0 deletions site/content/en/v1.6/tasks/observability/proxy-trace.md
Original file line number Diff line number Diff line change
Expand Up @@ -347,5 +347,9 @@ spec:
EOF
```

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)

[envoy-proxy-crd]: ../../api/extension_types#envoyproxy
Original file line number Diff line number Diff line change
Expand Up @@ -250,3 +250,8 @@ data:
{{< /tabpane >}}

{{< boilerplate rollout-envoy-gateway >}}

## Next steps

- See the full list of supported configuration fields in the
[BackendTrafficPolicy API reference](../../../api/extension_types#backendtrafficpolicy)
5 changes: 5 additions & 0 deletions site/content/en/v1.6/tasks/operations/airgap-deployment.md
Original file line number Diff line number Diff line change
Expand Up @@ -97,3 +97,8 @@ you may need to configure service annotations or change the service type dependi
on your Kubernetes environment and network restrictions.

For detailed service configuration options including annotations, service types, and other networking customizations, see [Customize EnvoyProxy](customize-envoyproxy).

## Next steps

- See the full list of supported configuration fields in the
[Gateway API reference](../../../api/gateway_api/gateway)
Loading