死磕salt系列-salt配置文件
这篇文件主要用来解释一下salt配置中常用的参数,其他的参数可以参考官网文档。
基础参数
interface
: 服务器监听地址。ipv6
: 是否启用ipv6。max_open_files
: 最大文件打开数。worker_threads
: 启动几个主线程。timeout
: 设置saltAPI和命令默认超时时间。state_verbose
: 显示返回状态的详细信息程度。False 只返回变化的地方及执行结果。
日志配置
log_file: /var/log/salt/master
日志文件存放位置。log_level: warning
日志文件的级别。
除了将日志写入到本地,也可以将日志写入到rsyslog中。格式: <file|udp|tcp>://<host|socketpath>:<port-if-required>/<log-facility>
。
log_file: udp://loghost:10514
log的日志级别
- quiet: 不应该配置这个级别的参数。
- critical: 严重错误日志才写入。
- error: 写入错误日志。
- warning: 写入告警级别的日志。
- info: 正常的日志。
- profile: 分析salt的性能信息。
- debug: 详细日志
- trace: 比debug更详细的日志。
- garbage: 更多的详细日志。
- all: 所有的日志。
file_roots 配置
file_roots:
base:
- /data/db/salt/base/
prod:
- /data/db/salt/prod/
test:
- /data/db/salt/test/
存放sls配置文件的地方。可以在salt命令中使用saltenv 知道使用具体的环境。默认是base。
salt 'linux-node2' state.sls nginx.config saltenv=prod
pillar_roots:
base:
- /data/db/salt/pillar
存放pillar配置文件的地方。
salt权限控制
pam 模块权限控制
salt 扩展认证 PAM,可以利用PAM 认证机制对系统账户做出功能操作上的限制。依赖的模块salt.states.external_auth
。
- 认证用户不允许使用root
- 可以限制认证用户可使用的功能模块
- 可以限定认证用户可管理的主机
开启PAM认证
编辑 /etc/salt/master
external_auth:
pam:
salt:
- '*'
创建 salt 用户 设置密码
验证
salt PAM 认证用户 只能通过-a pam
参数才能使用
salt -a pam test.ping
会提示登陆用户,输入密码,如果正确返回结果,说明pam认证已经生效
实例 :
/etc/salt/master
external_auth:
pam:
admin:
- '*' # 所有模块
salt:
- test.ping # test.ping 模块
test:
- 'dev*': # 主机配置规则
- test.ping # Salt 模块
解释:
- admin 用户可管理所有主机,使用所有salt功能模块
- salt 用户可管理所有主机,仅能使用test.ping模块
- test 用户只能管理部分主机,仅能使用test.ping模块
实例1: 以salt用户为例,认证用户必须打开PAM 参数才能操作
失败操作:
salt '*' test.ping
Failed to authenticate, is this user permitted to execute commands?
成功操作:
salt -a pam '*' test.ping
username: salt
password:
ubuntu-master:
True
实例2: 以salt用户为例,执行未授权模块被拒绝
salt -a pam '*' state.highstate
username: salt
password:
Failed to authenticate, is this user permitted to execute commands?
以test用户为例,操作未授权主机被拒绝
失败操作
salt -a pam '*' test
username: test
password:
Failed to authenticate, is this user permitted to execute commands?
成功操作
salt -a pam 'test-001' test
username: test
password:
test-001:
True
参考文档
死磕salt系列-salt配置文件的更多相关文章
- 死磕nginx系列--nginx 目录
死磕nginx系列--nginx入门 死磕nginx系列--nginx配置文件 死磕nginx系统-nginx日志配置 死磕nginx系列--nginx服务器做web服务器 死磕nginx系列--使用 ...
- 死磕nginx系列
死磕nginx系列 死磕nginx系列--nginx入门 死磕nginx系列--nginx配置文件 死磕nginx系统--nginx日志配置 死磕nginx系列--nginx服务器做web服务器 死磕 ...
- 死磕salt系列-salt文章目录汇总
死磕salt系列-salt入门 死磕salt系列-salt配置文件 死磕salt系列-salt grains pillar 配置 死磕salt系列-salt 常用modules 死磕salt系列-sa ...
- 一生挚友redo log、binlog《死磕MySQL系列 二》
系列文章 原来一条select语句在MySQL是这样执行的<死磕MySQL系列 一> 一生挚友redo log.binlog<死磕MySQL系列 二> 前言 咔咔闲谈 上期根据 ...
- MySQL强人“锁”难《死磕MySQL系列 三》
系列文章 一.原来一条select语句在MySQL是这样执行的<死磕MySQL系列 一> 二.一生挚友redo log.binlog<死磕MySQL系列 二> 前言 最近数据库 ...
- S 锁与 X 锁的爱恨情仇《死磕MySQL系列 四》
系列文章 一.原来一条select语句在MySQL是这样执行的<死磕MySQL系列 一> 二.一生挚友redo log.binlog<死磕MySQL系列 二> 三.MySQL强 ...
- 如何选择普通索引和唯一索引《死磕MySQL系列 五》
系列文章 一.原来一条select语句在MySQL是这样执行的<死磕MySQL系列 一> 二.一生挚友redo log.binlog<死磕MySQL系列 二> 三.MySQL强 ...
- 五分钟,让你明白MySQL是怎么选择索引《死磕MySQL系列 六》
系列文章 二.一生挚友redo log.binlog<死磕MySQL系列 二> 三.MySQL强人"锁"难<死磕MySQL系列 三> 四.S 锁与 X 锁的 ...
- 字符串可以这样加索引,你知吗?《死磕MySQL系列 七》
系列文章 三.MySQL强人"锁"难<死磕MySQL系列 三> 四.S 锁与 X 锁的爱恨情仇<死磕MySQL系列 四> 五.如何选择普通索引和唯一索引&l ...
- 无法复现的“慢”SQL《死磕MySQL系列 八》
系列文章 四.S 锁与 X 锁的爱恨情仇<死磕MySQL系列 四> 五.如何选择普通索引和唯一索引<死磕MySQL系列 五> 六.五分钟,让你明白MySQL是怎么选择索引< ...
随机推荐
- javaweb浏览器url上项目名称的更改
如何改变上面url项目名称地址,如把04去掉改成teachershare 如下图:在项目设置中设置web context-root属性,将04去掉. 就可以用这个登录了. 要注意的是如果之前已经部署在 ...
- Oracle数据库基本操作 (五) —— 使用java调用存储过程
一.环境准备 登录Oracle数据库scott账号,利用emp进行操作. 1.创建 proc_getyearsal 存储过程 -- 获取指定员工年薪 create or replace procedu ...
- axios中的qs
qs是一个npm仓库所管理的包,可通过npm install qs命令进行安装. 1. qs.parse()将URL解析成对象的形式 const Qs = require('qs'); let url ...
- linux shell实现守护进程 看门狗 脚本
嵌入式初学者,第一次上传代码.昨天做了一个udhcpd与udhcpc的守护,目前只会用shell模仿编写,还有什么方法可以做守护呢? ? 1 2 3 4 5 6 7 8 9 10 11 12 13 1 ...
- PHP进阶知识总结
周末梳理了下这段时间看书的一些知识点,进步的过程不仅要实践,还要安排多看书.思考.总结. 只针对知识点进行了罗列和简单说明,很多细节还未整理好,待后面再专门详细写. 基础易忽略概念 PHP是一个支持面 ...
- Android解析WindowManagerService(一)WMS的诞生
前言 此前我用多篇文章介绍了WindowManager,这个系列我们来介绍WindowManager的管理者WMS,首先我们先来学习WMS是如何产生的.本文源码基于Android 8.0,与Andro ...
- 三、angularjs上传图片
上传图片需要引入插件ngFileUpload,使用bower安装方法: bower install ng-file-upload --save,安装后需要在命名app的名字js文件中注入,如下所示: ...
- 系统测试用例评审checklist
规则要素内容 使用范围 审查结果 “否”的理由 “免”的理由 规则 建议 是 否 免 规范性规则 用例是否按照公司规定的模板进行编写? √ 用例的 ...
- git 打包报错:Maven Build时提示:Failed to execute goal org.apache.maven.plugins:maven-surefire-plugin:2.12.4:test
1.使用git 升级 服务命令 mvn deploy -e 之后报错: Failed to execute goal org.apache.maven.plugins:maven-surefire- ...
- pt-summary
pt-summary主要是用来统计机器信息: [root@mxqmongodb2 bin]# ./pt-summary # Percona Toolkit System Summary Report ...