使用Saltstack进行集群管理
各位dalao手上肯定有很多的 独服/VPS 吧
配置统一管理和版本升级一直是个很困难事情 而机器越多这个难度就越大
例如飞机场节点的管理 服务端经常发新的版本 而dalao的机场又有几十个节点 一个个ssh上去然后git pull太费时间也非常无聊
从前我是使用 fabric 来部署我的服务 虽然简单了一点 但还是非常复杂 直到我遇见了 saltstack
本文是面向萌新正常人群的教程 我已经在教程中讲的尽量详细并且简单了
环境部署
首先我们需要台服务器作为管理的服务器
在主服务器上执行 以下命令就可以安装 salt 的master了
curl -L http://bootstrap.saltstack.org | sudo sh -s -- -M -N
当然 去掉了 -N
参数之后就可以安装salt的minion
在同一台机器上
部署子节点
运行以下指令 (替换{Master的IP}) 即可部署minion
curl -SL curl -SL https://github.com/Indexyz/salt/raw/master/script/install.sh | sh -s -- {Master的IP}
在Master上运行
salt-key -A
并输入y来接受子节点的链接
使用
我自己写了一些脚本 储存在 GitHub 欢迎点星星哦
配置文件
编辑/etc/salt/master
找到
#pillar_roots: # base: # - /srv/pillar
删除前面的#来启用pillar
使用以下命令来使用我的脚本库
cd / git clone https://github.com/Indexyz/salt/ srv
编辑 /srv/pillar
下的文件来修改配置
部署
salt '*' state.highstate
全部节点部署集成设施 (将*替换为salt-key时显示的主机名即可在单独的主机部署)
salt 'salt-minion' grains.setval 'node' 1
这样把 salt-minion
主机的 node
值设为了1 这个值在安装魔改的后端的时候有用到 意为节点id
salt 'salt-minion' state.sls shadowsocks-backend.create
这样为salt-minion
安装了魔改的后端
salt '*' state.sls shadowsocks-backend.upgrade # 在 Centos 7, Debian 7,8, Archlinux 2017.05 测试通过
这样会将全部的节点的后端同步到git上的最新版本
salt 还有许多的玩法 比如自己编写salt的部署文件什么的 dalao想要定制脚本? 来和我py吧
关于更深层的概念 可以选择官方的文档 也可以选择Google一下
这里应该只算安利saltstack和自己的脚本吧~
评论
多谢大佬!
支持~~!!