Руководство по установке#

Установка программного продукта Platform V DevOps Tools (DOT) представляет собой индивидуальную установку входящих (в зависимости от поставки) в его состав программных компонентов:

  1. CDJE Deploy Tools

При этом каждый компонент устанавливается независимо друг от друга в соответствии с собственным документом «Руководство по установке» для каждого из компонентов.

В состав поставки продукта Platform V DevOps Tools включены:

  • owned-distrib.zip – дистрибутив продукта производства SberTech (АО «СберТех»);

  • party-distrib.zip – внешние opensource jar библиотеки.

Перед началом установки составных компонентов продукта DevOps Tools необходимо дополнить дистрибутив продукта внешними jar библиотеками с помощью Pipeline дополнения продукта зависимостями (solution-merger).

По результатам работы solution-merger в репозитории Nexus (указанном в файле настроек solution-merger – merger.yml) будет опубликован дистрибутив продукта Platform V DevOps Tools (owned часть которого будет обогащена party частью), который необходимо загрузить на локальную машину, после чего распаковать, и разместить компоненты продукта в соответствующих репозиториях GitLab/Bitbucket и Nexus.

Необходимо перенести содержимое архивов со всеми лежащими в них ветками и коммитами, для этого требуется перейти в архив с соответствующим артефактом и выполнить следующий перечень команд:
git remote add solution-target ssh://<git_repo>
git push --all solution-target
git push --tags solution-target
При первичном размещении артефактов Solution в репозиториях (созданных в GitLab/Bitbucket), данные репозитории должны быть пустыми. При обновлении Solution (когда в репозиториях уже присутствует предыдущая версия артефактов Solution) очищать данные репозитории не требуется.

Репозитории в GitLab/Bitbucket и Nexus необходимо предварительно подготовить согласно таблице ниже:

Все репозитории (GitLab/Bitbucket) должны быть созданы в одной инсталляции GitLab/Bitbucket и в одной проектной области.

Название артефакта

Репозиторий для размещения

Пример названия репозитория

Версия

1.

DeployTools.pipeline
pipeline-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

pipeline

release/D-01.045.080

2.

DeployTools.scripts
scripts-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

scripts

release/D-01.000.01-613
  ◦ commit 742d37d9dd4

3.

DeployTools.service
service-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

pipeline/service
(ветка в pipeline)

/service

4.

DeployTools.service_release
release-service-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

pipeline/release_service
(ветка в pipeline)

release_service/D-01.223.001-3699

5.

DeployTools.service_configuration
service-configuration-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

pipeline/service_configuration
(ветка в pipeline)

/service_configuration

6.

DeployTools.orch_job
orch-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

release_orch
(ветка в pipeline)

release_orch/D-01.026.013-3249

7.

Installer.Migration
CI01027846_AS_EFS_Installer.Migration-D-02.001.00-number-distrib.zip

Nexus

Installer-Migration

D-02.001.00-402

8.

Installer.Common
Installer.Common-D-xy.abc.de-h-distrib.zip

Nexus

Installer-Common

D-02.001.00-3

9.

version.conf
scripts-version-CDJE-x.y.z-distrib.zip

GitLab/Bitbucket

versionDeployTools.scripts

release/artifact-versions-1.6.1

10.

DOT-doc-x.y.z-distrib.zip

Nexus

documentation

1.6.1

* Также относится и к входящим в состав артефакта элементам.

Системные требования#

Рекомендуемые настройки безопасности окружения#

Настройки безопасности окружения и перечень платформенных (дополнительных внешних) продуктов, используемых для установки, настройки и контроля в конечной информационной системе (далее — ИС), выбираются при разработке конечной ИС, исходя из характера обрабатываемой в ней информации и иных требований информационной безопасности (далее — ИБ), предъявляемых к ней.

Системное программное обеспечение#

Ниже представлены общие категории системного программного обеспечения, которые обязательны для установки (на среде исполнения), настройки, контроля и функционирования поставляемого продукта. В каждой категории перечислены все поддерживаемые продукты сторонних правообладателей. Отдельно обозначены варианты, которые рекомендует АО «СберТех» (маркировка «Рекомендовано» в столбце «Продукт, функциональная совместимость с которым подтверждена»). Клиенту необходимо выбрать один из продуктов в каждой категории, исходя из условий использования конечной ИС.

Категории системного программного обеспечения, представленные ниже, обязательны для установки, настройки, контроля и функционирования компонента. В рамках каждой категории перечислены все поддерживаемые системные программы сторонних правообладателей, в том числе рекомендованные АО «СберТех». Выбор системной программы в каждой категории остается на стороне клиента (пользователя).

Требования к операционной системе

На агентах Jenkins должна быть установлена ОС Linux. Рекомендуемая версия – Альт 8 СП версии SP 8.2.

Категория ПО

Обязательность установки (да/нет)*

Наименование ПО

Версия

Продукт, функциональная совместимость с которым подтверждена**

Описание

Инструмент сборки, тестирования, развертывания контейнеризированных приложений

Да

Jenkins (включая набор плагинов и утилит, см. под таблицей)

2.361.4

Рекомендовано

