Обновление 2025.3.1 до 2025.3.2
Обновление AppSec.Hub (UI/Core) в Kubernetes
Примечание
Версия Helm-чарта Appsec.Hub: 0.2.10.
-
Скачайте новый Helm-чарт.
helm pull oci://registry.appsec.global/appsechub/hub-helm/appsechub --version 0.2.10 -
Извлеките файлы из архива.
tar -xvf tar -xvf appsechub-0.2.10.tgz && cd appsechub -
Сравните два файла values.yaml (текущий и новый из архива) для выявления изменений.
diff -y --suppress-common-lines /path/to/actual/values.yaml /path/to/new/values.yaml -
Заполните новый файл values.yaml вашими значениями, в соответствии с требованиями вашей среды.
-
Обновите развертывание.
helm upgrade --install appsechub . --namespace "appsechub" --create-namespace -f values.yaml
Список изменений в Helm-чарте Appsec.Hub
-
В файл values.yaml в секциях
issueRule:,hubsso:иhubissue:добавлен параметрdbPoolSizeв подразделenv:dbPoolSize: "10"Этот параметр определяет размер пула соединений с базой данных (по умолчанию имеет значение
10). -
В файл values.yaml в секциях
issueRule:иhubissue:добавлены параметрыexecutionLogEnabledиexecutionLogMinDurationMsToLogв подразделenv:executionLogEnabled: "false" executionLogMinDurationMsToLog: "1000"Параметр
executionLogEnabledвключает логирование затраченного времени на выполнение методов (по умолчанию имеет значениеfalse).Параметр
executionLogMinDurationMsToLogзадает порог времени выполнения метода в миллисекундах, до которого он не будет логироваться (по умолчанию имеет значение10000).
Обновление AppSec.Hub (UI/Core) в Docker
-
Остановите AppSec.Hub.
cd /opt/apphub sudo docker-compose down -
В конфигурационном файле /opt/apphub/.env (см. «Приложение 1. Конфигурационный файл .env») укажите новые версии образов:
hub_core_version=2025.3.2 hub_ui_version=2025.3.2 hub_air_version=2025.3.2 hub_db_version=2025.3.2 hub_gateway_version=2025.3.2 hub_issue_rule_version=2025.3.2 hub_issue_version=2025.3.2 hub_sso_version=2025.3.2 hub_metrics_version=2025.3.2 hub_metrics_bridge_version=2025.3.2 hub_pipeline_version=2025.3.2 rabbitmq_version=3.13-management # hub-pipeline-agent - указывается в этом файле только в случае установки AppSec.Hub и сервиса hub-pipeline на одном хосте # если на разных - то в своем .env файле на отдельной ноде hub_pipeline_agent_version=2025.3.2Примечание
При установке AppSec.Hub и Jenkins на разных хостах сервис
hub-pipelne-agentпри установке должен быть установлен на отдельной ноде. В этом случае значениеhub_pipeline_agent_versionдолжно быть указано и обновлено только в файле .env в директории/opt/pipelineна отдельной ноде.И добавьте строку для версии образа нового микросервиса:
hub_scheduler_version=2025.3.2 -
Добавьте следующие строки в конец файла /opt/apphub/.env (см. «Приложение 1. Конфигурационный файл .env»):
executionLogEnabled=false executionLogMinDurationMsToLog=10000 DB_POOL_SIZE=10 -
В файле config/hub-core/app.properties удалите следующую строку (см. «Приложение 4. Конфигурационный файл app.properties»).
hub.osa.issues.import.cron.expression=${osa.issues.import.cron.expression:0 0 5 * * *} -
Добавьте в конец файла config/hub-core/app.properties следующие строки (см. «Приложение 4. Конфигурационный файл app.properties»).
hub.fix.infinity.task.cron.expression=${fix.infinity.task.cron.expression:0 0 0 * * *} logging.executionLog.enabled=false logging.executionLog.minDurationMsToLog=10000Параметры:
hub.fix.infinity.task.cron.expression- это cron-выражение, задающее время, после которого прерываются зависшие задачи экспорта/импорта. Значение по умолчанию -0 0 0 * * *(ежедневно в полночь).logging.executionLog.enabledвключает логирование затраченного времени на выполнение методов в сервисе. Значение по умолчанию -false.logging.executionLog.minDurationMsToLogзадает порог времени выполнения метода в миллисекундах (если на выполнение будет затрачено меньше времени, он не будет логироваться). Т.е. если задано значение10000, то логироваться будут только те методы, которые выполняются больше 10000 ms.
-
В конфигурационном файле docker-compose.yml для AppSec.Hub (см. «Приложение 9. Пример docker-compose.yml для контейнера AppSec.Hub») добавьте следующий сервис:
scheduler: image: registry.appsec.global/appsechub/hub-scheduler:${hub_scheduler_version} container_name: scheduler # ports: # - 50053:50053 environment: - PG_USER=postgres - PGPASSWORD=${pgsql_admin_password} - PG_URL=${pgsql_url} - HUB_URL=${HUB_URL} - TZ=Europe/Moscow - CONSUL_HOST=http://consul - CONSUL_PORT=8500 - CONSUL_TOKEN=${consul_token} - DB_URL=jdbc:postgresql://${pgsql_url}/${hub_db_name} - HUBAPP_USERNAME=hubapp - HUBAPP_PASSWORD=${hub_app_password} - USE_GRPC_SECURITY=${USE_GRPC_SECURITY} - GRPC_AUTHORITY=${GRPC_AUTHORITY} networks: - net-hub cpu_shares: 768 deploy: resources: limits: memory: 1000M # pids: 400 -
В конфигурационном файле docker-compose.yml для AppSec.Hub (см. «Приложение 9. Пример docker-compose.yml для контейнера AppSec.Hub») добавьте следующую строку в подраздел
environment:в сервисахissue-rule:,hub-sso:иhub-issue:: -
Загрузите новые версии контейнеров. Для этого в папке, указанной при установке (по умолчанию — /opt/apphub), выполните следующую команду.
docker-compose pull -
После загрузки образов запустите систему.
docker-compose up -d
Обновление AppSec.Hub Engine (Jenkins)
Важно!
Начиная с версии 2024.4.1, если планируется использование инструментов PT Application Inspector или CodeScoring, необходимо подготовить Docker-образ по инструкции, приведенной в разделе «Добавление в Docker-образ hub-engine агентов Johnny и PT AISA».
-
Остановите Jenkins.
cd /opt/jenkins sudo docker-compose down -
Укажите новые версии образов в файле .env.
hub_engine_manager_version=2025.3.2 hub_engine_version=2025.3.2 -
Загрузите новые версии контейнеров.
docker-compose pull -
После загрузки образов запустите систему.
docker-compose up -d