• SaltStack:salt-api配置 -- 2017年4月26日


    salt-api是Salt上的模块接口,提供各种各样的进入点去运行Salt系统。它可以启动和管理多个接口,允许REST API与XMLRPC、Websocket API共存
    1、在salt-master节点安装salt-api
    yum install - y salt-api  或者 pip install salt-api
     
    2、生成自签名证书(用于ssl)cd /etc/pki/tls/certs
    # 生成自签名证书, 过程中需要输入key密码及RDNs
    make testcert
     
    如果出现以下提示,删除/etc/pki/tls/private下的localhost.key即可
     
    cd /etc/pki/tls/private/
     # 解密key文件,生成无密码的key文件, 过程中需要输入key密码,该密码为之前生成证书时设置的密码
      openssl rsa -in localhost.key -out localhost_nopass.key
     
    3、创建用于salt-api的用户
    useradd -M -s /sbin/nologin saltapi
    echo "saltapi" | passwd saltapi --stdin
    出现passwd: all authentication tokens updated successfully.提示,则密码设置成功
     
    4、在/etc/salt/master or master.d中添加配置信息
    [root@localhost scripts]# cat /etc/salt/master.d/api.conf
    rest_cherrypy:
      port: 8000
      ssl_crt: /etc/pki/tls/certs/localhost.crt
      ssl_key: /etc/pki/tls/private/localhost.key
    [root@localhost scripts]# cat /etc/salt/master.d/eauth.conf
    external_auth:
      pam:
          saltapi:
               - .*
               - '@wheel'  #wheel相关命令权限
               - '@runner' #runner相关命令权限
               - '@jobs'
     
    5、重启salt-master 和 salt-api
    systemctl restart salt-master
    systemctl restart salt-api
     
    6、验证安装
    $ salt -a pam '*' test.ping
    输入配置的用户名 密码, 成功后, eauth.conf配置正确。
     
     
    登录:
    curl -k http://172.16.129.99:8000/login -H "Accept: application/x-yaml"  -d username='saltapi'  -d password='saltapi'  -d eauth='pam'
    显示全部minion key:
    curl -k http://172.16.129.99:8000/ -H "Accept: application/x-yaml" -H "X-Auth-Token: d02075a992548a8b866e26cdd90a1b82dbe8355d" -d client='wheel' -d fun='key.list_all'
    执行cmd.run命令:
    curl -k http://172.16.129.99:8000/ -H "Accept: application/x-yaml" -H "X-Auth-Token: 570e294f87bbc69749ff55c740d99c889ea800f4" -d client='local' -d tgt='*' -d fun='test.ping'
     
     
    配置期间踩的坑:
    出现问题的原因:
    (1)添加用户的密码没有设置正确,要出现passwd: all authentication tokens updated successfully提示,才是正确的
    (2)配置之后要修改配置文件cat /etc/salt/master.d/eauth.conf,在pam下添加用户名称,和用户的权限
    (3)配置之后要重启salt-master和salt-api
     
    出现问题的原因:
    (1)https替换为http
    (2)ip为配置salt-api的机器ip
     
  • 相关阅读:
    List(双向链表)
    Queue(队列)
    Queue(队列)
    Stack(栈)
    Stack(栈)
    Vector(容器)
    gitlab代码库
    Jenkins自动化部署平台
    Maven私服仓库
    VM架构设计文档初稿v0.01
  • 原文地址:https://www.cnblogs.com/jingbostar/p/6773377.html
Copyright © 2020-2023  润新知