首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

自动化运维,如何快速实现自动部署Salt-Minion

这个小孩在成长的过程中,会不会梦想着成为一名战斗机飞行员呢。哈哈这我咋知道,但我知道你跑题了。好吧!

前面写了些关于监控方面的内容,今天介绍自动化在我们团队里的应用,通过标题大家知道,我们主要选择salt,但要使用salt功能是需要部署agent的,那在OS没有安装salt-minion之前,如何快速批量部署salt-minion呢。当然是salt-ssh啊,它是依赖ssh来进行远程命令执行的工具,同时也能够应用salt state状态管理,好处是不需要客户端任何配置,只需ssh服务即可。最关键的是能够应用salt state状态管理。

Salt ID命名规范

使用salt之前,需要有一套id的命名规范,为什么会认为ID命名很重要,主要是在使用的过程中,命名不规范,在定位主机时,会遇到各种不爽。关于命令规则有2个原则可以参考

1. 资源命名应以快速搜索,或者快速定位某个应用/某台主机为目的

2. 以组为单位,不要精确到某个具体应用,除非主机挪为它用

Excel转换YAML功能

若单次部署服务器数量多的情况下,通过程序转换会快许多。这里用到pyexcel模块,使用前需要安装

Excel表格样例

使用说明

Python脚本,核心功能已实现,但没有对表格里的数据是否合法进行验证。

转换后的内容(/etc/salt/roster)

编写Salt State(SLS)

目录结构

├── files

│ └── minion

├── init.sls

└── setting.jinja

变量定义(setting.jinja)

定义了些常规变量,多个数据中心,并且在1个数据中心内支持多个salt master

安装salt-minino sls编写(init.sls)

我们salt key中已包含数了据中心的信息,下面的sls里会基于saltid来识别主机属于哪个数据中心。

配置文件(files/minion)

minion配置文件主要修改2个参数。文件其它内容省略了。

部署前加上test参数,确认没问题的情况下再部署

部署salt-minion

若觉得文章还行,那就关注我公众号吧!

如何快速实现自动部署Salt-Minion

  • 发表于:
  • 原文链接http://kuaibao.qq.com/s/20180318G0O4RH00?refer=cp_1026
  • 腾讯「腾讯云开发者社区」是腾讯内容开放平台帐号(企鹅号)传播渠道之一,根据《腾讯内容开放平台服务协议》转载发布内容。
  • 如有侵权,请联系 cloudcommunity@tencent.com 删除。

扫码

添加站长 进交流群

领取专属 10元无门槛券

私享最新 技术干货

扫码加入开发者社群
领券