Инструмент сборки, тестирования, развертывания контейнеризированных приложений.

Java-машина

Да

OpenJDK

1.8

Рекомендовано

Исполнение программного кода.

Сервис централизованного хранения репозиториев исходного кода

Да

GitLab CE

Community Edition 14.4.5-ee

Рекомендовано

Сервис централизованного хранения репозиториев исходного кода.

Сервис централизованного хранения репозиториев исходного кода

Нет

Bitbucket

7.6.7

Опционально

Сервис централизованного хранения репозиториев исходного кода.

Сервис централизованного хранения репозиториев артефактов (хранилище артефактов)

Да

Nexus Public

2.14

Рекомендовано

Сервис централизованного хранения репозиториев артефактов.

Среда контейнеризации

Да

Kubernetes (K8s)

v1.28

Рекомендовано

Платформа для разработки и эксплуатации контейнеризированных приложений.

Среда контейнеризации

Нет

Red Hat OpenShift

4.8

Опционально

Платформа для разработки и эксплуатации контейнеризированных приложений.

Менеджер пакетов

Нет

Helm

3.13

Опционально

Средство упаковки с открытым исходным кодом, которое помогает установить приложения Kubernetes и управлять их жизненным циклом.

Управление конфигурациями kubernetes-ресурсов

Нет

Kustomize

4.5.4

Опционально

Инструмент, позволяющий пользователям «настраивать простые и свободные от шаблонов файлы YAML под различные цели.

Система управления конфигурациями для автоматизации настройки и развертывания программного обеспечения

Да

Ansible

2.15

Рекомендовано

Система, позволяющая управлять конфигурациями с сервера.

Криптографическая библиотека TLS/SSL

Нет

OpenSSL

1.0

Опционально

Криптографическая библиотека для работы с CSR-файлами и SSL-сертификатами.

Сервер приложений

Нет

SynGX

1.1.0-2692

Опционально

Инструмент создания веб-сервера для обработки поступающих запросов и последующей передачи их далее другим программам.

Управление секретами

Нет

HashiCorp Vault

1.20.0

Опционально

Инструмент для управления секретами, шифрования как услуги и управления привилегированным доступом.

Программный пакет

Да

Python 3

3.9-3.11

Рекомендовано

Версия языка программирования.

Операционная система

Да

Альт 8 СП

8.2

Рекомендовано

Операционная система.

Инструмент управления программными проектами

Да

Apache Maven

3.9

Рекомендовано

Инструмент для автоматизации сборки проектов.

Сервер приложений

Нет

WebSphere Application Server (WAS)

8.5.5.19

Опционально

Сервер приложений с открытым исходным кодом.

Сервер приложений

Нет

WildFly

15

Опционально

Сервер приложений с открытым исходным кодом.

При работе со средой контейнеризации также необходима установка набора Jenkins плагинов для корректного функционирования программного компонента. Установленные версии указаны в файле jenkins_plugins.yml. Разрешенные методы указаны в jenkins_approved_signatures.yml.

Также на на узлах (nodes) Jenkins перед началом работы должны быть установлены:

  • утилита yq – версии не ниже чем: 4.25.3;

  • утилита jq – версии не ниже чем: 1.6;

  • Groovy - версии не ниже чем: 4.0.15.

Для реализации опциональной возможности использования диспетчера пакетов для Kubernetes «Helm» необходимо, чтобы версия используемого СПО соответствовала поддерживаемой:

  • Kustomize – 4.5.4;

  • Helm – 3.13;

  • OpenSSL – 1.0.

Содержание файлов jenkins_plugins.yml и jenkins_approved_signatures.yml#

Настройка окружения#

Настройка окружения осуществляется индивидуально для каждого из входящих в состав продукта программных компонентов. Подробные шаги описаны в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов.

Установка#

Установка программного продукта представляет собой независимую друг от друга установку входящих в его состав программных компонентов. Каждый компонент устанавливается в соответствии с собственным документом «Руководство по установке».

Чек-лист валидации установки#

Валидация установки осуществляется индивидуально для каждого из входящих в состав продукта программных компонентов. Подробные шаги описаны в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов.

Проверка работоспособности#

Проверка работоспособности продукта осуществляется индивидуально для каждого из входящих в его состав продукта программных компонентов. Данный процесс в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов.

Обновление#

Обновление продукта осуществляется путем индивидуального обновления каждого из входящих в состав продукта программных компонентов. Подробные действия по ручному или автоматическому процессу обновления представлены в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов.

Откат#

Откат на определенную версию продукта осуществляется индивидуально для каждого из входящих в его состав программных компонентов независимо друг от друга. Подробные действия по откату представлены в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов.

Удаление#

Удаление продукта осуществляется путем удаления всех входящих в его состав программных компонентов независимо друг от друга. Подробные действия по удалению представлены в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов.

Часто встречающиеся проблемы и пути их устранения#

Сбор информации о встречающихся проблемы при работе с программным продуктом осуществляется индивидуально для каждого из входящих в его состав программных компонентов. Подробная информация о часто встречающихся проблемах и путях их устранения представлена в соответствующем разделе документа «Руководство по установке» для каждого из программных компонентов