mine学习及三种数据定义方式总结

    mine是salt定义数据的第三种方式,是在minion配置中定义的,然后数据发送到master存储。如果从minion获取的数据需要在其他minion中使用,就需要使用到mine。


在minion.d中定义mine.conf文件,内容如下

wKioL1ONYtLwB-muAABrrIFf-WU740.jpg

同步文件

salt-cp '*' mine.conf /opt/app/salt/etc/minion.d/

重启minion

salt '*' cmd.run '/opt/app/salt/admin/salt-minion restart'

执行如下命令,结果如图

salt '*' mine.get '*' network.ip_addrs

wKioL1ONXDjgnl62AADYuOXv3EE095.jpg


因为所有数据是共享的,两个minion获取的数据是一样的。


总结

说了这么多,那究竟在什么情况下该使用哪种数据定义方式呢?前面的文章也谈了区别,现在在这里总结下。


区别:

grains和mine是从minion端收集的,pillar是从master端收集的。

grains数据是静态的,mine和pillar的数据是动态的。

grains数据是每个minion的底层系统数据,不共享的;mine数据是自定义的,是共享的;

pillar数据是master的数据,应用于每个minion。


现在有三个需求:

获取master的广播地址并应用于minion---->采用pillar

获取和master同网段的minion的ip---->采用grains(结合第一个需求)

获取A的信息并在其他minion中使用---->使用mine


你可能感兴趣的:(总结,SALT,grains,pillar,mine)