一、Grains 组件
1、Grains用法
Grains 是 Salt 组件中非常重要的组件之一,它相当于 Puppet 的 Facter。 主要作用是负 责采集 Minion端的常用属性信息,比如 CPU、内存、磁盘及网络信息等,这个也完全可以 自定义 。 我们可以通过 grains.items 查看某台 Minion 的所有Grains 信息,这里需要大家注意的一点是: Minion端的 Grains信息是 Minion启动的时候自动采集汇报给 Master端的.
- 1)查看所有主机的 Grains项信息
[root@server ~]# salt '*' grains.ls
讯享网
- 2)获取单个Minion主机的单项Grains数据,如获取操作系统版本
讯享网[root@server ~]# salt 'node1' grains.item os node1: ---------- os: CentOS
- 3)获取其他相关信息,例如 Shell 版本
[root@server ~]# salt 'node1' grains.item shell node1: ---------- shell: /bin/sh
2、自定义grains
在实际工作中,我们需要结合自己的业务需求来自定义一些 Grains
- 1)使用配置文件 自行定义。
利用配置文件来进行自定义,采用yaml格式
讯享网#编辑配置文件 [root@node1 ~]# vim /etc/salt/minion 12 default_include: minion.d/*.conf //去掉#号 #创建用来自定义grains的配置文件 [root@node1 ~]# vim /etc/salt/minion.d/grains.conf grains: roles: - webserver - memcache deployment: datacenter4 cabinet: 13 cab_u: 14-15 #刷新Grains内容,可以重启Minion也可以master执行刷新命令 [root@node1 ~]# systemctl restart salt-minion.service 或 [root@server ~]# salt '*' saltutil.sync_grains #查看我们自己定义的键值 [root@server ~]# salt 'node1' grains.item roles node1: ---------- roles: - webserver - memcache [root@server ~]# salt 'node1' grains.item deployment node1: ---------- deployment: datacenter4 [root@server ~]# salt 'node1' grains.item cabinet node1: ---------- cabinet: 13
二、Pillar组件
1、pillar简介
pillar也是 Salt最重要的组件之一 ,其作用是定义 Master端与 Minion端相关的所有 数据,相当于是数据管理中心 。 pillar 的安全性很高,因此 其适用于一 些比较敏感的数据 , 这也是 pillar有别于 Grains的地方。 Salt默认将 Master端配置文件中的所有数据都定义 到 pillar 中,而且对所有的 Minion 端机器开放,我们可以通过修改/etc/salt/master配置中 的 pillar_opts 的值为 True 或 False回来定义开启或禁用这项功能,修改后执行” salt ‘*’ pillar.data”, 并观察效果,记得要重启一下Master的Salt服务,这里还是在Master机器上执行以 下命令,
[root@server salt]# salt '*' pillar.data node1: ---------- master: ---------- __role: master auth_mode: 1 auto_accept: False cache_sreqs: True cachedir: /var/cache/salt/master cli_summary: False client_acl: ---------- client_acl_blacklist: ---------- cluster_masters: cluster_mode: paranoid con_cache: False conf_file: /etc/salt/master config_dir: /etc/salt cython_enable: False daemon: False default_include: master.d/*.conf enable_gpu_grains: False enforce_mine_cache: False enumerate_proxy_minions: False environment: None event_return: event_return_blacklist: event_return_queue: 0 event_return_whitelist: ext_job_cache: ext_pillar: extension_modules: /var/cache/salt/extmods external_auth: ---------- failhard: False file_buffer_size: file_client: local file_ignore_glob: None file_ignore_regex: None file_recv: False file_recv_max_size: 100 file_roots: ---------- base: - /srv/salt fileserver_backend: - roots fileserver_followsymlinks: True fileserver_ignoresymlinks: False fileserver_limit_traversal: False gather_job_timeout: 10 gitfs_base: master gitfs_env_blacklist: gitfs_env_whitelist: gitfs_insecure_auth: False gitfs_mountpoint: gitfs_passphrase: gitfs_password: gitfs_privkey: gitfs_pubkey: gitfs_remotes: gitfs_root: gitfs_user: hash_type: md5 hgfs_base: default hgfs_branch_method: branches hgfs_env_blacklist: hgfs_env_whitelist: hgfs_mountpoint: hgfs_remotes: hgfs_root: id: node1 interface: 0.0.0.0 ioflo_console_logdir: ioflo_period: 0.01 ioflo_realtime: True ioflo_verbose: 0 ipv6: False jinja_lstrip_blocks: False jinja_trim_blocks: False job_cache: True keep_jobs: 24 key_logfile: /var/log/salt/key keysize: 2048 log_datefmt: %H:%M:%S log_datefmt_logfile: %Y-%m-%d %H:%M:%S log_file: /var/log/salt/master log_fmt_console: [%(levelname)-8s] %(message)s log_fmt_logfile: %(asctime)s,%(msecs)03.0f [%(name)-17s][%(levelname)-8s][%(process)d] %(message)s log_granular_levels: ----------

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/69401.html