Примечания к версиям#
6.2.3 - 2026-08-21#
Исправления#
Исправлена работа Pyroscope на некоторых кластерах.
Оптимизирован расчет хешей в nsctl, благодаря чему работа контроллера должна быть более отзывчивой.
Устранена ошибка «Не получилось освободить лиз» при незапланированном завершении работы контейнера.
Другие изменения#
Увеличен запрос ОЗУ для отладчика с 2 до 6 гигабайт.
6.2.2 - 2026-08-05#
Исправления#
Устранена ошибка при запуске облачного отладчика.
Исправлен выбор режима обновления (горячее/полное) комплекта приложений.
Увеличен период ожидания запуска сервера приложений до 6 минут. При превышении времени ожидания, выбрасывается исключение.
6.2.1 - 2026-07-17#
Исправления#
Исправлена работа облачного отладчика.
Устранена ошибка «Не удалось загрузить файл … Не удалось переместить временный файл», уменьшена вероятность OOM при
./appkit.sh push.Устранена ошибка в
pushпри попытке прочитать контрольную сумму из файла.
Другие изменения#
Переработано логирование nsctl.
Теперь можно указать количество попыток загрузки комплекта приложений/группы при помощи параметра
./appkit.sh push --remote-copy-max-attempts(аналогично для./groupkit.sh) или через переменную окруженияNSCLI_REMOTE_COPY_MAX_ATTEMPTS.В
nsctlдобавлен инструмент для снятия отладочной информации./debug_info.sh.
6.2.0 - 2026-06-18#
Новые функции#
Теперь возможно создавать конфигурацию gs-ctk при помощи Helm-чарта.
Для этого в
values.yamlчарта добавлено полеhelmResgroup. Подробнее читайте здесь.Обратите также внимание на обновленную инструкцию о развертывании одним чартом, где данная функция активно используется.
GossipRouter теперь доступен для серверов приложений внутри своей группы ресурсов автоматически, без необходимости указывать отдельный адрес.
Другие изменения#
Добавлена поддержка ApplicationServer версий 1.27.0-rc11, 1.28.0-ms8 и выше.
Удалены лишние лейблы из метрик, добавлена фильтрация метрик kube-prometheus-stack
6.1.1 - 2026-06-11#
Исправления#
Исправлен запуск пода gossiprouter
Доступ к Pyroscope из Grafana теперь работает при отсутствии доступа к интернета.
6.1.0 - 2026-05-20#
Новые функции#
Теперь можно указать произвольное количество пулов соединений и их параметры.
Для этого добавлены параметры группы ресурсов
database_extra_pools,database_write_pool_parameters,database_read_only_pool_parametersиdatabase_special_pools. Обратите внимание, что для применения настроек требуется пересоздать profile.zip. Подробнее читайте здесь.Обновлены доски «Database client connections», «HTTP Server» и «System overview».
Исправления#
Устранена ошибка агента телеметрии
'GsServiceAgent' object has no attribute 'cur_gc_workload', мешающая выгрузке метрики о времени, потраченном на работу сборщика мусора.
6.0.8 - 2026-07-17#
Исправления#
Устранена ошибка «Не удалось загрузить файл … Не удалось переместить временный файл», уменьшена вероятность OOM при
./appkit.sh push. (порт. из 6.2.1)Устранена ошибка в
pushпри попытке прочитать контрольную сумму из файла. (порт. из 6.2.1)
Другие изменения#
Переработано логирование nsctl. (порт. из 6.2.1)
6.0.7 - 2026-07-03#
Другие изменения#
В
nsctlдобавлен инструмент для снятия отладочной информации./debug_info.sh. (порт. из 6.2.1)
6.0.6 - 2026-06-09#
Исправления#
Исправлен запуск пода gossiprouter (порт. из 6.1.1)
6.0.5 - 2026-05-15#
Исправления#
Исправлен запуск nscli на Alt Linux p10 и других дистрибутивах с Python 3.9.
Другие изменения#
Повышение стабильности и скорости загрузки appkit в nsctl pod. Вывод прогресса загрузки appkit при push to nsctl pod в одну строку
6.0.4 - 2026-05-12#
Другие изменения#
Добавлена поддержка Python 3.12
6.0.3 - 2026-05-07#
Исправления#
Исправлена отправка метрик во внешнюю систему.
Исправлена логика сбора метрики
systemagent_health_check.
Другие изменения#
Helm-чарт теперь публикуется в нативном формате с расширением tgz, а не zip.
Утилита
./make_dump.shснимает дампы с queuewalker.Обновлен queuewalker.
Внимание! Для стабильной работы обновленного стэка телеметрии, рекомендуем повысить ресурсы системных агентов до 500Мб request, 1Гб limit.
6.0.2 - 2026-04-29#
Исправления#
Под queuewalker исправно загружает переопределения из комплекта группы.
Устранена ошибка при запуске VictoriaMetrics, связанная с наличием в пароле авторизации спецсимволов.
6.0.1 - 2026-04-28#
Другие изменения#
Добавлена возможность указать пул соединений только для чтения через параметр группы ресурсов
database_readonly_replica_url. (Для работы параметра требуется пересоздать профиль)В дашборды интеграций добавлено значение по умолчанию.
Обновлен queuewalker.
6.0.0 - 2026-04-21#
Новые функции#
Добавлено встроенное профилирование серверов приложений при помощи Pyroscope.
При сборке gs-ctk в nsctl фиксируются хеши других образов gs-ctk, которые он может использовать при развертывании других контейнеров.
Для включения развертывания при помощи хешей необходимо в values.yaml указать imageMode: «digestAuto».
Ключ планировщика задач теперь можно применить одной командой.
При помощи одной команды можно сохранить ключ из секрета Kubernetes в БД и перезагрузить планировщик задач и сервера приложений. В nscli команда доступна, как
./scheduler_keys.sh push_scheduler_keys --namespace gs-ctk --group gs-cluster-1, в nsctl:./utils.sh push_scheduler_keys --group gs-cluster-1.
Другие изменения#
Вместо Prometheus в качестве встроенной СУБД для метрик теперь используется VictoriaMetrics.
Вместо Otelcol и Promtail для сбора телеметрии теперь используется Grafana Alloy.
Загрузка приватного ключа scheduler в кластер без обертки в Base64 (
stringData) c сохранением обратной совместимости (data)В дашборде Grafana «Checklist» теперь отслеживается соответствие ключа планировщика в секрете Kubernetes и в базе данных (метрика «Scheduler key convergence»).
Переработано создание ключей планировщика задач. Теперь ключи создаются командой nscli
./scheduler_keys.sh generate_new_keys [--destination workspace/keys].
Исправления#
HAProxy теперь стартует без ошибок после перезапуска при наличии в пространстве имен подов-сирот.
Примечания к развертыванию#
Версия обратно совместима с gs-ctk 5. Никаких изменений конфигурации для развертывания новой версии gs-ctk не требуется.
5.9.4 - 2026-05-04#
Другие изменения#
Обновлен queuewalker.
5.9.3 - 2026-04-20#
Другие изменения#
Обновлен queuewalker.
5.9.2 - 2026-04-20#
Исправления#
Исправлена балансировка запросов обходчика очередей
5.9.1 - 2026-04-02#
Исправления#
Исправлена ошибка в работе
./appkit.sh pushна этапе загрузки profile.zip.
5.9.0 - 2026-03-30#
Новые функции#
Реализована отправка трейсов и метрик во внешние системы.
Добавлена команда для снятия дампа.
Можно снимать дампы сервера приложений, шедулера и GossipRouter при помощи команды nscli
./make_dump.sh, а также на самом поде при помощи той же команды.
Другие изменения#
Теперь при запуске шедулера в лог контейнера выводится публичный ключ, связанный с приватным ключем шедулера.
Исправления#
Исправлена генерация профиля.
5.8.2 - 2026-03-17#
Исправления#
Исправлена работа nscli с версией Python 3.9.
Исправлена работа queuewalker
Другие изменения#
Возвращена возможность по умолчанию перезаписывать файлы хешей для appkit/groupkit.
По умолчанию push работает, как было до 5.8.0: локальные .sha1 и .sha256 рядом с архивом всегда пересчитываются и перезаписываются. Новый режим контроля целостности сохранён под флагом –validate-local-hashes: тогда существующие hash-файлы не затираются, а сверяются с архивом или создаются при отсутствии.
5.8.1 - 2026-03-10#
Исправления#
Устранена ошибка
TypeError: object of type 'NoneType' has no len(), которая иногда возникает при обновлении БД.
Другие изменения#
Секрет администратора для задачи (K8s Job) обновления может браться из книг ресурсов
global_server_exclиglobal_server_share, если такой секрет не указан явно для задачи обновления или группы ресурсов в целом.Теперь возможно указать секрет TLS для ресурсов Ingress. Подробнее в документации.
Теперь переменная KUBECONFIG учитывается при загрузке конфигурационного файла клиента Kubernetes.
Добавлены более явные сообщения о критических ошибках сервера приложений и прикладного решения при обновлении БД.
5.8.0 - 2026-02-27#
Новые функции#
Добавлен ctk_restapi.
Сервис для упрощенного мониторинга и перезагрузки Kubernetes-подов, через Rest API с ролевой моделью доступа и аудитом событий.
Подробная документация о структуре и целях сервиса: https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/070_addition/043_ctk_restapi_manual.html
Добавлен обходчик очередей.
Сервис для Global ERP, отвечающий за чтение и выполнение сообщений из очередей интеграции.
Добавить обходчик очередей можно через команду
./configmgr.sh configure_resbook --config-path config.yaml --resgroup gs-cluster-1 --resbook queuewalker --classname queuewalker. Подробнее читайте в https://help.globalerp.ru/books/GsCtk/SNAPSHOT/html/resbooks/100_queuewalker.html.Для комплекта группы унифицирован контроль целостности; добавлен режим фиксации контейнерных образов по digest.
Подробное описание команд и параметров (генерация/проверка
.sha1/.sha256, сверка локальных и NFS-хэшей, использованиеswitch_remote/switch_localдля фиксации хэшей в конфигурации) - https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/020_install.html#id9, а также (режимыimageMode/imageDigestsдля Helm) - https://help.globalerp.ru/books/G3SysAdminDoc/SNAPSHOT/html/040_global-k8s/020_install.html#id3.Добавлена возможность указать запросы и пределы ресурсов для nsctl через Helm-чарт.
Настроить можно через параметр
nsctlResourcesвvalues.yaml.
Исправления#
Исправлено создание K8s Job обновления при использовании с версиями, содержащими знак
#.Статистика и телеметрия с HAProxy доступна, как в состоянии комплекта приложений
started, так иstopped, иdrained.
Другие изменения#
Команды
./appkit.sh switch_localиswitch_remoteтеперь выдают более полные сообщения об ошибках.Увеличен объем эфемерного хранилища для временных файлов с 5 до 10 ГБ.
Увеличено максимальное количество потоков в JGroups DNS по умолчанию с 8 до 32.
5.7.0 - 2026-01-28#
Новые функции#
Добавлена возможность запускать обновление БД с помощью ресурса Kubernetes типа Job.
Запуск обновления при помощи Job позволяет выполнять обновление на изолированном свежем поде, что увеличивает стабильность и управляемость процесса. Позволяет контролировать процесс обновления БД без использования nscli.
Вы можете начать использовать Job обновления, настроив его в мастере конфигурации группы ресурсов:
nscli $ ./configmgr.sh configure_resgroup --config-path config.yaml --resgroup gs-cluster-1
Настройка группы ресурсов: gs-cluster-2 ======================================= ... Включить обновление при помощи ресурса Kubernetes типа Job?[да,нет]:да Укажите размер кучи Java (Xmx) для Job обновления:3500M Введите запрос CPU для globalserver:2 Введите запрос MEMORY для globalserver:4G Введите лимиты CPU для globalserver:2 Введите лимиты MEMORY для globalserver:4G Введите запрос CPU для systemagent:1 Введите запрос MEMORY для systemagent:250M Введите лимиты CPU для systemagent:1 Введите лимиты MEMORY для systemagent:500M ...
Вы также можете настроить Job обновления без мастера конфигурации, добавив секцию
upgrade_jobв настройки группы ресурсовapiVersion: global-system.ru/v1 kind: GlobalConfiguration metadata: name: config spec: type: advanced resgroups: - name: gs-cluster-1 upgrade_job: enabled: true java_xmx: 3500M resources: requests: memory: 4G cpu: '2' limits: memory: 4G cpu: '2' agent_resources: requests: memory: 250M cpu: '1' limits: memory: 500M cpu: '1' ...
Переключайте старый и новый механизм обновления при помощи параметра
upgrade_job.enabledгруппы ресурсов.После выполнения
./appkit.sh upgrade(или изменения параметра группы ресурсовdatabase_schema_versionдругим способом) и применения конфигурационного ресурса, nsctl должен удалить старый Job вместе с созданным им подом, и создать новый.Job и под обновления можно определить по лейблу
global-system.ru/is-upgrade-job-pod-for, значение которого соответствует названию группы ресурсов. Название Job состоит из префиксаupgrade-job-и названия группы ресурсов, например,upgrade-job-gs-cluster-1.
Другие изменения#
Команда
./appkit.sh upgradeтеперь по умолчанию добавляет кdatabase_schema_versionслучайный суффикс формата#xxxx. Это гарантирует запуск обновления в случае потери инкремента версии (например, при запуске команды в эфемерном контейнере). Добавьте флаг--do-not-add-random-part, чтобы не добавлять суффикс.
5.6.0 - 2026-12-29#
Новые функции#
Добавлена авторизация в Prometheus.
5.5.1 - 2026-12-29#
Исправления#
Исправлен баг в команде
./appkit.sh wait_upgrade, связанный с появлением сообщения о неустановленном CRD в больших количествах.
5.5.0 - 2026-12-23#
Новые функции#
В конфигурационные ресурсы указываются настройки по умолчанию.
Добавлены команды
./configmgr.sh enable_resgroup,disable_resgroup,enable_resbook,disable_resbook.Переработана доска VM Memory.
Добавлены дополнительные фильтры метрик.
Обновлена Grafana.
5.4.1 - 2026-12-18#
Исправления#
Исправлен импорт настроек из файлов профиля logback-LoggerContext-ext.xml и logback-LoggerContext-session-ext.xml.
5.4.0 - 2026-12-15#
Другие изменения#
Из метрики занятой памяти в чеклисте убран объем файлового кеша.
Новые функции#
Добавлены горячие обновления.
Теперь Helm-чарт публикуется не только с nscli, но и отдельно.
Добавлен конфигурационный ресурс пространства имен (
NamespacedGlobalConfiguration).Секреты теперь можно создавать через Helm–чарт.
Добавлен сбор телеметрии шедулера.
Реализована возможность указать интервал запроса метрик из kube-prometheus-stack.
Добавлена метрика доступности внешнего Loki.
Добавлена доска с телеметрией интеграции.
Исправления#
Исправлен баг в лизах, возникающий когда счетчик микросекунд равен 0.
Исправлено развертывание GossipRouter при наличии дополнительных точек монтирования.
5.3.1 - 2026-12-01#
Другие изменения#
Теперь хранится меньше поколений ReplicaSet (3 вместо 10).
Исправления#
Исправлена ошибка при изменении конфигурации/обновлении gs-ctk, когда управляемые ресурсы сливались, а не изменялись, сохраняя устаревшие параметры.
Исправлено поведение лизов.
5.3.0 - 2026-11-10#
Другие изменения#
HAProxy показывает заглушку в осушенном и остановленном состоянии комплекта приложений.
мастер включает JGroups DNS по умолчанию.
Новые функции#
Добавлен контейнер img2doc.
Переработано обновление БД.
5.2.5 - 2026-10-31#
Другие изменения#
Актуализирован конфиг планировщика.
Исправления#
Исправлен статус HAProxy на дашборде System overview.
Исправлена работа JGroups DNS.
5.2.4 - 2026-10-29#
Исправления#
Исправлен шаблон gossiprouter.
5.2.3 - 2026-10-28#
Исправления#
Исправлена миграция gossiprouter с версии 4.*.*.
5.2.2 - 2026-10-24#
Исправления#
Исправлен статус NFS в Grafana.
5.2.1 - 2026-10-10#
Исправления#
Исправление работы с VK Cloud Containers.
5.2.0 - 2026-10-08#
Другие изменения#
Обновление зависимостей.
Новые функции#
Второй пакет доработок по телеметрии и чек-листу.
5.1.6 - 2026-09-24#
Исправления#
Исправлен баг, из-за которого из группкита не подгружались JAR-библиотеки.
5.1.5 - 2026-09-19#
Другие изменения#
В appkit.sh добавлены команды просмотра версии базы данных, получения логов и ожидания завершения обновления.
Исправления#
Исправлена ошибка в Helm-чарте, которая не позволяла развернуть чарт в прямо указанном пространстве имен.
5.1.4 - 2026-09-12#
Новые функции#
Облачный отладчик запускается в закрытой среде.
Исправления#
Исправить миграцию gossiprouter и grafana с версии 4.*.*.
Исправить дефолтные значения для Helm-чарта.
5.1.3 - 2026-09-01#
Исправления#
Порт HAProxy TLS для Grafana теперь определяется корректно.
5.1.2 - 2026-08-28#
Другие изменения#
Увеличены дефолтные запросы и лимиты Grafana.
Настроено развертывание с ограниченными правами.
5.1.1 - 2026-08-26#
Другие изменения#
Добавлены флаги
--skip-checks,--skip-profile-creationдля./appkit.sh push.
5.1.0 - 2026-08-18#
Другие изменения#
Обновлен RabbitMQ.
Новые функции#
В Grafana добавлен чеклист.
Теперь используется kube-prometheus-stack, а не собственная реализация.
5.0.1 - 2026-08-15#
Другие изменения#
Grafana больше не требует PV, как и в 4.*.
Исправления#
Исправлены неправильные подсказки и ошибки в командах мастера конфигурации
nscli/configmgr.sh.Исправлена ошибка с экспортом телеметрии во внешнюю систему.
5.0.0 - 2026-07-22#
Новые функции#
Возможно развернуть через Helm.
Использует шаблон оператора.
Единый конфигурационный ресурс.
Облачный отладчик (пока только при наличии интернета).