您的位置:首页 > 其它

saltstack安装及使用

2015-06-05 00:00 323 查看
摘要: saltstack安装及使用

服务安装和启动:

yum 安装客户端和服务器,启动客户端前需要指定master主机或者配置hosts

salt-minion -l debug #调试模式启动

master:

salt-key -L 查看未授权的主机

salt-key -A 接收所有主机

指定输出格式:

salt '*' --out=json cmd.run hostname

salt ‘*’ --out=yaml cmd.run hostname

salt '*’ --out=txt cmd.run hostname

配置文件,文件服务操作 :

# Example:

file_roots:

base:

- /srv/salt/

vim /srv/salt/top.sls:

base:

‘*’ #对象

-apache #可以是目录,也可以是apache.sls

vim /srv/salt/apache/init.sls

httpd:

pkg:

- installed

salt ‘*’ state.sls apache

salt命令 节点名 模块 参数

同步文件:

mkdir -p /srv/salt/apache/files

vim /srv/salt/apache/init.sls

httpd:

pkg:

- installed

php:

pkg:

- installed

/etc/httpd/conf/httpd.conf:

file:

- managed

- source: salt://apache/files/httpd.conf

- user:root

- group:root

- mode:644

salt ‘*’ state.ls apache

同步目录:

vim top.sls,init.sls

/opt/salt/test: #会自己创建目录

file:

- recurse

- source : salt://db/dir/boot

- include_empty:True #空的依然有效

salt ‘*’ state.ls db

服务管理:

salt.states.service 模块

vim init.sls

httpd:

pkg:

- installed

service:

- running

- enable:True 服务添加到运行级别 注意<:>后面必须加空格

salt ‘*’ state.sls apache

设置同步文件后重启服务

httpd: pkg:

- installed service:

- running - enable: True

- reload: True

- watch:

- file: salt://etc/httpd/conf/httpd.conf

计划任务:

/opt/salt/test: file:

- recurse - source : salt://db/dir/boot

- include_empty:True

date >> /tmp/crontest:

cron.persent:

- user: root

- minute: 5

关于匹配客户的

四种匹配模式

glob //通配符,正则表达式匹配

minion id == fqdn == full hostname

*.db.abc.com

0[1-5].db.abc.com

db?.abc.com

grains 及其的基本信息,硬件信息等

salt ‘*’ grains.ls #查看根主机信息相关的项目

salt ‘*’ grains.items

salt ‘*’ grains.items os

salt ‘*’ grains.items ip_interfaces:eth1

salt -G ‘os:Centos’ cmd.run hostname

定制 grains 修改客户的配置文件

vim minion

grains:

salt -G ‘roles:web’ cmd.run hostname

salt -G ‘city:beijing’ cmd.run hostname

compound 表示服类型@普配的模式 忽略大小写

[type]@[pattern]

E 正则匹配minion id

salt -C ‘E@agent[\d+]’ cmd.run hostname

G grains

salt -C ‘G@os :Centos’ cmd.run hostname

P 正则匹配grains

salt -C ‘P@os :\w’ cmd.run hostname

L list列表

salt -L ‘G@agent01,agent02’ cmd.run hostname

-S 子网和ip地址

salt -L ‘G@127.0.0.1' cmd.run hostname

salt -L ‘G@192.168.10.0/24’ cmd.run hostname

nodegroup

在master配置文件

nodegroups:

group1:’L@node1’

group2:’G@os:centos’

slat -N group1 test.ping

脚本

salt ‘*’ cmd.script http://192.168.3.155/test/sh
salt ‘*’ cmd.script salt://test.sh

自动接收主机

master 配置文件

auto_accept:True

~
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: