Headlamp — это веб-интерфейс для управления кластером. Он позволяет просматривать ресурсы кластера, управлять ими и отслеживать состояние приложений без использования kubectl.
Установка
Перед установкой дополнения убедитесь, что:
-
В кластере установлен Nginx Ingress.
-
Есть хотя бы одна нода с публичным IP-адресом. Включить публичный IP можно в настройках группы воркеров.
Перейдите во вкладку «Дополнения» в панели управления кластером и нажмите на карточку аддона «Headlamp».

В открывшемся меню вы можете включить продвинутую установку или использовать параметры по умолчанию.
При редактировании параметров вы можете указать, например:
- домен, по которому будет доступен интерфейс;
- настройки ingress;
- настроить OIDC.
Нажмите «Установить», чтобы начать установку. После завершения в карточке дополнения появится статус «Добавлено».
Проверить, что дополнение установлено корректно, можно командой:
kubectl get pod -n headlamp
В случае успешной установки вы увидите под в статусе «Running».
Авторизация
После установки иконка Headlamp появится в панели управления кластером.

Нажмите на нее, чтобы открыть интерфейс. Если вы не авторизованы, потребуется указать токен.
Получить токен можно во вкладке «Дашборд» панели управления, нажав на «Скопировать» рядом с «Токен Dashboard».

После авторизации откроется интерфейс Headlamp.
Основные разделы:
- Cluster — информация о кластере и его состоянии;
- Map — визуализация ресурсов и их связей;
- Workloads — управление рабочими нагрузками (Pods, Deployments, StatefulSet);
- Storage — PVC, PV и storage-классы;
- Network — сервисы, ingress и сетевые политики;
- Gateway — ресурсы Gateway API;
- Security — роли, сервисные аккаунты и политики доступа;
- Configuration — ConfigMap, Secrets и другие настройки;
- Custom Resources — пользовательские ресурсы (CRD);
- Create — создание ресурсов через интерфейс.

Настройка авторизации
Если интерфейс Headlamp доступен извне, рекомендуется настроить дополнительную базовую авторизацию.
Headlamp не поддерживает авторизацию по логину и паролю напрямую. Для этого используется basic auth на уровне ingress.
Создайте файл с логином и паролем:
htpasswd -c auth admin
где admin — имя пользователя. Во время выполнения команды потребуется дважды ввести желаемый пароль.
В результате будет создан файл auth.
Если утилита htpasswd отсутствует, установите пакет apache2-utils.
Затем создайте секрет в неймспейсе headlamp с использованием ранее полученного файла:
kubectl create secret generic headlamp-basic-auth \ --from-file=auth \ -n headlamp
Перейдите в раздел «Дополнения» панели управления кластером и откройте установленный Headlamp.
Включите продвинутую установку и найдите блок:
ingress:
enabled: true
# Желательно настроить авторизацию: https://headlamp.dev/docs/latest/installation/in-cluster/basic-auth/
annotations: {}
Удалите {} возле annotations и добавьте аннотации:
ingress:
enabled: true
annotations:
nginx.ingress.kubernetes.io/auth-type: basic
nginx.ingress.kubernetes.io/auth-secret: headlamp-basic-auth
nginx.ingress.kubernetes.io/auth-realm: "Authentication Required"
Нажмите «Сохранить» и дождитесь обновления дополнения.
После этого при обращении к Headlamp сначала потребуется ввести логин и пароль, а затем токен.
Чтобы изменить пароль, создайте новый файл auth и обновите секрет в кластере.