Deckhouse CLI — это интерфейс командной строки для работы с кластерами от Deckhouse Kubernetes Platform (DKP). Начиная с релиза 1.59, интерфейс автоматически устанавливается на все узлы кластера. Утилиту можно также установить на любую машину и использовать для работы с кластерами без DKP.

В командной строке к утилите можно обратиться как d8. Все команды сгруппированы по функциям:

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

  • d8 k — команды, которые в кластерах Kubernetes выполняет kubectl.
    Например, в кластере можно выполнить kubectl get pods как d8 k get pods.
  • d8 d — команды, отвечающие за доставку по аналогии с утилитой werf.
    Например, вместо werf plan --repo registry.deckhouse.io можно выполнить d8 d plan --repo registry.deckhouse.io.

  • d8 mirror — команды, которые позволяют скопировать образы дистрибутива DKP в частный container registry (ранее для этого использовалась утилита dhctl mirror). Например, можно выполнить d8 mirror pull -l <LICENSE> <TAR-BUNDLE-PATH> вместо dhctl mirror --license <LICENSE> --images-bundle-path <TAR-BUNDLE-PATH>.

    Сценарии использования:

  • d8 v — команды, отвечающие за работу с виртуальными машинами, созданными Deckhouse Virtualization Platform.
    Например, команда d8 virtualization console подключает к консоли виртуальной машины.

    Больше команд для виртуализации...
    • d8 v console подключает к консоли виртуальной машины.
    • d8 v port-forward перенаправляет локальные порты на виртуальную машину.
    • d8 v scp использует клиент SCP для работы с файлами на виртуальной машине.
    • d8 v ssh подключает к виртуальной машине по SSH.
    • d8 v vnc подключает к виртуальной машине по VNC.

Как установить 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

  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//d8--linux-amd64.tar.gz
      
  2. Распакуйте архив:

    tar -xvf "d8--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.

  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//d8--darwin-amd64.tar.gz
      
  2. Распакуйте архив:

    tar -xvf "d8--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.

  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//d8--darwin-arm64.tar.gz
      
  2. Распакуйте архив:

    tar -xvf "d8--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.

  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.