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
中,但它从来没有出现过。
我是否需要刷新缓存或类似的暴力行为才能使grain从AWS重新读取标签?
您使用 saltutil.refresh_grains 来刷新grains。他们还应该每隔 1 小时更新一次。
需要注意的是,你不应该经常更新grains。就在需要的时候。
还要考虑关闭柱子刷新部分,除非你需要新的柱子。强迫柱子刷新很多可以杀死大师。