在CentOS6上使用saltstack配置Apache ssh模块

如下的salt states是我们需要安装的,Salt的状态系统文件

一、使用salt来同步一个第一个简单的文件[root@salt_server~]#mkdir/srv/salt/base[root@salt_server~]#cd/srv/salt/base[root@salt_serverbase]#echo”testsaltfirstfile”>>first.txt[root@salt_serverbase]#salt’salt_client1’cp.get_filesalt://first.txt/home/first.txtsalt_client1:/home/first.txt[root@salt_serversalt]#在客户端查看[root@salt_client1home]#pwd/home[root@salt_client1home]#catfirst.txttestsaltfirstfile[root@salt_client1home]#二、来创建第一个文件———————修改master配置文件[root@salt_server~]#vim/etc/salt/masterfile_roots:base:-/srv/salt/base默认这个目录是没有的,我们需要创建一个目录;然后我们需要创建一个文件top.sls,如果玩过puppet就知道这个文件就相当puppet文件的site.pp[root@salt_serverbase]#pwd/srv/salt/base[root@salt_serverbase]#mkdirhttpd[root@salt_serverbase]#cattop.slsbase:’salt_client1′:-httpd.pack[root@salt_serverbase]#如下解释:base:命名规则,也可以使用其他的来代替’salt_client1′:指的是对象,我们这里设定的是salt_client1可以安装,其他的客户端就不能安装了,如果其他想安装可以用正则匹配-httpd.pack这个指httpd目录下面的pack.sls在17.0.5需要创建这个文件详解资源文件apache:是安装软件的名字pkg:salt安装包的方式service:salt服务管理file.managed:salt文件管理[root@salt_serversalt]#mkdirpkgconf[root@salt_serversalt]#mkdirhttpd[root@salt_serverhttpd]#pwd/srv/salt/httpd[root@salt_serverhttpd]#catpack.sls如果换成init就不需要在top.sls中跟后缀文件了直接写成httpd即可。apache:pkg:-name:httpd-installedservice:-name:httpd-running-reload:True-watch:-file:/etc/httpd/conf/httpd.conf/etc/httpd/conf/httpd.conf:file.managed:-source:salt://httpd/httpd.conf文件需要存在-user:root-group:root-mode:644-backup:minion[root@salt_serverhttpd]#扩展以后的apache:pkg:-name:httpd-installedservice:-name:httpd-running-reload:True-watch:-pkg:apache-file:/etc/httpd/conf/httpd.conf-user:apacheuser.present:-uid:48-gid:48-shell:/sbin/nologin-require:-group:apachegroup.present:-gid:48-require:-pkg:apache/etc/httpd/conf/httpd.conf:file.managed:-source:salt://httpd/httpd.conf-user:root-group:root-mode:644-backup:minion[root@salt_serversalt]#解释下这pack.sls这个YAML文件第1行:apache表示申明这个ID:第2,5行:调用了pkg、service这两个state,pkg使用系统本地的软件包管理器管理将要安装的软件,service管理系统守护进程。第3,5,6,7行:是调用了函数,这个函数定义了包和服务将要达到的状态,,这里表示包包的名字以及包会被安装以及安装后会启动。我们需要注意一个问题:source:salt://httpd/httpd.conf需要保证source下面这个httpd.conf文件是可用的pkg、service下面的子文件内容是表示function,这个function定义了需要安装的服务,id,状态require这个参数我们其实也可以在这个sls文件中调用,它确保了apache服务只有在成功安装软件包后才会启动。service这个state下面的watch和require基本相似,都能保证被监视或需要的state在自己之前执行,但是watch还有其他作用。测试:[root@salt_serversalt]#salt’salt_client1’state.highstatetest=True[root@salt_serversalt]#salt’salt_client1’state.highstate-v也可以在客户端拉去[root@salt_client1~]#salt-callstate.highstate安装ssh-clients的第一种方法:如下是成功用salt来安装ssh-clients安装代码:[root@salt_serverssh]#vimssh.slssshd:pkg:-name:openssh-server这里也可以选择openssh-clients,这是需要安装的名字-installeduser.present:-uid:74-gid:74-shell:/sbin/nologin-require:-group:sshdgroup.present:-gid:74-require:-pkg:sshdservice:-name:sshd-running-reload:True快乐要懂得分享,才能加倍的快乐

在CentOS6上使用saltstack配置Apache ssh模块

相关文章:

你感兴趣的文章:

标签云: