#kubernetes #kubectl #k3s #kube-apiserver #k3d
Вопрос:
Я хочу использовать kube-apiserver
для включения/выключения контроллеров доступа (например kube-apiserver --enable-admission-plugins=NamespaceLifecycle
), но я нигде не могу его найти.
Когда я запускаю следующее, я нигде этого не вижу:
# Running this:
kubectl get pods -n kube-system
# Shows only this:
# NAME READY STATUS RESTARTS AGE
# helm-install-traefik-fvs4z 0/1 Completed 0 10d
# local-path-provisioner-5ff76fc89d-rrntw 1/1 Running 4 10d
# coredns-854c77959c-vz4s2 1/1 Running 4 10d
# metrics-server-86cbb8457f-6kl5n 1/1 Running 4 10d
# svclb-traefik-cc7zx 2/2 Running 8 10d
# calico-kube-controllers-5dc5c9f744-6bwdj 1/1 Running 4 10d
# calico-node-xcjz8 1/1 Running 4 10d
# traefik-6f9cbd9bd4-b6nk7 1/1 Running 4 10d
Я думал, что это может быть связано с использованием ситца, но даже создание кластера без ситца по-прежнему не показывает kube-apiserver
:
# Running this:
kubectl get pods -n kube-system
# Shows only this:
# NAME READY STATUS RESTARTS AGE
# local-path-provisioner-5ff76fc89d-d28gc 1/1 Running 0 2m31s
# coredns-854c77959c-lh78n 1/1 Running 0 2m31s
# metrics-server-86cbb8457f-xlzl2 1/1 Running 0 2m31s
# helm-install-traefik-nhxp4 0/1 Completed 0 2m31s
# svclb-traefik-hqndx 2/2 Running 0 2m21s
# traefik-6f9cbd9bd4-m42jg 1/1 Running 0 2m21s
Где это kube-apiserver
? Как включить и отключить контроллеры в k3d?
Ответ №1:
Он не работает через статический модуль, поэтому он не отображается как модуль. С k3s вы обычно устанавливаете его как сервисный модуль systemd. С помощью k3d вы можете увидеть это через docker ps
.
Комментарии:
1. Как бы я это назвал? Могу ли я
exec
войти в этот контейнер docker? И который же это? Я вижу два:rancher/k3d-proxy:v4.4.1
иrancher/k3s:v1.20.5-k3s1
2. Когда я вхожу в оба из них, например, я получаю терминал, но когда я набираю оба контейнера, говорят
docker exec -it k3d-dev-server-0 /bin/sh
kube-apiserver
/bin/sh: kube-apiserver: not found
3. Я не понимаю вашего вопроса, вы ничего не называете, и я не думаю, что они включают оболочку в контейнер в качестве демона одного назначения. Это просто вещь, которая работает. Вы настраиваете его через его конфигурационный файл, хотя я на самом деле не уверен, сколько плагинов можно настроить, вам придется проверить их документы.
4. Это не «звонок», это не вопрос состояния. Вы должны включить это в командную строку при запуске. Каждый раз.
5. Правильный. Вам придется изменить аргументы CLI в любом конфигурационном файле, в котором они находятся, и перезапустить сервер kube-apiserver.