Переход с Ingress на Cilium Gateway

Если установлен Ingress NGINX, то его надо сначала  удалить.

Если установка делалась отсюда, то удаляем:

helm uninstall ingress-nginx -n ingress-nginx

Если установка была другим способом, удалить в соответствии с инструкцией по существующему методу.

В случае, если установка k8s делалась через snap, то по умолчанию должент был установиться cilium и cilium-operator:

kubectl get pod -n kube-system
NAME                                  READY   STATUS    RESTARTS        AGE
cilium-hg6nz                          1/1     Running   49 (15m ago)    118d
cilium-operator-59756b9446-6brfb      1/1     Running   54 (15m ago)    55d
ck-storage-rawfile-csi-controller-0   2/2     Running   48 (15m ago)    84d
ck-storage-rawfile-csi-node-2s5qd     4/4     Running   157 (15m ago)   84d
coredns-646d668679-hqpkq              1/1     Running   29 (15m ago)    55d
coredns-646d668679-mg4tv              1/1     Running   26 (15m ago)    55d
metrics-server-55987d6764-vksr8       1/1     Running   145 (15m ago)   118d

Версию cilium можно посмотреть так:

kubectl get daemonset cilium -n kube-system -o json | jq -r '.spec.template.spec.containers[0].image'

ghcr.io/canonical/cilium:1.17.12-ck0-static

Так же по умолчани будет включен gateway, а если нет, то его нужно включить:

k8s status
cluster status:           ready
control plane nodes:      192.168.56.83:6400 (voter)
high availability:        no
datastore:                etcd
network:                  enabled
dns:                      enabled at 10.152.183.238
ingress:                  disabled
load-balancer:            disabled
local-storage:            enabled at /var/snap/k8s/common/rawfile-storage
gateway                   enabled

Смотрим состояние gateway:

kubectl get gateway -A

По факту его нет, хоть и статус показывает что он включен:

No resources found

Проверяем установлены ли CRD:

kubectl get crd | grep gateway.networking.k8s.io

Видим что все хорошо:

gatewayclasses.gateway.networking.k8s.io     2026-01-24T11:40:28Z
gateways.gateway.networking.k8s.io           2026-01-24T11:40:28Z
grpcroutes.gateway.networking.k8s.io         2026-01-24T11:40:28Z
httproutes.gateway.networking.k8s.io         2026-01-24T11:40:28Z
referencegrants.gateway.networking.k8s.io    2026-01-24T11:40:28Z
tlsroutes.gateway.networking.k8s.io          2026-01-24T11:40:28Z

Проверяем на наличие GatewayClass:

kubectl get gatewayclass

Да видим, что есть:

NAME         CONTROLLER                     ACCEPTED   AGE
cilium       io.cilium/gateway-controller   True       189d
ck-gateway   io.cilium/gateway-controller   True       189d

Если классы мы не увидили, смотрим еще раз включен ли gateway в k8s status и если что т оне так - идем в интернет и смотрим варианты решения проблемы

Далее переходим к настройке ELMA365 с поддержкой Gateway API тут.


Версия #3
Вербовик Максим Арнольдович создал 2026-08-02 11:13:49 MSK
Вербовик Максим Арнольдович обновил 2026-08-03 16:25:55 MSK