saltstack学习笔记(二)数据系统

    数据系统分为Grains和Pillar

    Grains:minion启动时从minion端收集到的信息,只有启动时才会收集。又被称为静态数据。

    salt '*' grains.ls

     -  SSDs

    - cpu_flags
    - cpu_model
    - cpuarch
    - domain
    - fqdn
    - fqdn_ip4
    - fqdn_ip6
    - gpus
    - host
    - hwaddr_interfaces
    - id
    - init
    - ip4_interfaces
    - ip6_interfaces
    - ip_interfaces
    - ipv4
    - ipv6
    - kernel
    - kernelrelease
    - locale_info
    - localhost
    - lsb_distrib_codename
    - lsb_distrib_id
    - lsb_distrib_release
    - master
    - mdadm
    - mem_total
    - nodename
    - num_cpus
    - num_gpus
    - os
    - os_family
    - osarch
    - oscodename
    - osfinger
    - osfullname
    - osmajorrelease
    - osrelease
    - osrelease_info
    - path
    - ps
    - pythonexecutable
    - pythonpath
    - pythonversion
    - saltpath
    - saltversion
    - saltversioninfo
    - selinux
    - server_id
    - shell
    - virtual

    - zmqversion

一:收集信息

[root@linux-2 files]# salt '1-82-bj-longling' grains.get fqdn
1-82-bj-longling:
    iZ2zeeq8l394wf6xol4y8aZ
[root@linux-2 files]# salt '1-82-bj-longling' grains.item fqdn
1-82-bj-longling:
    ----------
    fqdn:

        iZ2zeeq8l394wf6xol4y8aZ

二:匹配minion

   1,salt -G os:CentOS cmd.run 'w' #-G 以grains匹配 os系统

    2,修改配置文件 /etc/salt/minion或者/etc/salt/grains\

    roles:nginx#也可以写为web: nginx

    salt -G 'roles:nginx' cmd.run 'echo hehegra'

    [root@linux-2 files]# salt -G 'roles:nginx' cmd.run 'echo 0'
    linux-2.example.com:
    0

     上面两种设置方式不能同名,并且每次更改都需要重启minion服务

     3,vim /srv/salt/base/top.sls

        base:        

            'roles: nginx':

            - match: grain

            - apache           

        top.sls匹配主机执行apache.sls


    Pillar:是master端指定给特定minion端的数据,可以使用saltutil_refresh_pillar刷新,又称为动态数据。用于敏感数据保存


猜你喜欢

转载自blog.csdn.net/linux_s2018/article/details/80081524