• SaltStack(二) 安装使用


    SaltStack 安装 

      1、安装环境

     [root@salt-server ~]# uname -a
     Linux salt-server 2.6.32-642.el6.x86_64
     [root@salt-server ~]# cat /etc/redhat-release
    CentOS release 6.8 (Final)    

      2、安装指定epel源

    rpm -Uvh http://mirrors.yun-idc.com/epel/6Server/x86_64/epel-release-6-8.noarch.rpm   

      3、安装SaltStack       

    安装master
        yum -y install salt-master
    安装minion
        yum -y install salt-minion

      4、Salt相关配置文件

        master端   

              /etc/salt/master #配置文件
                    /var/log/salt/master #日志文件
                    /etc/init.d/salt-master #启动文件
                    
                    以下是Master端常用的配置:/etc/salt/master
                        interface:指定bind的地址,默认为0.0.0.0
                        publish_port:指定发布端口,默认为4505
                        ret_port:指定结果返回端口,与minion配置文件中的master_port对应,默认为4506
                        uesr:指定master进程的运行用户,如果调整,则需要调整部分目录的权限,默认权限为root
                        timeout:指定timeout时间,如果minion规模庞大或⺴络状况不好,建议增⼤该值,默认5s
                        keep_jobs:默认情况下,minion会执行结果会返回master,master会缓存到本地的cachedir目录,该参数指定缓存多长时间,以供查看之前的执行结果,会占用磁盘空间,默认为24h
                        job_cache:master是否缓存执行结构,如果规模庞大(超过5000台),建议使用其他方式来存储jobs,关闭本选项,默认为True
                        file_recv:是否允许minion传送文件到master上,默认是Flase
                        file_roots:指定file server目录,默认为:
                            file_roots:    
                               base:    
                                - /srv/salt
                        pillar_roots:指定pillar目录,默认为:
                            pillar_roots:     
                                base:     
                                 - /srv/pillar
                        log_level:执行日志级别,支持的日志级别由'garbage', 'trace', 'debug', info', 'warning', 'error', ‘critical ’ ,默认为’warning’

        Minion端   

              /etc/salt/minion #配置文件
                    /etc/init.d/salt-minion #启动文件
                    Minion常用配置
                        master:指定master主机,默认为salt
                        mastar_port:指定认证和执行结果发送到master的哪个端口,与master配置文件中的ret_port对应,默认为4506
                        id:指定minion的标识,Salt内部使用id作为标识,默认为主机名
                        user:指定运行minion的用户,由于安装包,启动服务等操作需要特殊用户,推荐使用root,默认为root
                        cache_jobs:minion是否缓存执行结果,默认为False
                        backuo_mode:在文件操作(file.managed或file.recurse)时,如果文件发送更改,指定备份目录,当前有效的值为minion,备份在cachedir/file_backups目录下,以原始文件名称加时间戳来命名,默认为Disabled
                        providers:指定模块对应的providers,如果RHRL系列中,pkg对应的providers是yumpkg5
                        renderer:指定配置管理系统中的渲染器,默认值为:yaml_jinja
                        file_client:指定file client默认去哪里(remotr或local)寻找文件,默认值为remote
                        loglevel:指定日志级别,默认为warnning
                        tcp_keepalive:minion是否与master保持keepalive检查,zeromq3一下版本存在keepalive bug,会导致某些情况下链接异常后minion无法重连master,建议有条件的话吧zeromq3以上版本,默认为True
                    修改minion配置文件
                        vim /etc/salt/minion
                        master: salt #可以指定主机名或域名(需要在hosts中配置解析),可以直接配置IP,强烈建议配置主机名或IP。
                        id:唯一标识符,默认为主机名。

      5、SaltStack认证

            Salt的数据传输是通过AES加密的,Master和Minion之间在通信之前,需要进行认证,通过认证的方式保证安全性,完成一次认证后,Master就可以自由的控制Minion来完成各项工作了,了解了认证的详细有助于我们在日常管理中管理Minion,已经及时处理问题。
                1、minion在第一次启动时,会在/etc/salt/pki/minion/下自动生成minion.pem(private key)和minion.pub(public key),然后将minion.pub发送给master。
                2、master在第一次启动时,会在/etc/salt/pki/master下自动生成master.pem。在接收到minion的public key后,通过salt-key命令accept minion public key,这样在master的/etc/salt/pki/master/minions下的将会存放以minion id命名的public key,客户端会保存一份master的public key,在/etc/salt/pki/minion_master.pub
                3、通过两个步骤的验证,master就能对minion发送指令了。            

      6、Master端key认证       

            在上面一个小节已经提到了Master与Minion的认证方式,只有Master接受了Minion的Key后,才能进行管理。具体的认证命令为salt-key,常用的有如下命令。
          

     salt-key        
                -a          #添加指定id
                -A          #添加全部
                -r          #拒绝指定id
                -R          #拒绝全部
                -d          #删除指定id
                -D          #删除全部
                -y          #去除每步操作确认的一步。
            例如:
                查看需要认证的minion
                    [root@salt-server ~]# salt-key
                    Accepted Keys:
                    salt-client
                    Denied Keys:
                    Unaccepted Keys:
                    Rejected Keys:
                认证Minion:
                    salt-key -a salt-client
            
            提示:无论是accept还是delete都支持Linux的shell通配符。
  • 相关阅读:
    pycharm 代码块缩进、左移
    os.popen(cmd) .read() 获取执行后的结果且带有换行符
    数据分析基础路线了解
    Jupyter中python3之numpy练习
    Mysql数据库操作命令行小结
    Mysql配置主从同步的基本步骤
    百度翻译爬虫-Web版(自动生成sign)
    windows中的常用Dos命令
    Cookie安全隐患DOM演示
    bash漏洞技术层面分析(cgi-bin)
  • 原文地址:https://www.cnblogs.com/cxcx/p/6212040.html
Copyright © 2020-2023  润新知