mirror of
https://github.com/geerlingguy/ansible-role-kubernetes.git
synced 2025-04-21 01:17:04 +02:00
Add gateway API Support
This commit is contained in:
parent
3b8e19045a
commit
3cf060049c
21
README.md
21
README.md
@ -169,14 +169,31 @@ Flannel manifest file to apply to the Kubernetes cluster to enable networking. Y
|
|||||||
kubernetes_calico_manifest_file: https://projectcalico.docs.tigera.io/manifests/calico.yaml
|
kubernetes_calico_manifest_file: https://projectcalico.docs.tigera.io/manifests/calico.yaml
|
||||||
```
|
```
|
||||||
|
|
||||||
Cilium Helm chart values can be specified under `kubernetes_cilium_values`. [Kube Proxy Replacement](https://docs.cilium.io/en/latest/network/kubernetes/kubeproxy-free/) is supported through this method.
|
Calico manifest file to apply to the Kubernetes cluster (if using Calico instead of Flannel).
|
||||||
|
|
||||||
|
#### Cilium
|
||||||
|
|
||||||
```yaml
|
```yaml
|
||||||
|
kubernetes_cilium_hubble_client: true
|
||||||
kubernetes_cilium_values:
|
kubernetes_cilium_values:
|
||||||
kubeProxyReplacement: true
|
kubeProxyReplacement: true
|
||||||
|
gatewayAPI:
|
||||||
|
enabled: true
|
||||||
```
|
```
|
||||||
|
|
||||||
Calico manifest file to apply to the Kubernetes cluster (if using Calico instead of Flannel).
|
Cilium Helm chart values can be specified under `kubernetes_cilium_values`.
|
||||||
|
|
||||||
|
##### Kube Proxy Replacement
|
||||||
|
|
||||||
|
[Kube Proxy Replacement](https://docs.cilium.io/en/latest/network/kubernetes/kubeproxy-free/) is supported through this method. The is a prerequisite for Gateway API Support.
|
||||||
|
|
||||||
|
##### Gateway API Support
|
||||||
|
|
||||||
|
[Gateway API Support](https://docs.cilium.io/en/latest/network/servicemesh/gateway-api/gateway-api/#gs-gateway-api). This will install additional CRDs to support GatewayAPI.
|
||||||
|
|
||||||
|
##### Hubble Observability
|
||||||
|
|
||||||
|
In addition to setting up [Setting up Hubble Observability](https://docs.cilium.io/en/stable/gettingstarted/hubble_setup/#hubble-setup), you may choose to install the hubble client with `kubernetes_cilium_hubble_client: true`
|
||||||
|
|
||||||
## Dependencies
|
## Dependencies
|
||||||
|
|
||||||
|
@ -16,6 +16,12 @@
|
|||||||
(kubernetes_cilium_values.kubeProxyReplacement is defined) and
|
(kubernetes_cilium_values.kubeProxyReplacement is defined) and
|
||||||
(kubernetes_cilium_values.kubeProxyReplacement) | bool }}"
|
(kubernetes_cilium_values.kubeProxyReplacement) | bool }}"
|
||||||
|
|
||||||
|
- name: Determine if we installing Gateway API
|
||||||
|
set_fact:
|
||||||
|
install_gateway_api="{{ (replace_kube_proxy) and
|
||||||
|
(kubernetes_cilium_values.gatewayAPI.enabled is defined) and
|
||||||
|
(kubernetes_cilium_values.gatewayAPI.enabled)| bool }}"
|
||||||
|
|
||||||
- name: Initialize Kubernetes control plane with kubeadm init
|
- name: Initialize Kubernetes control plane with kubeadm init
|
||||||
command: >
|
command: >
|
||||||
kubeadm init
|
kubeadm init
|
||||||
@ -102,6 +108,17 @@
|
|||||||
retries: 12
|
retries: 12
|
||||||
delay: 5
|
delay: 5
|
||||||
|
|
||||||
|
- name: Install Prerequisite CRDs for Cilium Gateway API support.
|
||||||
|
when: install_gateway_api
|
||||||
|
command: "kubectl apply -f {{ item }}"
|
||||||
|
loop:
|
||||||
|
- https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_gatewayclasses.yaml
|
||||||
|
- https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_gateways.yaml
|
||||||
|
- https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_httproutes.yaml
|
||||||
|
- https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/standard/gateway.networking.k8s.io_referencegrants.yaml
|
||||||
|
- https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/experimental/gateway.networking.k8s.io_grpcroutes.yaml
|
||||||
|
- https://raw.githubusercontent.com/kubernetes-sigs/gateway-api/v1.0.0/config/crd/experimental/gateway.networking.k8s.io_tlsroutes.yaml
|
||||||
|
|
||||||
- name: Configure Cilium networking
|
- name: Configure Cilium networking
|
||||||
command: >
|
command: >
|
||||||
/usr/local/bin/cilium install
|
/usr/local/bin/cilium install
|
||||||
|
Loading…
Reference in New Issue
Block a user