设为首页 收藏本站
查看: 1538|回复: 0

[经验分享] 自动化运维神器之saltstack (一)安装部署

[复制链接]
累计签到:1 天
连续签到:1 天
发表于 2014-11-14 11:35:05 | 显示全部楼层 |阅读模式
最近搭建了一个5节点的hadoop集群,这个过程中,涉及到各个节点间做ssh等效性、时间同步、服务启动和停止。我的做法是使用SCRT打开5个窗口远程到各个节点,然后在各个窗口中输入同样的命令,启动同样的服务。刚开始还好,到了后面我需要在各个节点上来回的切换用户,然后执行一些命令,然后再切换回root用户做一些授权的操作,尽管使用sudo可以提升普通用户的权限,但是我仍感到无比的麻烦,更重要的是目前是5个节点,如果集群是50个节点甚至是500个节点时,我仍要用这种方法吗?显然是愚蠢的做法!我渴望对着一个黑窗口,噼里啪啦一阵狂敲,所有的节点都嗷嗷叫,为了能够装Bigger,我决定学习一个自动化运维的工具。
    纠结:saltstack or puppet
    因为听说google内部使用的是puppet,所以刚开始晕着头把puppet搭建起来,尝试学习使用它,无奈一段时间以后,发现自己真是屌丝一枚,无法真正领略puppet的惊艳,更准确的来说,是因为自己内心迫切的想体验使用这样的工具来实现自己的统帅N多节点的快感,因此,放弃使用puppet,改为更为轻量的saltstack,而且配置简单,saltstack的核心功能是:配置管理和远程执行。你可以在master节点上一条命令,然后所有的节点都嘚啵嘚啵的开始执行,更重要的是你可以在master的控制台看到各个节点的返回结果。puppet 10 节点以上开始收费,而saltstack完全免费。学习的过程中,顺便记录下过程,方便自己也服务他人。


    好,开始正题,首先看我的环境:
    节点操作系统均为centos6.5,使用centos自带网络yum源+epel扩展源

    hadoop0.updb.com 192.168.0.100     master

    hadoop1.updb.com 192.168.0.101     minion

    hadoop2.updb.com 192.168.0.102     minion
    hadoop3.updb.com 192.168.0.103     minion
    hadoop4.updb.com 192.168.0.104     minion
    hadoop5.updb.com 192.168.0.105     minion
1、在master和minion上安装软件
    master:

1
yum install salt-master -y



    minion
1
yum install salt-minion -y



2、修改minion的配置文件,让minion能够找到master,每个minion都要修改,以hadoop1为例
1
2
3
vi /etc/salt/minion    ## minion配置文件中只修改两行
#master: salt -->改为master: 192.168.0.100
#id: -->改为id: hadoop1



    需要注意这里的id是给minion起的别名,作为唯一标识,各个minion不能重复
3、启动各minion节点的服务
1
/etc/init.d/salt-minion start



4、启动master节点服务,并通过认证minion keys实现master和minion之间的通信
1
/etc/init.d/salt-master start



    使用salt-key -L 列出所以没有认证,认证过,拒绝认证的证书
1
2
3
4
5
6
7
8
9
[iyunv@hadoop0 ~]# salt-key -L
Accepted Keys:
Unaccepted Keys:
hadoop1
hadoop2
hadoop3
hadoop4
hadoop5
Rejected Keys:



    使用salt-key -A来签名所有状态为Unaccepted的证书
1
2
3
4
5
6
7
8
9
10
11
12
13
14
[iyunv@hadoop0 ~]# salt-key -A
The following keys are going to be accepted:
Unaccepted Keys:
hadoop1
hadoop2
hadoop3
hadoop4
hadoop5
Proceed? [n/Y] y
Key for minion hadoop1 accepted.
Key for minion hadoop2 accepted.
Key for minion hadoop3 accepted.
Key for minion hadoop4 accepted.
Key for minion hadoop5 accepted.



    验证,发现所有的minion证书已经被master签名
1
2
3
4
5
6
7
8
9
[iyunv@hadoop0 ~]# salt-key -L
Accepted Keys:
hadoop1
hadoop2
hadoop3
hadoop4
hadoop5
Unaccepted Keys:
Rejected Keys:



5、测试通信是否正常
1
2
3
4
5
6
7
8
9
10
11
[iyunv@hadoop0 ~]# salt '*' test.ping
hadoop4:
    True
hadoop3:
    True
hadoop2:
    True
hadoop5:
    True
hadoop1:
    True



    返回结果全为True,通信功能正常。
6、牛刀小试,我想在master上查看所有节点的当前时间,如下
1
2
3
4
5
6
7
8
9
10
11
[iyunv@hadoop0 ~]# salt '*' cmd.run "date"
hadoop1:
    Sun Oct 26 16:16:09 CST 2014
hadoop3:
    Sun Oct 26 08:16:08 GMT 2014
hadoop5:
    Sun Oct 26 08:16:09 GMT 2014
hadoop4:
    Sun Oct 26 08:16:09 GMT 2014
hadoop2:
    Sun Oct 26 08:16:08 GMT 2014




    看到这个结果,老脸盛开的像朵菊花,心里那个爽啊!saltstack既然号称神器,当然不可能只会显示时间,接下来,慢慢体会并会持续记录。ok,engoying!


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-29424-1-1.html 上篇帖子: 基于saltstack实现的配置集中化管理 下篇帖子: 自动化运维神器之saltstack (二)文件服务器
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表