Deckhouse CLI (d8) — интерфейс командной строки для работы с продуктами экосистемы Deckhouse. Он объединяет команды для работы с Kubernetes, администрирования Deckhouse Kubernetes Platform, доставки приложений, копирования образов, резервного копирования, сбора диагностической информации, виртуализации, работы с пользовательскими данными и других задач.

Начиная с релиза 1.59, d8 автоматически устанавливается на все узлы кластера DKP. Утилиту также можно установить на отдельную машину администратора.

Основные группы команд

Группы команд d8 delivery-kit и d8 mirror недоступны для редакций Community Edition (CE) и Basic Edition (BE).

Команды d8 сгруппированы по назначению:

Команды Назначение
d8 k Команды для управления кластером (аналогично kubectl).
d8 system Команды для работы с системными настройками платформы, её конфигурацией, модулями, очередями, пакетами и системными логами.
d8 status Команда для получения текущего состояния платформы.
d8 backup Команды для создания резервных копий ключевых данных кластера и диагностических выгрузок.
d8 mirror Команды для копирования образов компонентов платформы в локальную файловую систему или стороннее хранилище образов контейнеров.
d8 delivery-kit Команды для сборки, публикации, планирования и развёртывания приложений, а также для работы с Helm, хранилищем образов контейнеров, SBOM и связанными операциями.
d8 data Команды для управления данными, а также их экспорта и импорта.
d8 v Команды для работы с виртуальными машинами, созданными в кластере.
d8 user Команды для управления пользователями Deckhouse.
d8 stronghold Команды для управления жизненным циклом секретов (модуль stronghold).
d8 network Команды для выполнения сетевых операций в экосистеме Deckhouse, включая миграцию CNI.
d8 completion Команды для генерации shell completion.
d8 tools Вспомогательные утилиты.
d8 help Встроенная справка.

Как установить Deckhouse CLI

Установить Deckhouse CLI возможно двумя способами:

  • Начиная с версии 0.10 доступна установка с помощью trdl. Такой способ позволяет непрерывно получать свежие версии утилиты со всеми доработками и исправлениями.

    Обратите внимание, что для установки через trdl необходим доступ в Интернет к tuf-репозиторию с утилитой. В кластере с закрытым окружением такой способ работать не будет!

  • Скачав исполняемый файл и установив его вручную.

Установка с помощью trdl

Начиная с версии 0.10 Deckhouse CLI можно установить с помощью trdl.

Если у вас установлена версия ниже 0.10, то её необходимо предварительно удалить.

Если вам нужно установить одну из версий ниже 0.10, воспользуйтесь устаревшим способом установки.

  1. Установите клиент trdl.

  2. Добавьте репозиторий Deckhouse CLI в trdl:

    URL=https://deckhouse.ru/downloads/deckhouse-cli-trdl
    ROOT_VERSION=1
    ROOT_SHA512=343bd5f0d8811254e5f0b6fe292372a7b7eda08d276ff255229200f84e58a8151ab2729df3515cb11372dc3899c70df172a4e54c8a596a73d67ae790466a0491
    REPO=d8
    
    trdl add $REPO $URL $ROOT_VERSION $ROOT_SHA512
    
  3. Установите последний стабильный выпуск утилиты d8 и проверьте ее работоспособность:

    . $(trdl use d8 0 stable) && d8 --version
    

Если вы не хотите вызывать . $(trdl use d8 0 stable) перед каждым использованием Deckhouse CLI, добавьте строку alias d8='trdl exec d8 0 stable -- "$@"' в RC-файл вашей командной оболочки.

Готово, вы установили Deckhouse CLI.

Установка исполняемого файла

Linux x86-64 macOS x86-64 macOS ARM64 Windows

Команды ниже актуальны для Deckhouse CLI версии v0.29.14, поставляемой с Deckhouse Kubernetes Platform. Последняя версия Deckhouse CLI доступна на GitHub. Узнать используемую версию Deckhouse CLI можно при помощи команды d8 --version.

  1. Скачайте архив для Linux x86-64 удобным для вас способом:

    • Из вашего кластера:

      1. Включите модуль deckhouse-tools;
      2. Откройте веб-интерфейс со ссылками на скачивание. Адрес веб-интерфейса формируется в соответствии с шаблоном publicDomainTemplate глобального параметра конфигурации Deckhouse (ключ %s заменяется на tools).

        Например, если publicDomainTemplate установлен как %s-kube.company.my, веб-интерфейс будет доступен по адресу tools-kube.company.my;

      3. Кликните по кнопке скачивания Deckhouse CLI для Linux.
    • С сайта Deckhouse:

      curl -LO https://deckhouse.ru/downloads/deckhouse-cli/v0.29.14/d8-v0.29.14-linux-amd64.tar.gz
      
  2. Распакуйте архив:

    tar -xvf "d8-v0.29.14-linux-amd64.tar.gz" "linux-amd64/bin/d8"
    
  3. Переместите файл d8 в каталог, находящийся в списке в переменной окружения PATH операционной системы (например, /usr/local/bin/):

    sudo mv "linux-amd64/bin/d8" /usr/local/bin/
    

    Переменная окружения PATH содержит список каталогов, в которых ОС будет искать исполняемый файл при вызове команды из терминала. Просмотреть ее можно командой echo $PATH.

  4. Проверьте, что утилита работает:

    d8 help
    

