Удаление#
При установке на ВМ#
С помощью ansible#
Для удаления EVTA выполнить команду:
ansible-playbook -i inventories/<ID>/inventory reactive_stream_adapter_vm.yml -t uninstall --ask-vault-pass
, где ID — имя недавно созданного inventory.
Удаление EVTA будет производиться со всех серверов из inventory.
С помощью Jenkins#
Для удаления компонента EVTA необходимо запустить Jenkins job reactive_stream_adapter_vm с выбором playbook reactive_stream_adapter.yml c тегом uninstall.
Настраиваемые параметры reactive_stream_adapter_vm:
job_config_renew— отвечает за обновление Jenkins Job. При установке приложения должен быть выключен (false). Для обновления текущих параметров и сохранения значений по умолчанию должен быть включен (true);inventory— имя inventory для установки;nexusUrl— ссылка на конфигурационный дистрибутив (при отсутствии — оставить поле пустым);nexusDistribUrl— ссылка на дистрибутив reactive_stream_adapter;playbook— необходимый сценарий установки, где:reactive_stream_adapter_vm.yml — запуск EVTA на ВМ;
reactive_stream_adapter_vm_system_service.yml — создание системных сервисов EVTA;
reactive_stream_adapter_vm_user_service.yml — создание пользовательских сервисов EVTA;
reencrypt_password.yml — перешифрование паролей.
tags— список тегов. При пустом значении выполняется полная установка компонента:run_only — при указании появляется выбор адаптеров (для дальнейших действий) без указания — на все адаптеры;
adapter_already_installed — выполняется установка и запуск EVTA из конфигурационного дистрибутива без выкачивания дистрибутива EVTA из
nexusDistribUrl;backup — создание backup;
backup_remove — удаление backup;
backup_restore — восстановление из backup;
distribute — распаковка дистрибутива
nexusDistribUrl;install — запуск блока установки;
restart — перезапуск сервиса;
start — запуск сервиса;
status — статус установки сервиса; также используется для вывода результата обращения к endpoint дискаверинга EVTA (информация в логах);
stop — остановка сервиса;
uninstall — удаление сервиса.
adapterList— выбор адаптера (при наличии тега run_only);select_all_hosts— выполнение playbook на всех серверах из выбранного inventory;only_on_host— выполнение playbook на выбранных серверах;jenkins_slave— выбор Jenkins Slave;jdk_tool— наименование Jenkins Tool с необходимой версией JDK. Конкретное значение необходимо получить у администратора Jenkins;ansible_branch— ветка скриптов развертывания;ansible_version— наименование Jenkins Tool с необходимой версией Ansible. Конкретное значение необходимо получить у администратора Jenkins;nexus_user_cred— Jenkins Username with Password credential ID для выкачивания дистрибутива. При заданииsecman_url— полный путь в HashiCorp Vault до имени пользователя и пароля. Например:{Jenkins *Vault App Role credential ID для получения секретов из HashiCorp Vault}|path/to/nexus:{user},{password}vault_cred— Jenkins secret file credential ID со строкой для расшифровки паролей (ansible vault). При заданииsecman_url— полный путь в HashiCorp Vault до пароля. Например:{Jenkins *Vault App Role credential* ID_1}|/path/to/vault:{password_1}, {Jenkins *Vault App Role credential* ID_2}|/path/to/vault:{password_2}В качестве пароля можно использовать не строку, а файл в base64 формате с ключом секрета, заканчивающимся на Base64. Например, myVaultBase64.server_ssh_cred— Jenkins ssh key Credential ID с ssh ключом для подключения к конечным серверам. Чтобы получить ssh_username, ssh_key, ssh_key_passsphrase для подключения к серверам из HashiCorp Vault, необходимо заполнить параметр secman_url в формате:JenkinsCredID|SecManPath:SecManKeys|SecManParams, где:JenkinsСredID — Jenkins Vault App Role Credential ID, содержащий реквизиты для подключения к HashiCorp Vault;
SecManPath — путь к секретам в HashiCorp Vault;
SecManKeys — имена полей для ssh_username, ssh_key, ssh_key_passphrase в HashiCorp Vault (через запятую). Ssh_key_passphrase не указывается, если у ssh ключа нет пароля. В секрете, в значении ssh_key обязательно оставить перенос строки после текста с приватным ключом;
SecManParams — параметры подключения к HashiCorp Vault (через точку с запятой). Если данные параметры по умолчанию, то пропускаются вместе с «|» (в качестве ключа можно использовать не строку, а файл в base64 формате и секрет в HashiCorp Vault с именем, оканчивающимся на «Base64», например: myPrivateKeyBase64). Примеры:
SecManAppRoleCred|/CI01994970_CI02618129_ES/A/DEV/APP/JEN/KV/vault:ssh_username,ssh_key
SecManAppRoleCred|/CI01994970_CI02618129_ES/A/DEV/APP/JEN/KV/vault:ssh_username,ssh_key,ssh_key_passphrase
SecManAppRoleCred|/CI01994970_CI02618129_ES/A/DEV/APP/JEN/KV/vault:ssh_username,ssh_key,ssh_key_passphrase|engineVersion:2.
secman_url— URL для подключения к HashiCorp Vault;ssl_verify— проверка, являются ли сертификаты HashiCorp Vault/Nexus доверенными (по умолчанию включен,true);second_hand_approve— подтверждение запуска другим администратором (контроль «второй рукой»; по умолчанию включен,true). При активации параметра одному администратору будет недоступна возможность запуска Jenkins Job без подтверждения со стороны другого администратора. При выключении параметра в логах появится информация об отключении данной проверки;inventories_repo— репозиторий с inventory;inventories_branch— ветка репозитория;inventories_path— путь до inventories от корня репозитория;cleanws— параметр очистки Jenkins workspace (по умолчанию включен,true).
При установке в облачной среде#
С помощью ansible#
Удаление EVTA производится из папки Ansible скриптов развертывания командой:
ansible-playbook reactive_stream_adapter.yml -i inventories/<ID>/inventory -t uninstall --ask-vault-pass
, где ID — имя недавно созданного inventory.
Результатом исполнения команды будет полное удаление установленного EVTA и всех сопутствующих объектов, за исключением service entry. При необходимости можно удалить эти объекты вручную.
С помощью Jenkins#
Для удаления компонента EVTA необходимо запустить Jenkins job reactive_stream_adapter_os с выбором playbook reactive_stream_adapter.yml c тегом uninstall.
Настраиваемые параметры reactive_stream_adapter_os:
job_config_renew— отвечает за обновление Jenkins Job. При установке приложения должен быть выключен (false). Для обновления текущих параметров и сохранения значений по умолчанию должен быть включен (true);inventory— имя inventory для установки;nexusUrl— ссылка на конфигурационный дистрибутив (при отсутствии – оставить поле пустым);nexusHelmUrl— ссылка на дистрибутивEVTA-cfg-[version]-distrib.zipустановки компонента в облачной среде. Для скачивания дистрибутива используется параметрnexus_user_cred;playbook— необходимый сценарий установки, где:reactive_stream_adapter.yml — запуск EVTA в облачной среде.
tags— список тегов. При пустом значении выполняется установка или обновление EVTA:helm_history — просмотр истории развертывания EVTA;
helm_rollback — откат EVTA на REVISION, выбранную в параметре
helm_rollback_revision;status — статус установки сервиса; также используется для вывода результата обращения к endpoint дискаверинга EVTA (информация в логах);
uninstall — удаление сервиса.
helm_rollback_revision— выбор номера REVISION при выборе тега helm_rollback;jenkins_slave— выбор Jenkins Slave;ansible_branch— ветка скриптов развертывания;ansible_version— наименование Jenkins Tool с необходимой версией Ansible. Конкретное значение необходимо получить у администратора Jenkins;nexus_user_cred— Jenkins username with password credential ID для выкачивания дистрибутива. При заданииsecman_url— полный путь в HashiCorp Vault до имени пользователя и пароля. Например:{Jenkins *Vault App Role credential* ID для получения секретов из HashiCorp Vault}|path/to/nexus:{user},{password}vault_cred— Jenkins secret file credential ID со строкой для расшифровки паролей (ansible vault). При заданииsecman_url— полный путь в HashiCorp Vault до пароля. Например:{Jenkins *Vault App Role credential* ID_1}|/path/to/vault:{password_1}, {Jenkins *Vault App Role credential* ID_2}|/path/to/vault:{password_2}В качестве пароля можно использовать не строку, а файл в base64 формате с ключом секрета, заканчивающимся на Base64. Например, myVaultBase64;secman_url— URL для подключения к HashiCorp Vault;jdk_tool— наименование Jenkins Tool с необходимой версией JDK. Конкретное значение необходимо получить у администратора Jenkins;ssl_verify— проверка, являются ли сертификаты HashiCorp Vault/Nexus доверенными (по умолчанию включен,true);second_hand_approve— подтверждение запуска другим администратором (контроль «второй рукой»; по умолчанию включен,true). При активации параметра одному администратору будет недоступна возможность запуска Jenkins Job без подтверждения со стороны другого администратора. При выключении параметра в логах появится информация об отключении данной проверки;ocCliVersion— версия утилиты oc;helmCliVersion— версия helm;inventories_repo— репозиторий с inventory;inventories_branch— ветка репозитория;inventories_path— путь до inventories от корня репозитория;cleanws— параметр очистки Jenkins workspace (по умолчанию включен,true).