Как отключить режим кластера Rundeck в AWS ECS Fargate

Я размещаю Rundeck в AWS ECS Fargate — образ докера v5.2.0. Он работает успешно, но в журналах запуска я вижу предупреждение:

May 28, 2024 at 17:16 (UTC+1:00)    [2024-05-28T16:16:15,238] WARN rundeckapp.BootStrap - Running in cluster mode without rundeck.primaryServerId set. Please set rundeck.primaryServerId to the UUID of the primary server in the cluster  rundeck
May 28, 2024 at 17:16 (UTC+1:00)    [2024-05-28T16:16:15,237] WARN rundeckapp.BootStrap - Cluster mode enabled, this server's UUID: a14bc3e6-75e8-4fe4-a90d-a16dcc976bf6    rundeck
May 28, 2024 at 17:16 (UTC+1:00)    [2024-05-28T16:16:15,235] INFO rundeckapp.BootStrap - loaded configuration: /home/rundeck/etc/framework.properties  rundeck

(удивительно, что UUID всегда остается прежним, даже когда я меняю образ докера или меняю количество контейнеров с 1 на 2)

Я вижу свойство rundeck.clusterMode.enabled=true в файле rundeck-config.properties, но не могу найти (или не существует ни одной) переменную среды, в отличие от многих других параметров конфигурации в Rundeck, чтобы установить clusterMode в false.

Я также пытался посмотреть, поддерживает ли ECS Fargate что-то вроде postStart hook, как в k8s, но, видимо, эта функция была запрошена (https://github.com/aws/containers-roadmap/issues/952), но еще не доступен.

Как я мог этого добиться? Если рассматривать это только с точки зрения ECS, мне нужно изменить файл в контейнере ECS Fargate после успешного выполнения задачи ECS.

ТИА!

Привет, вы используете автоматизацию процессов (ранее «Rundeck Enterprise»)?

MegaDrive68k 28.05.2024 21:10

Я должен был упомянуть, что это издание для сообщества.

rock'n rolla 28.05.2024 21:15
Стоит ли изучать PHP в 2026-2027 годах?
Стоит ли изучать PHP в 2026-2027 годах?
Привет всем, сегодня я хочу высказать свои соображения по поводу вопроса, который я уже много раз получал в своем сообществе: "Стоит ли изучать PHP в...
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
Поведение ключевого слова "this" в стрелочной функции в сравнении с нормальной функцией
В JavaScript одним из самых запутанных понятий является поведение ключевого слова "this" в стрелочной и обычной функциях.
Приемы CSS-макетирования - floats и Flexbox
Приемы CSS-макетирования - floats и Flexbox
Здравствуйте, друзья-студенты! Готовы совершенствовать свои навыки веб-дизайна? Сегодня в нашем путешествии мы рассмотрим приемы CSS-верстки - в...
Тестирование функциональных ngrx-эффектов в Angular 16 с помощью Jest
В системе управления состояниями ngrx, совместимой с Angular 16, появились функциональные эффекты. Это здорово и делает код определенно легче для...
Концепция локализации и ее применение в приложениях React ⚡️
Концепция локализации и ее применение в приложениях React ⚡️
Локализация - это процесс адаптации приложения к различным языкам и культурным требованиям. Это позволяет пользователям получить опыт, соответствующий...
Пользовательский скаляр GraphQL
Пользовательский скаляр GraphQL
Листовые узлы системы типов GraphQL называются скалярами. Достигнув скалярного типа, невозможно спуститься дальше по иерархии типов. Скалярный тип...
1
2
56
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Это не влияет на режим одного экземпляра (он считается «экземпляром кластера с одним узлом»).

Но если вам нужно установить для этого свойства значение false, перестройте изображение, используя шаблон Remco, например этот ответ (на основе этой записи документа):

В этом случае rundeck-config-extra.properties будет включать следующее:

rundeck.clusterMode.enabled = {{ getv("/rundeck/clusterMode/enabled", "false") }}

Создайте образ: docker compose build

А затем разверните его: docker compose up

Итак, при инициализации необходимо опустить сообщение о режиме кластера:

[2024-05-28T20:57:46,408] INFO  liquibase.lockservice - Successfully released change log lock
[2024-05-28T20:57:46,560] INFO  rundeckapp.BootStrap - Starting Rundeck 5.3.0-20240520 (2024-05-20) ...
[2024-05-28T20:57:46,560] INFO  rundeckapp.BootStrap - using rdeck.base config property: /home/rundeck
[2024-05-28T20:57:46,568] INFO  rundeckapp.BootStrap - loaded configuration: /home/rundeck/etc/framework.properties
[2024-05-28T20:57:46,673] INFO  rundeckapp.BootStrap - RSS feeds disabled
[2024-05-28T20:57:46,673] INFO  rundeckapp.BootStrap - Using jaas authentication
[2024-05-28T20:57:46,675] INFO  rundeckapp.BootStrap - Preauthentication is disabled
[2024-05-28T20:57:46,702] INFO  rundeckapp.BootStrap - Rundeck is ACTIVE: executions can be run.
[2024-05-28T20:57:46,728] WARN  rundeckapp.BootStrap - [Development Mode] Usage of H2 database is recommended only for development and testing
[2024-05-28T20:57:46,755] INFO  rundeckapp.BootStrap - workflowConfigFix973: applying... 
[2024-05-28T20:57:46,760] INFO  rundeckapp.BootStrap - workflowConfigFix973: No fix was needed. Storing fix application state.
[2024-05-28T20:57:47,015] INFO  rundeckapp.BootStrap - Rundeck startup finished in 502ms
[2024-05-28T20:57:47,019] INFO  rundeckapp.Application - Started Application in 20.393 seconds (JVM running for 21.949)

Спасибо за этот ответ. Я следовал инструкциям и могу подтвердить, что больше не вижу сообщения о режиме кластера в журналах. Но если я exec зайду в контейнер и посмотрю на rundeck-config.properties файл, я все равно смогу увидеть свойство rundeck.clusterMode.enabled=true. Я ожидал, что он будет установлен на false. Как Remco справляется с этой задачей?

rock'n rolla 29.05.2024 12:40

В соответствии с инструкциями здесь: docs.rundeck.com/docs/administration/configuration/docker/… Объединяет ли он файл шаблона rundeck-config-extra.properties в rundeck-config.properties и создает ли где-нибудь временный файл конфигурации, возможно, в памяти, и использует его для запустить Рандек? Может быть, он хранится где-нибудь в файловой системе?

rock'n rolla 29.05.2024 12:43

Что касается вашего первого комментария, Рундек принимает последний. Да, я вижу строку rundeck.clusterMode.enabled=true, но в конце файла есть rundeck.clusterMode.enabled=false (и это действительная конфигурация, поэтому сообщение исчезает при запуске контейнера).

MegaDrive68k 29.05.2024 14:28

Да, я пропустил тот, что внизу. Выглядит хорошо, еще раз спасибо!

rock'n rolla 29.05.2024 15:45

Другие вопросы по теме