С конфигурационным файлом из консоли

Прежде чем выполнять аутентификацию:

  1. Ознакомьтесь с вариантами получения доступа к кластеру из консоли.
  2. Установите модуль доступа к кластерам kubectl-shturval-plugin. Инструкция по установке здесь.

Когда модуль kubectl-shturval-plugin установлен, вы можете сгенерировать конфигурационный файл с необходимым набором параметров. Для этого в интерфейсе командной строки:

  1. Запустите команду kubectl shturval login genconfig, в которую необходимо подставить свои значения параметров.
Доступные параметры команды kubectl shturval login genconfig
Параметр Обязательный Описание
--auth-url [string] нет URL-адрес сервера аутентификации
--cacert [string] нет Содержимое корневого доверенного сертификата
--cacert-file [string] нет Путь до корневого доверенного сертификата
--client-id [string] нет Идентификатор клиента для внешнего сервиса аутентификации. По умолчанию: backend
--client-secret [string] нет Secret клиента для внешнего сервиса аутентификации
-n, --cluster-name [string] нет Имя кластера для получения kubeconfig. Не указывается, если необходимо получить kubeconfigs всех доступных кластеров
--config-path [string] нет Путь до расположения конфигурационного файла shturval-login-plugin.yaml. По умолчанию для Linux: /root
-i, --insecure нет Признак проверки безопасности TLS соединения
-k, --kubeconfig [string] нет Путь расположения загруженных kubeconfigs. По умолчанию для Linux: /root/.kube/config
-p, --password [string] нет Пароль для подключения к серверу shturval-backend. Если пароль содержит специальные символы ($,<, >, *, &, ?, /,\ ), необходимо их экранировать с помощью одинарных кавычек. Например, --password='my$Password?'
-s, --server-url [string] нет URL shturval-backend сервера
--ttl [string] нет Время жизни токена. По умолчанию 24h
-u, --username [string] нет Имя пользователя для подключения к серверу shturval-backend
-v, --version нет Версия команды login
  1. Убедитесь, что конфигурационный файл подготовлен.
Пример команды
cat ВВЕДИТЕ-ПУТЬ-ДО-shturval-login-plugin.yaml 
Скриншот

logincatconfig1

  1. Выполните команду kubectl shturval login для загрузки kubeconfigs доступных кластеров, в которую подставьте свои значения параметров.
Доступные параметры команды kubectl shturval login
Параметр Обязательный Описание
--auth-url [string] нет URL-адрес сервера аутентификации
--cacert [string] нет Содержимое корневого доверенного сертификата
--cacert-file [string] нет Путь до корневого доверенного сертификата
--client-id [string] нет Идентификатор клиента для сервиса аутентификации. По умолчанию: backend
--client-secret [string] да Secret клиента для сервиса аутентификации
-n, --cluster-name [string] нет Имя кластера для получения kubeconfig. Не указывается, если необходимо получить kubeconfigs всех кластеров
--config-path [string] нет Путь до расположения конфигурационного файла shturval-login-plugin.yaml. По умолчанию для Linux: /root
-i, --insecure нет Признак проверки безопасности TLS соединения
-k, --kubeconfig [string] нет Путь расположения загруженных kubeconfigs. По умолчанию для Linux: /root/.kube/config
-p, --password [string] да, если нет конфигурационного файла или не задан пароль в нем, или файл загружен из интерфейса Пароль для подключения к серверу shturval-backend. Если пароль содержит специальные символы ($,<, >, *, &, ?, /,\ ), необходимо их экранировать с помощью одинарных кавычек. Например, --password='my$Password?'
-s, --server-url [string] да, если нет конфигурационного файла или не задан URL в нем URL shturval-backend сервера
--ttl [string] нет Время жизни токена. По умолчанию 24h
-u, --username [string] да, если нет конфигурационного файла или не задано имя пользователя в нем Имя пользователя для подключения к серверу shturval-backend
-v, --version нет Версия команды login

Обратите внимание! Данные параметров, которые вы укажете в команде kubectl shturval login будут иметь приоритет перед значениями этих же параметров конфигурационного файла shturval-login-plugin.yaml. При этом значения параметров конфигурационного файла не будут перезаписаны.

  1. Когда загружены kubeconfigs кластеров, вы можете управлять доступными кластерами, используя команды утилиты kubectl.

Если возникли ошибки доступа в кластер, вы можете найти способ решения проблемы в следующем разделе Действия в случае типовых ошибок доступа.

Примеры генерации конфигурационного файла

Для генерации конфигурационного файла запустите команду kubectl shturval login genconfig, в которую необходимо подставить свои значения параметров.

1. Команда генерации конфигурационного файла без заданных параметров (только с дефолтными значениями)
kubectl shturval login genconfig 
2. Команда генерации конфигурационного файла с параметрами учетной записи, URL shturval-backend сервера и без проверки безопасности TLS соединения
kubectl shturval login genconfig --username=ВВЕДИТЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ-ДЛЯ-ПОДКЛЮЧЕНИЯ --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ' --server-url=ВВЕДИТЕ-URL-shturval-backend-СЕРВЕРА --insecure=true --client-secret=ВВЕДИТЕ-Secret-КЛИЕНТА-СЕРВИСА-АУТЕНТИФИКАЦИИ

