zoukankan      html  css  js  c++  java
  • SaltStack快速入门

    一、SaltStack的介绍

    SaltStack,简称salt,自动化管理工具,一种全新的基础设施管理方式,部署轻松,在几分钟内可运行起来,扩展性好,很容易管理上万台服务器,速度够快,服务器之间秒级通讯。

    salt使用python语言开发。

    salt的运行方式:

      1.Local

      2.Master/Minion  (传统)

      3.Salt SSH

    salt的三大功能:

      1.远程执行

      2.配置管理

      3.云管理

    二、SaltStack安装及配置

    saltstack没有在默认的安装包里,安装它需要先安装epel第三方源。

    centos6安装

    rpm -ivh http://dl.fedoraproject.org/pub/epel/6/i386/epel-release-6-8.noarch.rpm
    rpm -ivh http://dl.fedoraproject.org/pub/epel/6/x86_64/epel-release-6-8.noarch.rpm

    server:

    # yum install -y salt-master
    

    Client1:

    # yum install -y salt-minion
    

    Client2:

    # yum install -y salt-minion
    

    把服务加入到开机自动启动

    ## server
    # chkconfig salt-master on
    ## client
    # chkconfig salt-minion on

    在Client端,配置/etc/salt/minion

    # 16行变更 #master: salt --> master:  192.168.92.3
    master: 192.168.92.3
    
    #id:为空,表示FQN名
    

    启动master和client

    # service salt-master start
    #或
    # /etc/init.d/salt-master start
    
    # service salt-minion start
    #或
    # /etc/init.d/salt-minion start
    

    三、使用

    1.key认证

    查看认证状态

    添加认证客户端

    ## -A 全部主机
    # salt-key -A
    
    ## -a 添加个别主机
    # salt-key -a server
    # salt-key -a client

    再次查看key认证状态:

    注意:

    删除 # salt-key -d xx
    
    全部删掉 # salt-key -D  (慎用) 

    2.远程执行功能

    # salt '*' test.ping
    client:
        True
    server:
        True
    # salt '*' cmd.run 'uptime'
    client:
         00:57:47 up  2:31,  1 user,  load average: 0.05, 0.03, 0.05
    server:
         00:57:47 up 29 min,  1 user,  load average: 0.03, 0.05, 0.08
    # salt '*' cmd.run 'df -h'
    client:
        Filesystem            Size  Used Avail Use% Mounted on
        /dev/mapper/vg_wuyouwei-lv_root
                               18G  4.0G   13G  25% /
        tmpfs                 491M   80K  491M   1% /dev/shm
        /dev/sda1             477M   35M  418M   8% /boot
    server:
        Filesystem            Size  Used Avail Use% Mounted on
        /dev/mapper/vg_wuyouwei-lv_root
                               18G  3.9G   13G  24% /
        tmpfs                 491M   88K  491M   1% /dev/shm
        /dev/sda1             477M   35M  418M   8% /boot
    

    3.配置管理(安装软件)

    在server端,编辑/etc/salt/master

    ## 把注释放开 --->
     file_roots:
       base:
         - /srv/salt/
    
    # base前面必须是2个空格
    # - 前面是4个空格

    若/srv/salt/目录不存在,请创建。

    # mkdir /srv/salt/
    # /etc/init.d/salt-master restart
    

    (很重要)在server端写状态配置

    # cd /srv/salt/
    [root@server salt]# ll
    total 0
    [root@server salt]# vim apache.sls

     #编辑内容,注意空格

    执行安装命令

    # salt '*' state.sls apache
    server:
    ----------
              ID: apache-install
        Function: pkg.installed
            Name: httpd
          Result: True
         Comment: Package httpd is already installed.
         Started: 01:22:39.526997
        Duration: 1258.992 ms
         Changes:   
    ----------
              ID: apache-install
        Function: pkg.installed
            Name: httpd-devel
          Result: True
         Comment: Package httpd-devel is already installed.
         Started: 01:22:40.786220
        Duration: 0.55 ms
         Changes:   
    ----------
              ID: apache-service
        Function: service.running
            Name: httpd
          Result: True
         Comment: Service httpd is already enabled, and is in the desired state
         Started: 01:22:40.787406
        Duration: 35.421 ms
         Changes:   
    
    Summary
    ------------
    Succeeded: 3
    Failed:    0
    ------------
    Total states run:     3
    client:
    ----------
              ID: apache-install
        Function: pkg.installed
            Name: httpd
          Result: True
         Comment: Package httpd is already installed.
         Started: 01:22:39.542822
        Duration: 1315.972 ms
         Changes:   
    ----------
              ID: apache-install
        Function: pkg.installed
            Name: httpd-devel
          Result: True
         Comment: Package httpd-devel is already installed.
         Started: 01:22:40.859029
        Duration: 0.584 ms
         Changes:   
    ----------
              ID: apache-service
        Function: service.running
            Name: httpd
          Result: True
         Comment: Service httpd is already enabled, and is running
         Started: 01:22:40.860278
        Duration: 138.662 ms
         Changes:   
                  ----------
                  httpd:
                      True
    
    Summary
    ------------
    Succeeded: 3 (changed=1)
    Failed:    0
    ------------
    Total states run:     3

    apache已经成功安装,正常启动

     注:若将Client端的apache服务停掉,还是会自动同步启动

    定义高级状态

    # 编辑入口文件
    # vim top.sls
    base:
      '*':
        - apache
    

    执行

    # salt '*' state.highstate
  • 相关阅读:
    Hanoi塔
    采药
    进制转换(大数)
    Load Balancing with NGINX 负载均衡算法
    upstream模块实现反向代理的功能
    epoll
    在nginx启动后,如果我们要操作nginx,要怎么做呢 别增加无谓的上下文切换 异步非阻塞的方式来处理请求 worker的个数为cpu的核数 红黑树
    粘性会话 session affinity sticky session requests from the same client to be passed to the same server in a group of servers
    负载均衡 4层协议 7层协议
    A Secure Cookie Protocol 安全cookie协议 配置服务器Cookie
  • 原文地址:https://www.cnblogs.com/share100/p/6828708.html
Copyright © 2011-2022 走看看