Deckhouse Kubernetes Platform в существующем кластере
Выберите редакцию Deckhouse Kubernetes Platform
Ниже сгенерированы рекомендованные настройки для установки Deckhouse Kubernetes Platform Community Edition:
config.yml
— файл первичной конфигурации кластера. Содержит параметры инсталлятора и начальные параметры кластера.
Обратите внимание:
- Так выделены параметры, обязательные для самостоятельного заполнения.
- Так выделены параметры, которые вы возможно захотите изменить.
- Если вы запускаете инсталлятор под Windows, то убедитесь, что кодировка создаваемых YAML-файлов конфигурации UTF-8 (либо удалите примечания на русском языке).
- Ознакомьтесь с разделом Если что-то пошло не так, возможно там описан случай для вашего провайдера. Обращайтесь к нему, если испытываете какие-то проблемы в процессе установки.
Создайте файл config.yml
.
# Настройки модуля deckhouse.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/modules/002-deckhouse/configuration.html
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: deckhouse
spec:
version: 1
enabled: true
settings:
bundle: Minimal
# Канал обновлений Deckhouse. Канал Early Access достаточно стабилен, его можно использовать в продуктивных окружениях.
# Если планируется использовать несколько кластеров, то рекомендуется установить на них разные каналы обновлений.
# Подробнее: https://deckhouse.ru/products/kubernetes-platform/documentation/v1/deckhouse-release-channels.html
releaseChannel: EarlyAccess
logLevel: Info
---
# Настройки первичной инициализации кластера Deckhouse.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/installing/configuration.html#initconfiguration
apiVersion: deckhouse.io/v1
kind: InitConfiguration
deckhouse:
imagesRepo: registry.deckhouse.ru/deckhouse/ce
registryDockerCfg: eyJhdXRocyI6IHsgInJlZ2lzdHJ5LmRlY2tob3VzZS5ydSI6IHt9fX0K
---
# Глобальные настройки Deckhouse.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/deckhouse-configure-global.html#%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D1%8B
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: global
spec:
version: 1
settings:
modules:
# Шаблон, который будет использоваться для составления адресов системных приложений в кластере.
# Например, Grafana для %s.example.com будет доступна на домене 'grafana.example.com'.
# Домен НЕ ДОЛЖЕН совпадать с указанным в параметре clusterDomain ресурса ClusterConfiguration.
# Можете изменить на свой сразу, либо следовать шагам руководства и сменить его после установки.
publicDomainTemplate: "%s.example.com"
# If necessary, specify in the customTolerationKeys array
# all the tains to which Deckhouse should have toleration.
# The following is an example for the case if you need Deckhouse and its components to be able
# to run on nodes that have taint SystemLoad.
# При необходимости, укажите в массиве customTolerationKeys все taint'ы
# к которым Deckhouse должен иметь toleration.
# Далее приведен пример для случая, если нужно чтобы Deckhouse и его компоненты смогли запускаться
# на узлах, имеющих taint SystemLoad
# Возможно, захотите изменить.
placement:
customTolerationKeys:
- SystemLoad
---
# Настройки модуля user-authn.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/modules/101-cert-manager/configuration.html
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: cert-manager
spec:
version: 1
enabled: true
---
# Настройки модуля documentation.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/modules/810-documentation/configuration.html
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: documentation
spec:
version: 1
enabled: true
Введите лицензионный ключ
Нет ключа?
Ниже сгенерированы рекомендованные настройки для установки Deckhouse Kubernetes Platform Enterprise Edition:
config.yml
— файл первичной конфигурации кластера. Содержит параметры инсталлятора и начальные параметры кластера.
Обратите внимание:
- Так выделены параметры, обязательные для самостоятельного заполнения.
- Так выделены параметры, которые вы возможно захотите изменить.
- Если вы запускаете инсталлятор под Windows, то убедитесь, что кодировка создаваемых YAML-файлов конфигурации UTF-8 (либо удалите примечания на русском языке).
- Ознакомьтесь с разделом Если что-то пошло не так, возможно там описан случай для вашего провайдера. Обращайтесь к нему, если испытываете какие-то проблемы в процессе установки.
Создайте файл config.yml
.
# Настройки первичной инициализации кластера Deckhouse.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/installing/configuration.html#initconfiguration
apiVersion: deckhouse.io/v1
kind: InitConfiguration
deckhouse:
# Адрес Docker registry с образами Deckhouse.
imagesRepo: registry.deckhouse.ru/deckhouse/ee
# Строка с ключом для доступа к Docker registry (сгенерировано автоматически для вашего токена доступа).
registryDockerCfg: <YOUR_ACCESS_STRING_IS_HERE>
---
# Настройки модуля deckhouse.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/modules/002-deckhouse/configuration.html
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: deckhouse
spec:
version: 1
enabled: true
settings:
bundle: Minimal
releaseChannel: Stable
logLevel: Info
---
# Глобальные настройки Deckhouse.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/deckhouse-configure-global.html#%D0%BF%D0%B0%D1%80%D0%B0%D0%BC%D0%B5%D1%82%D1%80%D1%8B
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: global
spec:
version: 1
settings:
modules:
# Шаблон, который будет использоваться для составления адресов системных приложений в кластере.
# Например, Grafana для %s.example.com будет доступна на домене 'grafana.example.com'.
# Домен НЕ ДОЛЖЕН совпадать с указанным в параметре clusterDomain ресурса ClusterConfiguration.
# Можете изменить на свой сразу, либо следовать шагам руководства и сменить его после установки.
publicDomainTemplate: "%s.example.com"
# If necessary, specify in the customTolerationKeys array
# all the tains to which Deckhouse should have toleration.
# The following is an example for the case if you need Deckhouse and its components to be able
# to run on nodes that have taint SystemLoad.
# При необходимости, укажите в массиве customTolerationKeys все taint'ы
# к которым Deckhouse должен иметь toleration.
# Далее приведен пример для случая, если нужно чтобы Deckhouse и его компоненты смогли запускаться
# на узлах, имеющих taint SystemLoad
# Возможно, захотите изменить.
placement:
customTolerationKeys:
- SystemLoad
---
# Настройки модуля user-authn.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/modules/101-cert-manager/configuration.html
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: cert-manager
spec:
version: 1
enabled: true
---
# Настройки модуля documentation.
# https://deckhouse.ru/products/kubernetes-platform/documentation/v1/modules/810-documentation/configuration.html
apiVersion: deckhouse.io/v1alpha1
kind: ModuleConfig
metadata:
name: documentation
spec:
version: 1
enabled: true
Для установки Deckhouse Kubernetes Platform используется Docker-образ, в который необходимо передать конфигурационные файлы.
Запустите установщик на персональном компьютере.
docker run --pull=always -it -v "$PWD/config.yml:/config.yml" \
-v "$HOME/.kube/config:/kubeconfig" registry.deckhouse.ru/deckhouse/ce/install:stable bash
docker run --pull=always -it -v "%cd%\config.yml:/config.yml" -v "%userprofile%\.kube\config:/kubeconfig" registry.deckhouse.ru/deckhouse/ce/install:stable bash -c "chmod 400 /tmp/.ssh/id_rsa; bash"
Примечание:
- В файл
/kubeconfig
контейнера необходимо смонтировать файл конфигурации kubectl с доступом к Kubernetes API. В руководстве предполагается, что он находится в файле.kube/config
домашнего каталога пользователя.
Внутри контейнера выполните команду:
dhctl bootstrap-phase install-deckhouse --kubeconfig=/kubeconfig --config=/config.yml
Процесс установки может занять от 5 до 30 минут, в зависимости от качества соединения.
По окончании установки инсталлятор выведет IP-адрес master-узла (он вам потребуется далее). Пример вывода:
...
┌ 🎈 ~ Common: Kubernetes Master Node addresses for SSH
│ cloud-demo-master-0 | ssh ubuntu@1.2.3.4
└ 🎈 ~ Common: Kubernetes Master Node addresses for SSH (0.00 seconds)
Почти все готово для полноценной работы Deckhouse Kubernetes Platform!
Если что-то пошло не так
Кластеры некоторых провайдеров могут требовать дополнительных действий до или после установки Deckhouse.
Ниже приведены частые проблемы и способы их решения. Если вы столкнулись с другими особенностями установки Deckhouse в существующем кластере, пожалуйста, опишите ваш опыт в issue.
Для установки Deckhouse Kubernetes Platform используется Docker-образ, в который необходимо передать конфигурационные файлы.
Запустите установщик на персональном компьютере.
echo <LICENSE_TOKEN> | docker login -u license-token --password-stdin registry.deckhouse.ru
docker run --pull=always -it -v "$PWD/config.yml:/config.yml" \
-v "$HOME/.kube/config:/kubeconfig" registry.deckhouse.ru/deckhouse/ee/install:stable bash
Авторизуйтесь на персональном компьютере в container image registry, введя лицензионный ключ на запрос пароля:
docker login -u license-token registry.deckhouse.ru
Запустите контейнер с установщиком:
docker run --pull=always -it -v "%cd%\config.yml:/config.yml" -v "%userprofile%\.kube\config:/kubeconfig" registry.deckhouse.ru/deckhouse/ee/install:stable bash -c "chmod 400 /tmp/.ssh/id_rsa; bash"
Примечание:
- В файл
/kubeconfig
контейнера необходимо смонтировать файл конфигурации kubectl с доступом к Kubernetes API. В руководстве предполагается, что он находится в файле.kube/config
домашнего каталога пользователя.
Внутри контейнера выполните команду:
dhctl bootstrap-phase install-deckhouse --kubeconfig=/kubeconfig --config=/config.yml
Процесс установки может занять от 5 до 30 минут, в зависимости от качества соединения.
По окончании установки инсталлятор выведет IP-адрес master-узла (он вам потребуется далее). Пример вывода:
...
┌ 🎈 ~ Common: Kubernetes Master Node addresses for SSH
│ cloud-demo-master-0 | ssh ubuntu@1.2.3.4
└ 🎈 ~ Common: Kubernetes Master Node addresses for SSH (0.00 seconds)
Почти все готово для полноценной работы Deckhouse Kubernetes Platform!
Если что-то пошло не так
Кластеры некоторых провайдеров могут требовать дополнительных действий до или после установки Deckhouse.
Ниже приведены частые проблемы и способы их решения. Если вы столкнулись с другими особенностями установки Deckhouse в существующем кластере, пожалуйста, опишите ваш опыт в issue.