菜鸟玩云计算之廿一:saltstack之pillar


菜鸟玩云计算之廿一: saltstack之pillar

 

查看pillar数据:

 

# salt '*' pillar.items
pillar的默认根目录在:/srv/pillar,可以通过下面的参数更改配置文件/etc/salt/master:

 

pillar_roots: your_dir

saltstack的入口文件分别是/srv/pillar/top.sls 与 /srv/salt/top.sls. 入口文件的意思就是,在minion“客户端”上,每次请求服务端配置的时候,它们实际上所请求的是这两个文件,虽然有很多的sls文件,但其实它们都是通过这两个文件所关联起来的。

 

建立下面的pillar根目录,并创建入口文件: top.sls

# mkdir /srv/pillar
# vi /srv/pillar/top.sls

top.sls:

 

base:
  '*':
    - data

上面这个入口文件指定了/srv/pillar/data.sls文件,适用于所有minions. ('*').

 

data.sls:

 

info: somedata

 

刷新所有节点的pillar:

 

# salt '*' saltutil.refresh_pillar
202:
True
203:
True
再次查看节点的pillar:

 

 

# salt '*' pillar.items
202:
----------
info:
some data

 

...

203:
----------
info:
some data
...
如果在/srv/pillar/下面创建子目录users/,在top.sls中可以直接引用到init.sls. 例如:

 

# mkdir /srv/pillar/users
# vi /srv/pillar/users/init.sls

init.sls内容如下:

 

users:
  jhonson: 2001
  tom: 2993
  peter: 3098
  tex: 18990

为了在top.sls能引用到users,需要更改为:

 

 

base:
  '*':
    - data
    - users

 

刷新并显示:

 

# salt '*' saltutil.refresh_pillar
# salt '*' pillar.item users
203:
----------
users:
----------
jhonson:
2001
peter:
2098
tex:
18900
tom:
2993
202:
----------
users:
----------
jhonson:
2001
peter:
2098
tex:
18900
tom:
2993

 

再来一个例子:

 

# mkdir /srv/pillar/hadoop
# vi /srv/pillar/hadoop/params.sls
params.sls:

 

 

hdfs:
  namenode: 192.168.122.201
  stadbynode: 192.168.122.202

hbase:
  master: 192.168.122.201

# vi /srv/pillar/top.sls
top.sls:

 

 

base:
  '*':
    - data
    - users
    - hadoop.params

测试使用:

 

 

# salt '*' saltutil.refresh_pillar
# salt '*' pillar.items

 

相关内容

    暂无相关文章