У меня есть 2 кластера kubernetes в облаке IBM, в одном 2 узла, в другом 4.
Тот, который имеет 4 узла, работает нормально, но на другом мне пришлось временно удалить рабочие узлы из-за денежных причин (не следует платить во время простоя).
Когда я повторно активировал два узла, все, казалось, запустилось нормально, и пока я не пытаюсь взаимодействовать с модулями, на поверхности все выглядит нормально, никаких сообщений о недоступности или критическом состоянии здоровья. Хорошо, я удалил два устаревших Пространство имен
s, который застрял в Прекращение
состояние, но я мог бы решить эту проблему, перезапустив узел кластера (уже точно не знаю, какой именно).
Когда все выглядело нормально, я попытался получить доступ к панели инструментов kubernetes (все, что делалось до этого, было на уровне управления IBM или в командной строке), но, к удивлению, я обнаружил, что она недоступна со страницей ошибки в браузере с указанием:
сервис 503 недоступен
Внизу этой страницы было небольшое сообщение JSON, в котором говорилось:
{
"вид": "Статус",
"апиВерсия": "v1",
"метаданные": {},
"статус": "Отказ",
"message": "ошибка при попытке связаться с сервисом: чтение tcp 172.18.190.60:39946->172.19.151.38:8090: чтение: сброс соединения узлом",
"причина": "Сервис недоступен",
"код": 503
}
я отправил журналы kubectl kubernetes-dashboard-54674bdd65-nf6w7 --namespace=kube-system
где Стручок
был показан как работающий, но результатом были не журналы для просмотра, а вместо этого было это сообщение:
Ошибка с сервера: получить «https://10.215.17.75:10250/containerLogs/kube-system/kubernetes-dashboard-54674bdd65-nf6w7/kubernetes-dashboard»:
прочитать tcp 172.18.135.195:56882->172.19.151.38:8090:
чтение: соединение сброшено узлом
Затем я узнал, что я не могу получить журналы Любые Стручок
работающий в этом кластере, и я не могу развернуть какой-либо новый пользовательский объект kubernetes, который требует планирования (на самом деле я мог бы применить Оказание услуг
с или Карта конфигурации
с, но нет Стручок
, набор реплик
, Развертывание
или похожие).
я уже пытался
- перезагрузить рабочие узлы в рабочем пуле
- перезапустить рабочие узлы в рабочем пуле
- перезапустил kubernetes-dashboard
Развертывание
К сожалению, ни одно из вышеперечисленных действий не изменило доступность Стручок
с.
Есть еще одна вещь, которая может быть связана (хотя я не совсем уверен, что это на самом деле):
В другом кластере, который работает нормально, есть три ситцевых Стручок
работают и все три работают, в то время как в проблемном кластере только 2 из трех коленкоров Стручок
запущены и работают, третий остается В ожидании
государство и kubectl описать pod calico-blablabla-blabla
раскрывает причину, Событие
Предупреждение FailedScheduling 13s планировщик по умолчанию
Доступно 0/2 узла: у 2 узлов не было свободных портов для запрошенных портов модуля.
Кто-нибудь знает, что происходит в этом кластере, и может указать мне на возможные решения? Я действительно не хочу удалять кластер и создавать новый.
Редактировать
Результат kubectl описывает модуль kubernetes-dashboard-54674bdd65-4m2ch --namespace=kube-system
:
Имя: kubernetes-dashboard-54674bdd65-4m2ch
Пространство имен: kube-system
Приоритет: 2000000000
Имя класса приоритета: системный-кластер-критический
Узел: 10.215.17.82/10.215.17.82
Время начала: Пн, 15 нояб. 2021 г., 09:01:30 +0100
Ярлыки: k8s-app=kubernetes-dashboard
стручок-шаблон-хэш = 54674bdd65
Аннотации: cni.projectcalico.org/containerID: ca52cefaae58d8e5ce6d54883cb6a6135318c8db53d231dc645a5cf2e67d821e
cni.projectcalico.org/podIP: 172.30.184.2/32
cni.projectcalico.org/podIPs: 172.30.184.2/32
container.seccomp.security.alpha.kubernetes.io/kubernetes-dashboard: время выполнения/по умолчанию
kubectl.kubernetes.io/restartedВ: 2021-11-10T15:47:14+01:00
kubernetes.io/psp: ibm-привилегированный-psp
Статус: Работает
IP: 172.30.184.2
IP-адреса:
IP: 172.30.184.2
Контролируется: ReplicaSet/kubernetes-dashboard-54674bdd65
Контейнеры:
kubernetes-панель управления:
Идентификатор контейнера: containerd://bac57850055cd6bb944c4d893a5d315c659fd7d4935fe49083d9ef8ae03e5c31
Изображение:Registry.eu-de.bluemix.net/armada-master/kubernetesui-dashboard:v2.3.1
Идентификатор изображения: Registration.eu-de.bluemix.net/armada-master/kubernetesui-dashboard@sha256:f14f581d36b83fc9c1cfa3b0609e7788017ecada1f3106fab1c9db35295fe523
Порт: 8443/TCP
Хост-порт: 0/TCP
Аргументы:
--auto-генерировать-сертификаты
--namespace=kube-система
Состояние: работает
Начато: Пн, 15 Ноя 2021 09:01:37 +0100
Готово: Верно
Количество перезапусков: 0
Запросы:
процессор: 50 м
память: 100Ми
Жизнеспособность: http-get https://:8443/ delay=30s timeout=30s period=10s #success=1 #failure=3
Готовность: http-get https://:8443/ delay=10s timeout=30s period=10s #success=1 #failure=3
Среда: <нет>
Маунты:
/certs из kubernetes-dashboard-certs (rw)
/tmp из tmp-тома (RW)
/var/run/secrets/kubernetes.io/serviceaccount из kube-api-access-sc9kw (ro)
Условия:
Тип Статус
Инициализировано Истинно
Готов Верно
ContainersReady True
PodScheduled True
Объемы:
Kubernetes-приборная панель-сертификаты:
Тип: секрет (том, заполненный секретом)
SecretName: kubernetes-dashboard-certs
Необязательно: ложь
tmp-том:
Тип: EmptyDir (временный каталог, который разделяет время существования модуля)
Середина:
Ограничение размера: <не установлено>
куб-апи-доступ-sc9kw:
Тип: спроецированный (том, который содержит внедренные данные из нескольких источников)
TokenExpirationSeconds: 3607
ConfigMapName: kube-root-ca.crt
ConfigMapOptional: <ноль>
Нисходящий API: правда
Класс QoS: взрывоустойчивый
Селекторы узлов: <нет>
Допуски: node-role.kubernetes.io/master:NoSchedule
node.kubernetes.io/not-ready:NoExecute op=Существует 600 сек.
node.kubernetes.io/unreachable:NoExecute op=Существует 600 сек.
События: <нет>