Skip to content
Merged
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
114 changes: 0 additions & 114 deletions website/content/docs/k8s/helm.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -31,7 +31,6 @@ Use these links to navigate to a particular top-level stanza.
- [`meshGateway`](#h-meshgateway)
- [`ingressGateways`](#h-ingressgateways)
- [`terminatingGateways`](#h-terminatinggateways)
- [`apiGateway`](#h-apigateway)
- [`webhookCertManager`](#h-webhookcertmanager)
- [`prometheus`](#h-prometheus)
- [`tests`](#h-tests)
Expand Down Expand Up @@ -2758,119 +2757,6 @@ Use these links to navigate to a particular top-level stanza.

- `name` ((#v-terminatinggateways-gateways-name)) (`string: terminating-gateway`)

### apiGateway ((#h-apigateway))

- `apiGateway` ((#v-apigateway)) - [DEPRECATED] Use connectInject.apiGateway instead.
Configuration settings for the Consul API Gateway integration

- `enabled` ((#v-apigateway-enabled)) (`boolean: false`) - When true the helm chart will install the Consul API Gateway controller

- `image` ((#v-apigateway-image)) (`string: null`) - Image to use for the api-gateway-controller pods and gateway instances

~> **Note:** Using API Gateway <= 0.4 with external servers requires setting `client.enabled: true`.

- `imageEnvoy` ((#v-apigateway-imageenvoy)) (`string: envoyproxy/envoy:<latest supported version>`) - The name (and tag) of the Envoy Docker image used for the
apiGateway. For other Consul compoenents, imageEnvoy has been replaced with Consul Dataplane.

- `logLevel` ((#v-apigateway-loglevel)) (`string: info`) - Override global log verbosity level for api-gateway-controller pods. One of "debug", "info", "warn", or "error".

- `managedGatewayClass` ((#v-apigateway-managedgatewayclass)) - Configuration settings for the optional GatewayClass installed by consul-k8s (enabled by default)

- `enabled` ((#v-apigateway-managedgatewayclass-enabled)) (`boolean: true`) - When true a GatewayClass is configured to automatically work with Consul as installed by helm.

- `nodeSelector` ((#v-apigateway-managedgatewayclass-nodeselector)) (`string: null`) - This value defines [`nodeSelector`](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector)
labels for gateway pod assignment, formatted as a multi-line string.

Example:

```yaml
nodeSelector: |
beta.kubernetes.io/arch: amd64
```

- `tolerations` ((#v-apigateway-managedgatewayclass-tolerations)) (`string: null`) - Toleration settings for gateway pods created with the managed gateway class.
This should be a multi-line string matching the
[Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) array in a Pod spec.

- `serviceType` ((#v-apigateway-managedgatewayclass-servicetype)) (`string: LoadBalancer`) - This value defines the type of service created for gateways (e.g. LoadBalancer, ClusterIP)

- `useHostPorts` ((#v-apigateway-managedgatewayclass-usehostports)) (`boolean: false`) - This value toggles if the gateway ports should be mapped to host ports

- `copyAnnotations` ((#v-apigateway-managedgatewayclass-copyannotations)) - Configuration settings for annotations to be copied from the Gateway to other child resources.

- `service` ((#v-apigateway-managedgatewayclass-copyannotations-service)) (`string: null`) - This value defines a list of annotations to be copied from the Gateway to the Service created, formatted as a multi-line string.

Example:

```yaml
service:
annotations: |
- external-dns.alpha.kubernetes.io/hostname
```

- `deployment` ((#v-apigateway-managedgatewayclass-deployment)) (`map`) - This value defines the number of pods to deploy for each Gateway as well as a min and max number of pods for all Gateways

Example:

```yaml
deployment:
defaultInstances: 3
maxInstances: 8
minInstances: 1
```

- `serviceAccount` ((#v-apigateway-serviceaccount)) - Configuration for the ServiceAccount created for the api-gateway component

- `annotations` ((#v-apigateway-serviceaccount-annotations)) (`string: null`) - This value defines additional annotations for the client service account. This should be formatted as a multi-line
string.

```yaml
annotations: |
"sample/annotation1": "foo"
"sample/annotation2": "bar"
```

- `controller` ((#v-apigateway-controller)) - Configuration for the api-gateway controller component

- `replicas` ((#v-apigateway-controller-replicas)) (`integer: 1`) - This value sets the number of controller replicas to deploy.

- `annotations` ((#v-apigateway-controller-annotations)) (`string: null`) - Annotations to apply to the api-gateway-controller pods.

```yaml
annotations: |
"annotation-key": "annotation-value"
```

- `priorityClassName` ((#v-apigateway-controller-priorityclassname)) (`string: ""`) - This value references an existing
Kubernetes [`priorityClassName`](https://kubernetes.io/docs/concepts/configuration/pod-priority-preemption/#pod-priority)
that can be assigned to api-gateway-controller pods.

- `nodeSelector` ((#v-apigateway-controller-nodeselector)) (`string: null`) - This value defines [`nodeSelector`](https://kubernetes.io/docs/concepts/configuration/assign-pod-node/#nodeselector)
labels for api-gateway-controller pod assignment, formatted as a multi-line string.

Example:

```yaml
nodeSelector: |
beta.kubernetes.io/arch: amd64
```

- `tolerations` ((#v-apigateway-controller-tolerations)) (`string: null`) - This value defines the tolerations for api-gateway-controller pod, this should be a multi-line string matching the
[Tolerations](https://kubernetes.io/docs/concepts/configuration/taint-and-toleration/) array in a Pod spec.

- `service` ((#v-apigateway-controller-service)) - Configuration for the Service created for the api-gateway-controller

- `annotations` ((#v-apigateway-controller-service-annotations)) (`string: null`) - Annotations to apply to the api-gateway-controller service.

```yaml
annotations: |
"annotation-key": "annotation-value"
```

- `resources` ((#v-apigateway-resources)) (`map`) - The resource settings for api gateway pods.

- `initCopyConsulContainer` ((#v-apigateway-initcopyconsulcontainer)) (`map`) - The resource settings for the `copy-consul-bin` init container.

### webhookCertManager ((#h-webhookcertmanager))

- `webhookCertManager` ((#v-webhookcertmanager)) - Configuration settings for the webhook-cert-manager
Expand Down
14 changes: 14 additions & 0 deletions website/content/docs/upgrading/upgrade-specific.mdx
Original file line number Diff line number Diff line change
Expand Up @@ -25,6 +25,20 @@ In previous versions, Consul emitted redundant state store usage metrics that co

As of Consul v1.19, Consul does not emit the redundant metric with the double `consul.consul` in its name. Any monitoring alerts and dashboards that you may have utilizing these metrics may require edits to update to the simplified metric name.

### Legacy API Gateway Removal
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

We should remove the no-longer-existing stanza from the Helm chart docs: https://developer.hashicorp.com/consul/docs/k8s/helm#v-apigateway

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Updated

The Consul Kubernetes Helm chart stanza
[`.apiGateway`](/consul/docs/v1.16.x/k8s/helm#apigateway-1)
is removed in Consul v1.19.0. If using that stanza, migrate to the
[`connectInject.apiGateway`](/consul/docs/k8s/helm#v-connectinject-apigateway)
stanza before upgrading to Consul v1.19 or later.

The `.apiGateway` stanza is associated with the legacy API gateway that was
[deprecated in Consul v1.16.0](https://developer.hashicorp.com/consul/docs/release-notes/consul/v1_16_x#what-s-deprecated).
The Kubernetes-only legacy API gateway is superseded by the modern, multi-runtime
[API gateway](/consul/docs/connect/config-entries/api-gateway).
On Kubernetes, the modern API gateway is associated with the `connectInject.apiGateway` stanza.


## Consul 1.17.x

### Known issues
Expand Down