ansible介绍与安装
一、什么是ansible
ansible是python中一套模块,系统中的一套自动化工具,可以用来作系统管理、自动化命令等任务。
二、ansible优势
1、ansible是Python中一套完整的自动化执行任务模块 2、ansible的play_book模式,采用yaml配置,对于自动化任务执行一目了然 3、自动化场景支持丰富
三、ansible安装
1、通过系统方式:yum,apt-get等
2、通过Python的方式
软件包下载地址: wget https://github.com/ansible/ansible/archive/v2.4.1.0-0.4.rc2.tar.gz (本文采用)python3 ./setup.py install easy_install ansible pip3 install ansible
3、安装成功
devops@devops-virtual-machine:~/devops/ansible-2.4.1.0-0.4.rc2$ which ansible /usr/local/bin/ansible
devops@devops-virtual-machine:~$ ansible --version ansible 2.4.1.0 config file = None configured module search path = ['/home/devops/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/lib/python3.6/dist-packages/ansible-2.4.1.0-py3.6.egg/ansible executable location = /usr/local/bin/ansible python version = 3.6.5 (default, Apr 1 2018, 05:46:30) [GCC 7.3.0]
指定配置文件
devops@devops-virtual-machine:~/devops$ export ANSIBLE_CONFIG=/home/devops/devops/test.cfg devops@devops-virtual-machine:~/devops$ ansible --version ansible 2.4.1.0 config file = /home/devops/devops/test.cfg configured module search path = ['/home/devops/.ansible/plugins/modules', '/usr/share/ansible/plugins/modules'] ansible python module location = /usr/local/lib/python3.6/dist-packages/ansible-2.4.1.0-py3.6.egg/ansible executable location = /usr/local/bin/ansible python version = 3.6.5 (default, Apr 1 2018, 05:46:30) [GCC 7.3.0]
四、配置文件常用项说明
1)inventory 该参数表示资源清单inventory文件的位置,资源清单就是一些Ansible需要连接管理的主机列表 inventory = /root/ansible/hosts 2)library Ansible的操作动作,无论是本地或远程,都使用一小段代码来执行,这小段代码称为模块,这个library参数就是指向存放Ansible模块的目录 library = /usr/share/ansible
3)forks 设置默认情况下Ansible最多能有多少个进程同时工作,默认设置最多5个进程并行处理。具体需要设置多少个,可以根据控制主机的性能和被管理节点的数量来确定。 forks = 5
4)sudo_user 这是设置默认执行命令的用户,也可以在playbook中重新设置这个参数 sudo_user = root //注意:新版本已经作了修改,如ansible2.4.1下已经为: default_sudo_user = root 5)remote_port 这是指定连接被关节点的管理端口,默认是22,除非设置了特殊的SSH端口,不然这个参数一般是不需要修改的 remote_port = 22
官方文档:https://docs.ansible.com/ansible/latest/installation_guide/intro_configuration.html#private-key-file