В настоящее время я использую зерно ec2_tags.py, чтобы подвергать теги воздействию соли. После запуска он, похоже, не обновляется при изменении тегов экземпляра. Нужно ли принудительно обновлять соль? Если да, то как?
i-09f235fe54532742c:~$ sudo salt 'ssh*' grains.get ec2_tags
ssh-bastion-staging-i-04277e83b78909a16:
----------
Name:
ssh-bastion-staging
app:
ssh-bastion
aws:autoscaling:groupName:
ssh-bastion-ag-staging
aws:ec2launchtemplate:id:
lt-0f8675fa3a76e292b
aws:ec2launchtemplate:version:
5
environment:
staging
-------------------------------------------
Summary
-------------------------------------------
# of minions targeted: 1
# of minions returned: 1
# of minions that did not return: 0
# of minions with errors: 0
-------------------------------------------
В нашем процессе мы добавляем тег available
, когда экземпляр полностью готов (или удаляем его), который используется другими частями нашего процесса. Существуют определенные действия в соляном состоянии, которые мы хотим применять только к недоступным экземплярам.
Я ожидал увидеть тег grains.get ec2_tags
после добавления, но этого не произошло.
Нужно ли мне очищать кеш или делать что-то подобное, чтобы зерно перечитало теги из AWS?
вы используете saltutil.refresh_grains для обновления зерен. они также должны обновляться с интервалом в 1 час.
Следует отметить, что вам не следует часто обновлять зерна. только тогда, когда это необходимо.
Также подумываю об отключении обновления столбов, если вам не нужны новые столбы. Принудительное обновление столба может убить мастера.
Идеально - это то, что я искал. Ваш комментарий также указал мне на опцию конфигурации
grains_refresh_every
миньона.