Готово, вы установили Deckhouse CLI.

Команды ниже актуальны для Deckhouse CLI версии v0.29.14, поставляемой с Deckhouse Kubernetes Platform. Последняя версия Deckhouse CLI доступна на GitHub. Узнать используемую версию Deckhouse CLI можно при помощи команды d8 --version.

  1. Скачайте архив для macOS x86-64 удобным для вас способом:

    • Из вашего кластера:

      1. Включите модуль deckhouse-tools;
      2. Откройте веб-интерфейс со ссылками на скачивание. Адрес веб-интерфейса формируется в соответствии с шаблоном publicDomainTemplate глобального параметра конфигурации Deckhouse (ключ %s заменяется на tools).

        Например, если publicDomainTemplate установлен как %s-kube.company.my, веб-интерфейс будет доступен по адресу tools-kube.company.my;

      3. Кликните по кнопке скачивания Deckhouse CLI для macOS.
    • С сайта Deckhouse:

      curl -LO https://deckhouse.ru/downloads/deckhouse-cli/v0.29.14/d8-v0.29.14-darwin-amd64.tar.gz
      
  2. Распакуйте архив:

    tar -xvf "d8-v0.29.14-darwin-amd64.tar.gz" "darwin-amd64/bin/d8"
    
  3. Переместите файл d8 в каталог, находящийся в списке в переменной окружения PATH операционной системы (например, /usr/local/bin/):

    sudo mv "darwin-amd64/bin/d8" /usr/local/bin/
    

    Переменная окружения PATH содержит список каталогов, в которых ОС будет искать исполняемый файл при вызове команды из терминала. Просмотреть ее можно командой echo $PATH.

  4. Проверьте, что утилита работает:

    d8 help
    

Готово, вы установили Deckhouse CLI.

Команды ниже актуальны для Deckhouse CLI версии v0.29.14, поставляемой с Deckhouse Kubernetes Platform. Последняя версия Deckhouse CLI доступна на GitHub. Узнать используемую версию Deckhouse CLI можно при помощи команды d8 --version.

  1. Скачайте архив для macOS ARM64 удобным для вас способом:

    • Из вашего кластера:

      1. Включите модуль deckhouse-tools;
      2. Откройте веб-интерфейс со ссылками на скачивание. Адрес веб-интерфейса формируется в соответствии с шаблоном publicDomainTemplate глобального параметра конфигурации Deckhouse (ключ %s заменяется на tools).

        Например, если publicDomainTemplate установлен как %s-kube.company.my, веб-интерфейс будет доступен по адресу tools-kube.company.my;

      3. Кликните по кнопке скачивания Deckhouse CLI для macOS.
    • С сайта Deckhouse:

      curl -LO https://deckhouse.ru/downloads/deckhouse-cli/v0.29.14/d8-v0.29.14-darwin-arm64.tar.gz
      
  2. Распакуйте архив:

    tar -xvf "d8-v0.29.14-darwin-arm64.tar.gz" "darwin-arm64/bin/d8"
    
  3. Переместите файл d8 в каталог, находящийся в списке в переменной окружения PATH операционной системы (например, /usr/local/bin/):

    sudo mv "darwin-arm64/bin/d8" /usr/local/bin/
    

    Переменная окружения PATH содержит список каталогов, в которых ОС будет искать исполняемый файл при вызове команды из терминала. Просмотреть ее можно командой echo $PATH.

  4. Проверьте, что утилита работает:

    d8 help
    

Готово, вы установили Deckhouse CLI.

Команды ниже актуальны для Deckhouse CLI версии v0.29.14, поставляемой с Deckhouse Kubernetes Platform. Последняя версия Deckhouse CLI доступна на GitHub. Узнать используемую версию Deckhouse CLI можно при помощи команды d8 --version.

  1. Скачайте архив для Windows x86-64 удобным для вас способом.

    • Из вашего кластера:

      1. Включите модуль deckhouse-tools;
      2. Откройте веб-интерфейс со ссылками на скачивание. Адрес веб-интерфейса формируется в соответствии с шаблоном publicDomainTemplate глобального параметра конфигурации Deckhouse (ключ %s заменяется на tools).

        Например, если publicDomainTemplate установлен как %s-kube.company.my, веб-интерфейс будет доступен по адресу tools-kube.company.my;

      3. Кликните по кнопке скачивания Deckhouse CLI для Windows.
    • С сайта Deckhouse, по ссылке: Windows x86-64.

  2. Распакуйте архив, переместите файл d8.exe в выбранный вами каталог и добавьте каталог в переменную PATH операционной системы.
  3. Разблокируйте файл d8.exe, например, следующим способом:
    • Щелкните правой кнопкой мыши на файле и выберите Свойства в контекстном меню.
    • В окне Свойства убедитесь, что находитесь на вкладке Общие.
    • Внизу вкладки Общие вы можете увидеть раздел Безопасность с сообщением о блокировке файла.
    • Установите флажок Разблокировать или нажмите кнопку Разблокировать, затем нажмите Применить и ОК, чтобы сохранить изменения.
  4. Проверьте, что утилита работает:

    d8 help
    
  5. Включите автодополнение в PowerShell, выполнив следующую команду:

    d8 completion powershell >> $PROFILE
    

Готово, вы установили Deckhouse CLI.