Troubleshooting

На странице представлены решения возможных типовых ошибок доступа в кластер из консоли.

Недействительность токена (access token)

Пример ошибки
E1202 11:06:00.839825 3042497 memcache.go:265] 
couldn't get current server API group list: the server has asked for the client to provide credentials
...
error: You must be logged in to the server (the server has asked for the client to provide credentials)

Решение:

или

  • с помощью модуля kubectl-shturval-plugin загрузите повторно kubeconfig кластера.

Некорректный сертификат в kubeconfig кластера

Может возникнуть в случае, если в kubeconfig содержится сертификат от другого кластера.

Пример ошибки
Unable to connect to the server: tls: failed to verify certificate: x509: certificate signed by unknown authority (possibly because of "crypto/rsa: verification error" while trying to verify candidate authority certificate "kubernetes")

Решение:

или

  • с помощью модуля kubectl-shturval-plugin загрузите повторно kubeconfig кластера.

Ошибка экспорта kubeconfig кластера

Пример ошибки
E1216 16:19:13.703968    7159 memcache.go:265] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp [::1]:8080: connect: connection refused
...
E1216 16:19:13.707804    7159 memcache.go:265] couldn't get current server API group list: Get "http://localhost:8080/api?timeout=32s": dial tcp [::1]:8080: connect: connection refused
The connection to the server localhost:8080 was refused - did you specify the right host or port?

Решение:

  • экспортируйте kubeconfig в папку ~/.kube. Если имя файла kubeconfig кластера отличное от config, переименуйте файл kubeconfig кластера.
Команда
# Поместить в ~/.kube и переименовать clustername.conf
mv /downloads/clustername.conf ~/.kube/config
# Проверить расположение config 
ls ~/.kube/ | grep config

Где /downloads/clustername.conf - путь до расположения kubeconfig кластера.

Ошибка синхронизации времени

Пример ошибки
Unable to connect to the server: tls: failed to verify certificate: x509: certificate has expired or is not yet valid: current time 2023-12-16T16:30:28+03:00 is before 2024-12-16T09:14:38Z

Решение:

  • необходимо включить синхронизацию по протоколу Network Time Protocol (NTP). Перейдите к инструкции синхронизации времени для различных операционных систем (ОС) и выполните синхронизацию. Если в ОС установлен один из сервисов NTP: timesyncd, ntpd, Chrony, вы можете использовать команду timedatectl для настройки синхронизации времени.
Команда timedatectl
# Проверить запущен ли сервис NTP
timedatectl timesync-status
# Установить синхронизацию с сервисом NTP
timedatectl set-ntp on 
# Проверить настройки даты и времени
timedatectl
Пример когда синхронизация времени включена
Local time: Tue 2024-12-17 13:07:44 MSK
Universal time: Tue 2024-12-17 10:07:44 UTC
RTC time: Tue 2024-12-17 10:07:43
Time zone: Europe/Moscow (MSK, +0300)
System clock synchronized: yes
NTP service: active
RTC in local TZ: no

Ошибка в работе OIDC

Данная ошибка может возникнуть в случаях:

  1. не валидного CA сертификата;
  2. недоступности кластера управления;
  3. отсутствия у пользователя необходимых прав на выполнение действий в кластере.
Пример ошибки
error: You must be logged in to the server (Unauthorized)

Действия:

  • Получите логи контейнера kube-apiserver на каждом Control Plane узле, чтобы убедиться в валидности СА сертификата.
Команда получения логов контейнера kube-apiserver
crictl logs $(crictl ps | awk '/kube-apiserver/ {print $1}')
Если на Control Plane узле получена ошибка, то причина ошибки в не валидном СА сертификате.
Пример ответа ошибки
E1216 14:14:01.209890       1 authentication.go:73] "Unable to authenticate the request" err="[invalid bearer token, oidc: authenticator not initialized]"
E1216 14:14:06.695653       1 oidc.go:304] oidc authenticator: initializing plugin: Get "https://auth.apps.ip-xx-xx-xx-xx.shturval.link/.well-known/openid-configuration": tls: failed to verify certificate: x509: certificate signed by unknown authority

Решение:

  1. Если ошибка из-за СА сертификата, то получите валидный СА сертификат, добавьте данные сертификата на Control Plane узлы в /etc/ssl/certs/oidc.crt. СА сертификат содержится в Configmap root-ca неймспейса cert-manager в вашем кластере. При отсутствии доступа к Configmap root-ca обратитесь за получением валидного СА сертификата к администратору кластера.
  2. Если проблема не с СА сертификатом, обратитесь к администратору платформы для уточнения доступности кластера управления.
  3. Если сертификат валидный и кластер управления доступен, то у вас недостаточно прав для действий в кластере. Запросите у администратора кластера расширение прав.

Отсутствие доступа к API-серверу

Данная ошибка может возникнуть в случае, когда API-сервер не работает, перезапускается или заблокирован.

Пример ошибки
The connection to the server ХХХ.ХХХ.ХХХ.ХХХ:6443 was refused - did you specify the right host or port?

Действия:

  • обратитесь к администратору платформы или кластера для выяснения причин перезапуска или отказа в работе API-сервера.
×