Upload Packages
Платформа предоставляет инструмент командной строки violet
, который используется для загрузки пакетов, скачанных из Marketplace в Custom Portal, на платформу.
violet
поддерживает загрузку следующих типов пакетов:
- Operator
- Cluster Plugin
- Helm Chart
Если статус пакета в Cluster Plugins или OperatorHub отображается как Absent
, необходимо использовать этот инструмент для загрузки соответствующего пакета.
Процесс загрузки с помощью violet
включает следующие основные шаги:
- Распаковка и извлечение информации из пакета
- Отправка образов в реестр образов
- Создание ресурсов Artifact и ArtifactVersion на платформе
Содержание
Загрузка инструмента
Поддерживаемые операционные системы и архитектуры
- Linux, macOS, Windows
- Для Linux и macOS поддерживаются архитектуры x86 и ARM
Шаги для загрузки
- Войдите в Web Console глобального кластера и переключитесь в режим Administrator.
- Перейдите в раздел Marketplace > Upload Packages.
- Нажмите Download Packaging and Listing Tool.
- Выберите бинарный файл, соответствующий вашей операционной системе и архитектуре.
После загрузки установите инструмент на ваш сервер или ПК.
Для Linux или macOS
Для пользователей без root-прав:
# Linux x86
sudo mv -f violet_linux_amd64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
# Linux ARM
sudo mv -f violet_linux_arm64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
# macOS x86
sudo mv -f violet_darwin_amd64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
# macOS ARM
sudo mv -f violet_darwin_arm64 /usr/local/bin/violet && sudo chmod +x /usr/local/bin/violet
Для пользователей с root-правами:
# Linux x86
mv -f violet_linux_amd64 /usr/bin/violet && chmod +x /usr/bin/violet
# Linux ARM
mv -f violet_linux_arm64 /usr/bin/violet && chmod +x /usr/bin/violet
# macOS x86
mv -f violet_darwin_amd64 /usr/bin/violet && chmod +x /usr/bin/violet
# macOS ARM
mv -f violet_darwin_arm64 /usr/bin/violet && chmod +x /usr/bin/violet
Для Windows
-
Скачайте файл и переименуйте его в violet.exe
, либо используйте PowerShell для переименования:
# Windows x86
mv -Force violet_windows_amd64.exe violet.exe
-
Запустите инструмент в PowerShell.
Примечание: Если путь к инструменту не добавлен в переменные окружения, при выполнении команд необходимо указывать полный путь.
Предварительные требования
Требования к правам
- Необходимо предоставить действующую учетную запись пользователя платформы (имя пользователя и пароль).
- Учетная запись должна иметь свойство роли, установленное в
System
, а имя роли — platform-admin-system
.
Примечание: Если свойство роли вашей учетной записи установлено в Custom
, вы не сможете использовать этот инструмент.
Использование инструмента
Ниже приведены примеры типичных сценариев использования.
Просмотр информации о пакете
Перед загрузкой пакета используйте команду violet show
для предварительного просмотра его деталей.
violet show topolvm-operator.v2.3.0.tgz
Name: NativeStor
Type: bundle
Arch: [linux/amd64]
Version: 2.3.0
violet show topolvm-operator.v2.3.0.tgz --all
Name: NativeStor
Type: bundle
Arch: []
Version: 2.3.0
Artifact: harbor.demo.io/acp/topolvm-operator-bundle:v3.11.0
RelateImages: [harbor.demo.io/acp/topolvm-operator:v3.11.0 harbor.demo.io/acp/topolvm:v3.11.0 harbor.demo.io/3rdparty/k8scsi/csi-provisioner:v3.00 ...]
Загрузка Operator в несколько кластеров
Используйте параметр --clusters
для указания целевых кластеров.
violet push opensearch-operator.v3.14.2.tgz \
--platform-address https://192.168.0.1 \
--platform-username <user> \
--platform-password <password> \
--clusters region1,region2
Примечание: Если параметр --clusters
не указан, Operator загружается по умолчанию в глобальный кластер.
Загрузка Cluster Plugin
violet push plugins-cloudedge-v0.3.16-hybrid.tgz \
--platform-address https://192.168.0.1 \
--platform-username <user> \
--platform-password <password>
Примечание: При загрузке Cluster Plugin параметр --clusters
указывать не нужно, так как платформа автоматически распределит его согласно конфигурации affinity. Если параметр --clusters
указан, он будет проигнорирован.
Загрузка Helm Chart
Загрузите Helm Chart в репозиторий чартов:
violet push plugins-cloudedge-v0.3.16-hybrid.tgz \
--platform-address https://192.168.0.1 \
--platform-username <user> \
--platform-password <password>
Примечание: Helm Charts можно загружать только в репозиторий public-charts
по умолчанию, предоставляемый платформой.
Для получения дополнительной информации выполните:
Только отправка образов из всех пакетов в каталоге
Если из Marketplace скачано несколько пакетов, их можно поместить в один каталог и загрузить все сразу:
violet push <packages_dir_name> \
--skip-crs \
--platform-address https://192.168.0.1 \
--platform-username <user> \
--platform-password <password>
С флагом --skip-crs
отправляются только образы, при этом создание ресурсов Artifact
и ArtifactVersion
пропускается.
Это предотвращает преждевременное обновление Operator или Cluster Plugin в процессе обновления .
Только создание CR из всех пакетов в каталоге
Если из Marketplace скачано несколько пакетов, их можно поместить в один каталог и загрузить все сразу:
violet push <packages_dir_name> \
--skip-push \
--platform-address https://192.168.0.1 \
--platform-username <user> \
--platform-password <password>
С флагом --skip-push
создаются только ресурсы Artifact
и ArtifactVersion
, при этом образы не отправляются.