#yyds干货盘点# saltshake安装配置

网友投稿 253 2022-11-06


#yyds干货盘点# saltshake安装配置

后台:​​>= 3.6

Mysql >= 5.7.8 (支持Json的Mysql都可以)

Redis(无版本要求)

RabbitMQ (无版本要求)

Python 软件包见requirements.txt

Supervisor (4.0.0.dev0 版本 默认pip安装的不支持python3) 请使用此命令安装:pip install git+>= 9.0

一.安装 saltshaker_api

1 安装

Redis/opt/redis-3.2.8/src/redis-server /opt/redis-3.2.8/redis.conf

2 安装RabbitMQ

要先安装erlang,尽量用较新的版本,先加入yum源

[root@localhost yum.repos.d]# cat rabbitmq_erlang.repo[rabbitmq_erlang]name=rabbitmq_erlangbaseurl=yum.repos.d]# yum -y install erlang

如果内网较慢,可以在先下载,再复制到测试环境

[root@localhost yum.repos.d]# yum -y install erlang --downloadonly --downloaddir=./

安装RabbitMQ,先加入yum源

[root@localhost yum.repos.d]# cat rabbitmq-server.repo[bintray-rabbitmq-server]name=bintray-rabbitmq-rpmbaseurl=yum.repos.d]# yum -y install rabbitmq

ui界面:​ saltshaker saltshaker

4.安装mysql,Mysql >= 5.7.8 (支持Json的Mysql都可以) 同样的mysql也可以先下载,然后复制到测试网络

[root@vm-17-11-centos tmp]# yum -y install mysql-community-client mysql-community-devel mysql-community-libs mysql-community-libs-compat mysql-community-server mysql-community-common --downloadonly --downloaddir=./

如果是升级的mysql,可能会有报错 Native table 'performance_schema'.'session_variables' has the wrong structure

处理方法:在 /etc/my.cnf 加入一行,也可以先手工执行一次,再有报错再加入,网上说法不一

#mysql_upgrade -u root -p --forceroot 1qaz2wsx

5 安装python3

wget /opt/Python-3.6.2./configure --prefix=/opt/Python-3.6make && make installmv /bin/python /bin/python26ln -s /opt/Python-3.6/bin/python3.6 /bin/pythonmv /bin/pip /bin/pip2ln -s /opt/Python-3.6/bin/pip3 /bin/pip修改/usr/bin/yum和/usr/bin/urlgrabber-ext-down两个文件的头文件,即将第一行#!/usr/bin/python 改为 #!/usr/bin/python26

6安装 saltshaker_api

(1)下载安装:

$ cd /opt/$ git clone install -r requirements.txt

(2)导入FLASK_APP环境变量以便使用Flask CLI工具,路径为所部署的app的路径

$ export FLASK_APP=/opt/saltshaker_api/app.py

#这个文件可修改服务的启动端口,这里我写改为9001,不跟salt-master的9000冲突

(3)初始化数据库表及相关信息,键入超级管理员用户名和密码(数据库的配置见saltshaker.conf,请确保数据库可以连接并已经创建对应的数据库)

$ mkdir /var/log/saltshaker_plus$ flask init输出如下:Enter the initial administrators username [admin]: adminEnter the initial Administrators password:Repeat for confirmation:Create user table is successfulCreate role table is successfulCreate acl table is successfulCreate groups table is successfulCreate product table is successfulCreate audit_log table is successfulCreate event table is successfulCreate cmd_history table is successfulCreate host table is successfulCreate grains table is successfulCreate period_task table is successfulCreate period_result table is successfulCreate period_audit table is successfulCreate sls table is successfulInit 超级管理员 role successfulInit 普通用户 role successfulInit 产品管理员 role successfulInit 用户管理员 role successfulInit 访问控制管理员 role successfulInit user successfulSuccessful

也可以直接导入数据库文件saltshaker_plus.sql, 初始化管理员用户名:admin 密码:admin

mysql> source $HOME/saltshaker_api/saltshaker_plus.sql;

(4)启动Flask App, 成功启动后会启动9000的端口

开发模式$ python $Home/saltshaker_api/app.pyGunicorn模式$ cd $Home/saltshaker_api/ && gunicorn -c gun.py app:app生产模式supervisord.conf 里面的directory配置项修改为自己对应的代码路径$ /usr/local/bin/supervisord -c $Home/saltshaker_api/supervisord.conf

(5)启动Celery (使用生产模式的忽略此步骤,因为在Supervisor里面已经启动Celery)

$ cd $Home/saltshaker_api/ && nohup celery -A app.celery worker --loglevel=info &

如有报错: [2019-07-03 15:25:09,953: ERROR/MainProcess] consumer: Cannot connect to amqp://saltshaker:**@10.132.97.115:5672//: Connection.open: (530) NOT_ALLOWED - access to vhost '/' refused for user 'saltshaker'.

执行:

rabbitmqctl set_permissions -p / saltshaker "." "." ".*"

(6)配置Salt Master

yum install salt-api

创建salt api 认证用户名密码,使用pam认证方式

sudo useradd admin # 必须是admin,如果是其他用户,需要对应修改$HOME/saltshaker_api/saltapi.conf里面的adminsudo passwd admin # 记住admin的密码,稍后配置产品线的时候需要填写

配置saltstack api 拷贝 saltshaker_api/saltapi.conf 到 master配置文件下,开启salt-api的Restful接口(端口为8000)

sudo cp $HOME/saltshaker_api/saltapi.conf /etc/salt/master.d/sudo systemctl restart salt-mastersudo systemctl restart salt-api

参考:​​安装saltshaker_frontend

要求 Vue.js > 2.0 要求 Node = 8.11.3 LTS

1.安装node.js

wget config set registry install

部署 0.118上用的是直接部署模式,配置文件 src/config/Global.vue 下serverSrc参数,对应自己的服务器域名或地址

nohup npm run dev

编译修改 src/config/Global.vue 下serverSrc参数,对应自己的服务器域名或地址修改 build/webpack.prod.config.js 下publicPath参数,对应自己的服务器域名或地址#npm run build静态文件 修改 nginx.conf 下proxy_pass的参数, 对应自己的服务器域名或地址生成的静态文件在dist目录下面,可使用Nginx等Web服务器进行部署

参考:​​ ​​ admin admin

俩个启动命令:

cd /opt/saltshaker_frontend/src && nohup npm run dev &cd /opt/saltshaker_api && nohup python /opt/saltshaker_api/app.py &

如果有时候minion无法刷出信息,报401错误, 执行:pam_tally2 --user=admin --reset ,就可以恢复

/etc/pam.d/system-auth中配置凡是调用 system-auth 文件的服务,都会生效#auth required pam_tally.so deny=5vi /etc/pam.d/sshd#auth required pam_tally.so deny=5 unlock_time=600 no_lock_timepip install salt2018.3.0 -i install salt2019.2.0 -c /etc/salt -dsalt-minion -c /etc/salt -dsalt-api -c /etc/salt -d

测试

salt-apicurl -H "Accept: application/x-yaml" -d username='testuser' -d password='testuser' -d eauth=pam


版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:你知道吗?chrome自动更新到104版本,居然引起Java服务内存泄漏
下一篇:在线接口测试(接口测试网站)
相关文章

 发表评论

暂时没有评论,来抢沙发吧~