В --client-secret впишите значение ключа backend секрета auth-clients. Он находится в неймспейсе shturval-backend кластера управления. При отсутствии доступа к секрету, запросите данные у администратора платформы.

Скриншот

logingenconfig1

Ваш конфигурационный файл с именем shturval-login-plugin.yaml и заданными параметрами будет находится в директории домашнего каталога пользователя (например, для Linux /root).

3. Команда генерации конфигурационного файла с параметрами учетной записи, URL shturval-backend сервера, загрузкой конфигурационного файла в заданную директорию и без проверки TLS соединения
kubectl shturval login genconfig --username=ВВЕДИТЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ-ДЛЯ-ПОДКЛЮЧЕНИЯ --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ' --server-url=ВВЕДИТЕ-URL-shturval-backend-СЕРВЕРА --insecure=true --client-secret=ВВЕДИТЕ-Secret-КЛИЕНТА-СЕРВИСА-АУТЕНТИФИКАЦИИ --config-path=ВВЕДИТЕ-Путь-ДО-РАСПОЛОЖЕНИЯ-КОНФИГУРАЦИОННОГО-ФАЙЛА

В --client-secret впишите значение ключа backend секрета auth-clients. Он находится в неймспейсе shturval-backend кластера управления.

4. Команда генерации конфигурационного файла с параметрами учетной записи URL shturval-backend сервера и c проверкой безопасности TLS соединения (задан корневой сертификат)
kubectl shturval login genconfig --username=ВВЕДИТЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ-ДЛЯ-ПОДКЛЮЧЕНИЯ --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ' --server-url=ВВЕДИТЕ-URL-shturval-backend-СЕРВЕРА  --client-secret=ВВЕДИТЕ-Secret-КЛИЕНТА-СЕРВИСА-АУТЕНТИФИКАЦИИ --cacert=-----BEGIN CERTIFICATE-----Содержимое в Base64-----END CERTIFICATE-----
5. Команда генерации конфигурационного файла с проверкой безопасности TLS соединения (задан путь до корневого доверенного сертификата в параметре)
kubectl shturval login genconfig --username=ВВЕДИТЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ-ДЛЯ-ПОДКЛЮЧЕНИЯ --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ' --server-url=ВВЕДИТЕ-URL-shturval-backend-СЕРВЕРА  --client-secret=ВВЕДИТЕ-Secret-КЛИЕНТА-СЕРВИСА-АУТЕНТИФИКАЦИИ --cacert-file=ВВЕДИТЕ-ПУТЬ-ДО-КОРНЕВОГО-ДОВЕРЕННОГО-СЕРТИФИКАТА
6. Команда генерации конфигурационного файла с измененными по умолчанию параметрами идентификатора клиента для внешнего сервиса аутентификации, URL-адреса сервера аутентификации и директории для загрузки kubeconfigs
kubectl shturval login genconfig --kubeconfig=ВВЕДИТЕ-ПУТЬ-ДЛЯ-ЗАГРУЗКИ-kubeconfig --auth-url=keycloak.apps.ip-XX-XX-XXX-XX.shturval.link --client-id=ВВЕДИТЕ-ИДЕНТИФИКАТОР-КЛИЕНТА-ДЛЯ-ВНЕШНЕГО-СЕРВИСА-АУТЕНТИФИКАЦИИ

Примеры загрузки kubeconfigs доступных кластеров, когда сгенерирован конфигурационный файл

Для загрузки загрузки kubeconfigs доступных кластеров запустите команду kubectl shturval login, в которую необходимо подставить свои значения параметров.

1. Команда загрузки kubeconfigs доступных кластеров, если конфигурационный файл был сконфигурирован без заданных параметров (только с дефолтными значениями)
kubectl shturval login --username=ВВЕДИТЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ-ДЛЯ-ПОДКЛЮЧЕНИЯ --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ' --server-url=ВВЕДИТЕ-URL-shturval-backend-СЕРВЕРА --insecure=true --client-secret=ВВЕДИТЕ-Secret-КЛИЕНТА-СЕРВИСА-АУТЕНТИФИКАЦИИ
2. Команда загрузки kubeconfigs доступных кластеров, если конфигурационный файл был сконфигурирован без пароля пользователя, а остальные обязательные параметры для загрузки kubeconfigs доступных кластеров заданы в конфигурационном файле
kubectl shturval login --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ'
3. Команда загрузки kubeconfigs доступных кластеров, если конфигурационный файл включает все обязательные параметры для загрузки kubeconfigs доступных кластеров
kubectl shturval login 
Скриншот

shturvallogin

4. Команда загрузки kubeconfigs доступных кластеров, если в конфигурационном файле заданы все обязательные параметры для загрузки kubeconfigs доступных кластеров и необходимо выполнить загрузку kubeconfigs с доступом другой учетной записи
kubectl shturval login --username=ВВЕДИТЕ-ИМЯ-ПОЛЬЗОВАТЕЛЯ-ДЛЯ-ПОДКЛЮЧЕНИЯ --password='ВВЕДИТЕ-ПАРОЛЬ-ПОЛЬЗОВАТЕЛЯ'
×