Кластер Kubernetes с помощью Deckhouse можно развернуть в закрытом окружении, из которого нет доступа в интернет. Для этого предварительно скачайте на компьютере с доступом в интернет образы платформы Deckhouse и загрузите их в локальный реестр образов. В рамках статьи в качестве локального реестра образов выбран Harbor. Подробнее о настройке и установке Harbor читайте в статье «Установка Harbor».
Загрузка образов Deckhouse состоит из трёх этапов:
Шаг 1: Создание нового проекта в Harbor
- Войдите в web-интерфейс Harbor. В главном левом меню перейдите в раздел Projects. Чтобы создать новый проект, нажмите +New project.
- Введите имя проекта строчными буквами, например, images. Укажите, должен ли проект быть общедоступным. Нажмите OK.
Шаг 2: Скачивание образов Deckhouse
- На компьютере с доступом в интернет загрузите скрипт для скачивания образов. Зайдите в терминал и выполните следующую команду:
curl -fsSL -o d8-pull.sh https://raw.githubusercontent.com/deckhouse/deckhouse/main/tools/release/d8-pull.sh
chmod 700 d8-pull.sh
Обратите внимание, на хосте должны быть установлены Docker, crane и jq.
Пример вызова команды скачивания образов для Deckhouse Platform Enterprise Edition:
./d8-pull.sh --license YOUR_DECKHOUSE_LICENSE_KEY --output-dir /your/output-dir/
Пример вызова команды скачивания образов для Deckhouse Platform Community Edition:
./d8-pull.sh --edition ce --output-dir /your/output-dir/
Дождитесь окончания скачивания образов. При возникновении ошибок загрузки образов, запустите скрипт повторно.
- На компьютере с доступом в интернет загрузите скрипт для скачивания образов в локальный реестр. Для этого выполните команду:
curl -fsSL -o d8-push.sh https://raw.githubusercontent.com/deckhouse/deckhouse/main/tools/release/d8-push.sh
chmod 700 d8-push.sh
- Загрузите директорию с образами и скрипт для загрузки образов, на хост, с которого есть доступ до приватного реестра образов.
Шаг 3: Загрузка образов Deckhouse в Harbor
- На компьютере, где будет производиться установка, перейдите в директорию с образами и скриптом для загрузки образов. На хосте должен быть установлен crane.
- Чтобы загрузить образы Deckhouse в приватный реестр, выполните следующую команду:
./d8-push.sh --source-dir /your/source-dir/ --path hostname:port/path/deckhouse --username username --password password
где:
/your/source-dir/
— путь до директории с образами;hostname
— домен FQDN или ip адрес, по которому будет доступен реестр, в рамках статьи registry.example.com;port
— номер порта для подключения;path
— путь до созданного проекта в Harbor, в рамках статьи images;username
— имя пользователя, обладающего правами на загрузку образов в проект;password
— пароль для пользователя в username.
Обратите внимание, если локальный реестр доступен только по протоколу http, необходимо указать дополнительный ключ ‑‑insecure
.
./d8-push.sh --source-dir /your/source-dir/ --path hostname:port/path/deckhouse --username username --password password --insecure
Пример заполнения параметров команды для загрузки образов Deckhouse в рамках статьи
./d8-push.sh --source-dir/your/source-dir/ --path registry.example.com:443/images/deckhouse --usernameadmin --passwordHarbor12345 где:
|
- Дождитесь окончания работы скрипта загрузки образов Deckhouse.