基本配置
master_id: None master ID interface: 0.0.0.0 监听地址,默认值:0.0.0.0 ipv6: False 是否监听ipv6地址, publish_port: 4505 master与minion的认证通信端口 ret_port: 4506 master用来发送命令或者接收minions的返回信息的端口 user: root 运行salt进程的用户 max_open_files: 100000 master可以打开的最大文件句柄数 worker_threads: 5 MWorker进程的数量,用来接收或应答minion信息 sock_dir: /var/run/salt/master 指定unix socket主进程通信的socket创建路径 conf_file: /etc/salt/master 配置文件路径 root_dir: / 指定该目录为salt运行的根目录 pki_dir: /etc/salt/pki/master 存放pki认证秘钥的路径 pidfile: /var/run/salt-master.pid master的pid文件位置 cachedir: /var/cache/salt/master 用来存放缓存信息(job),默认保存24小时 keep_jobs: 24 设置保持老的工作信息的过期时间,单位小时 verify_env: True 在启动验证和设置权限配置目录 job_cache: True 是否启用job缓存,使master获得更快的IO系统;如果关闭这个选项,之前的工作执行以及工作系统将无法被利用 timeout: 5 master执行命令的可以接受的延迟时间 output: nested salt命令的输出格式 minion_data_cache: True 是关于minion信息存储在master上的参数,主要是pillar 和grains数据.这些数据被缓存在cachedir定义的目录下的minion目录下以minion名为名的目录下并且预先确定哪些minions将从 执行回复
log_file: /var/log/salt/master master的日志可以发送到一个普通文件,本地路径名或者网络位置 log_file: /var/log/salt/master log_file: udp://loghost:10514
log_level: warning 发送到控制台的日志级别 log_level_logfile: warning 写入文件的日志级别 可选项:# One of 'garbage', 'trace', 'debug', info', 'warning', 'error', 'critical'.
include: /etc/salt/extra_config 包含其他路径上的配置文件
安全配置
open_mode: False master遇到pki认证系统,秘钥混淆和身份验证失效时,打开open_mode,master将会接受 所有的身份验证。这将会清理掉pki秘钥接受的minions。通常情况下open_mode不应该被打开,它只适用于短时间内清理pki keys,若要打开它,可将值调整为True auto_accept: False 自动接受所有发送公钥的minions autosign_file: /etc/salt/autosign.conf autosign_file将会通过该输入允许所有的匹配项,首先会搜索字符串进行匹配,然后通过正则表达式进行匹配。这是不安全的
开启对系统上非root的系统用户在master上执行特殊的模块,这些模块名可以使用正则表达式进行表示 client_acl: larry: - test.ping - network.* 黑名单用户或模块,表示所有非sudo用户以及root都无法通过cmd这个模块执行命令,默认情况改配置是完全禁用的 client_acl_blacklist: users: - root - '^(?!sudo_).*$' # all non sudo users modules: - cmd salt的认证模块采用外部的认证系统用来做认证和验证用户在salt系统中的访问区域 pam: fred: - test.* file_recv: False 允许minions推送文件到master上,这个选项默认是禁用的,出于安全考虑 file_recv_max_size: 100 设置一个hard-limit文件的大小,可以推到master。
文件服务器
file_roots: /srv/salt salt运行一个轻量级的文件服务器通过ZeroMQ对minions进行文件传输,因此这个文件服务器是构造在master的守护进程中,并且不需要依赖于专用的端口 文件服务器的工作环境传递给master,每一个环境可以有多个根目录,顺序查找 file_roots: base: - /srv/salt/ dev: - /srv/salt/dev/services - /srv/salt/dev/states prod: - /srv/salt/prod/services - /srv/salt/prod/states salt wonhigh1 state.sls l saltenv='prod' 指定工作环境 #hash_type: md5 需要对一个文件进行hash的时候使用的算法,默认是md5.支持sha1,sha224,shar256,shar384,shar512 file_buffer_size: 1048576 文件服务器的缓存区大小 salt支持模块化的后端文件系统服务器,它允许salt通过第三方的系统来管理收集文件并提供给minions使用,可以配置多个后端文件系统,这里支 持gitfs、hgfs、roots、s3fs文件调用的搜索顺序按照后台文件系统的配置顺序来搜索,默认的设置只开启了标准的后端服务器roots,具 体的根选项配置通过file_roots参数设置 fileserver_backend: - git - roots
minion分组
nodegroups: web-tomcat: 'L@tomcat1,tomcat2,tomcat3' web-php: 'L@php1,php2,php3' web-all: 'N@retail-tomcat or N@web-php'