zoukankan      html  css  js  c++  java
  • SaltStack数据系统

        SaltStack是一种革命性的基础设施管理方法,它以速度取代复杂性。SaltStack很简单,可以在几分钟内运行,足以管理数万台服务器,并且可以在几秒内快速地与每个系统进行通信。

    SaltStack运行方式
        1、Local
        2、Master/Minion
        3、Salt SSH

    SaltStack三大功能
        1、远程执行
        2、配置管理
        3、云管理

    SaltStack的数据系统
        Grains:(存放Minion启动时收集的系统信息)
            信息查询:
            列出node1的item:salt 'node1' grains.ls
            显示items的信息:salt 'node1' grains.items
            显示单个item的信息:salt 'node1' grains.item fqdn
                              salt 'node1' grains.get fqdn
            指定在哪个操作系统上执行: salt -G os:CentOS cmd.run 'w'
            可以在minion中配置grains然后执行操作:
                如在/etc/salt/minion中加入:
                grains:
                  roles:
                    - nginx
            或者在/etc/salt下创建grains文件,加入:
                roles:
                  - nginx
                重启minion服务:
                salt -G  roles:nginx cmd.run 'w'
            或者在top.sls中使用(roles:nginx冒号边上不能有空格,match: grain不能加s):
                base:
                  'roles:nginx':
                    - match: grain
                    - apache    
        Pillar:(在master端指定想要的数据)
            查看系统中有哪些pillar:salt "*" pillar.items
                需要先打开配置才能看到哦:
                sed -i 's/# pillar_opts: False/pillar_opts: True/g' /etc/salt/master
                重启服务
                配置并简单使用pillar
                sed -i 's/pillar_opts: True/# pillar_opts: False/g' /etc/salt/master
                将/etc/salt/master中的注释放开:
                pillar_roots:
                  base:
                   - /srv/pillar
                重启服务
                创建/srv/pillar目录
                mkdir -pv /srv/pillar
                创建pillar文件:
                [root@server pillar]# cat apache.sls
                {% if grains['os'] == 'CentOS' %}
                apache: httpd
                {% elif grains['os'] == 'Debian' %}
                apache: apache2
                {% endif %}
                [root@server pillar]# cat top.sls
                base:
                  '*':
                    - apache
                查看pillar的items
                salt '*' pillar.items
                刷新配置
                salt '*' saltutil.refresh_pillar
                测试配置结果
                salt -I 'apache:httpd' test.ping        
        
        Grains和Pillar的区别
            1、存储位置:Grains存储在Minion端,Pillar存储在Master端
            2、数据类型:Grains的数据类型是静态数据类型(修改配合需要重启Minion),Pillar是动态数据类型(配置好刷新就可以使用)
            3、数据采集更新方式:
                Grains在Minion启动时收集,也可以使用saltutil.sync_grains进行刷新
                Pillar在Master端定义,指定给对应的Minion,可以使用saltutil.fresh_pillar刷新
            4、应用:
                Grains存储Minion基本数据,比如用于匹配Minion,自身数据可以用来做资产管理等。
                Pillar存储Master指定的数据,只有指定的Minion可以看到,用于敏感数据保存
                

  • 相关阅读:
    Linux就该这么学28期——Day03 2.4-2.7
    Linux就该这么学28期——Day02 2.1-2.3
    Linux就该这么学28期——开篇
    层次遍历应用

    二叉树
    Linux 随手记录
    KMP算法详解(转)
    使用MySQL connector/C++链接MySQL数据库
    C++ 代码片段
  • 原文地址:https://www.cnblogs.com/fansik/p/7493812.html
Copyright © 2011-2022 走看看