美文网首页centos应用服务配置
[ansible] ansible的安装,配置和使用

[ansible] ansible的安装,配置和使用

作者: Hellooooooworld | 来源:发表于2017-07-02 17:24 被阅读437次

站在巨人的肩膀上

为什么要使用ansible?
因为要讲部署自动化,批量化!

part.1 ansible的优点是什么

(1)、轻量级,无需在客户端安装agent,更新时,只需在操作机上进行一次更新即可;
(2)、批量任务执行可以写成脚本,而且不用分发到远程就可以执行;
(3)、使用python编写,维护更简单,ruby语法过于复杂;
(4)、支持sudo。

part.2 ansible怎么安装

我在这里用的是比较愚蠢的方法,但是还是能够有效地进行的。

2.1关于依赖包

pip install paramiko PyYAML Jinja2 httplib2 six

在安装paramiko的时候很容易发生错误,主要是可能centos7环境下不存在python-develgccopenssl等包,所以只需要进行yum安装就行。

2.2 clone git包

[root@localhost ~]# git clone git://github.com/ansible/ansible.git --recursive
[root@localhost ~]# cd ./ansible

2.3 添加环境

[root@localhost ~]# vim /etc/profile

然后在末尾添加下面代码

export ANSIBLE_HOME="/root/ansible"
export MANPATH="/root/ansible/docs/man:"
export PATH="/root/ansible/bin:/root/ansible/test/runner:/usr/local/mysql/bin:/usr/local/mysql/bin:/usr/local/mysql/bin:/mnt/jdk1.6.0_30/bin:/mnt/jdk1.6.0_30/jre/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/root/bin:/root/bin"
export PYTHONPATH="/root/ansible/lib:"

2.4 source 运行并查看版本

[root@localhost ~]# source ansible/hacking/env-setup
[root@localhost ~]# ansible --version

2.5 hosts 和roles

在/etc/ansible文件夹中创建hosts文件和roles文件夹

[root@localhost ~]# vim hosts
[root@localhost ~]# mkdir roles

在hosts文件中,主要是分机的ip地址,以及可以添加上

ansible-ssh-user=username ansible-ssh-pass=password

part.3关于ssh的配置

[root@localhost ~]#ssh-keygen 
[root@localhost ~]# ssh-copy-id -i ~/.ssh/id_rsa.pub root@分机ip

part.4 ansible ping测试

若出现如下就是配置成功了。

[root@localhost ~]# ansible all -m ping
192.**.**.** | SUCCESS => {
       "changed":false,
       "failed": false,
       "ping" : "pong"
}

part.5 小结

在hosts文件中,可以对分机进行分组,在进行操作的时候可以选择小组的组名来对小组中的机子进行批量部署。这样就能让自动化的部署变得更加有条理。

相关文章

网友评论

    本文标题:[ansible] ansible的安装,配置和使用

    本文链接:https://www.haomeiwen.com/subject/bftocxtx.html