因为想达到别人说的

MySQL 的账户管理我们通过 saltstack 的 mysql_user 进行管理 

目前所有的 MySQL 账户用户通过 git 管理而密码通过 salt pillar 管理


官网的例子,现在基本清楚,英文真的菜,其实很简单,照抄就行。呵。

https://docs.saltstack.com/en/latest/ref/states/all/salt.states.mysql_user.html#salt.states.mysql_user.absent


密码通过 salt pillar 管理 

参考  通过saltstack批量创建用户,修改密码

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
openssl passwd  - 1 
#cat /srv/salt/user/useradd.sls
{ %  set  user  =  'mall'  % }
{ %  set  home  =  '/mall'  % }
{{ user }}:
   user.present:
     -  password:  '$1$mall$HoAy4FCi9xY6SL.ny97Y91'
     -  uid:  895
     -  gid_from_name:  True
     -  home: {{ home }}
     -  createhome:  True
     -  shell:  / bin / bash
     -  maxdays:  90
cp_skel:
   cmd.run:
     -  name:  'cp /etc/skel/.bash* {{ home }} && chown -R {{ user }}.{{ user }} {{ home }}'
     -  unless: test  - f {{ home }} / .bashrc
#salt '*' state.sls user.useradd
批量密码修改
[root@SHLMWEB02 user] # cat /srv/pillar/user.sls 
users:  
   root: $ 1 $ / siJcbHz$lAqpYrt7. 47PHJo7AZQsy
   mall: $ 1 $UCv5P06w$Rp2fdf / qOonroC.y8tqn00 
[root@SHLMWEB02 user] # cat passwd.sls 
{ %  for  user, passwd  in  pillar.get( 'users' , {}).items()  % }
`user`:
   user.present:
     -  password: `passwd`
{ %  endfor  % }
 
同步密码
#salt '*' state.sls user.passwd