在使用saltstack命令行和state文件管理的时候,对于两者的modules产生了疑问。
- 首先举个例子:
- 【0】在命令行使用
salt '*' pkg.install httpd
安装httpd服务。 - 【0】在state文件中使用:
pkg.installed:- httpd
安装httpd服务。
- 【0】在命令行使用
发现在命令行和state文件管理中用到的function不同,为什么做同样的任务两者会有差异,对此在stackoverflow上提问:详情(很喜欢stackoverflow,在提问不久后就收到saltstack的研发工程师的回复。 很酷的交流平台不是,解决问题极具高效性与专业性。)
这里截取一部分Utah_Dave对于此问题的回复:
大致的意思是state文件会对任务进行检查,如果已经完成,则不会做任何事,而命令行是不检查无条件的执行任务。相信在以后的使用过程中,你也会发现这种思想是saltstack的魅力之一。
(后来在saltstack官网发现里面早就有对于此问题的简单介绍在A BIT MORE ABOUT EXECUTION AND STATE FUNCTIONS部分,之前还在stackoverflow上麻烦人家解释,再次感谢Utah_Dave.^_^)
题外话:有个细节:本来想在stackoverflow上回复感谢下,说句Thank you very much my friends.是不是感觉很好,但是:
大致意思是回复栏你可用来更深一步提问或者提出改进而不要说感谢之类的话。
I fall in love with stackoverflow~~~~ ^_^