Welcome to li chao's blog

若逢新雪初霁,满月当空,下面平铺着皓影,上面流转着亮银,而你带笑地向我步来,月色与雪色之间,你是第三种绝色!

ansible

ansible:

ansible是一个自动化批量部署工具

幂等性:一种操作重复多次结果相同

核心组件:

Ansible:Ansible的核心程序

Host Lnventory:记录了每一个由Ansible管理的主机信息,信息包括ssh端口,root帐号密码,ip地址等等。可以通过file来加载,可以通过CMDB加载

Playbooks:YAML格式文件,多个任务定义在一个文件中,使用时可以统一调用,“剧本”用来定义那些主机需要调用那些模块来完成的功能.

Core Modules:Ansible执行任何管理任务都不是由Ansible自己完成,而是由核心模块完成;Ansible管理主机之前,先调用core Modules中的模块,然后指明管理Host Lnventory中的主机,就可以完成管理主机。

Custom Modules:自定义模块,完成Ansible核心模块无法完成的功能,此模块支持任何语言编写。

Connection Plugins:连接插件,Ansible和Host通信使用

底层是拿python写的:

paramiko

jinja2 (模板语言)

yaml

工作原理:

anisble加载hosts文件,通过免秘钥或配置文件参数来批量管理主机

agent:代理(ansible不需要客户端或agent)

ansible server管理客户端的两种配置方式

第一种方法:

server: ssh-keygen

scp id_rsa.pub root@192.168.254.25:/root/.ssh/authorized_keys

第二种方法:

  1.vim /etc/ansible/hosts

  2.ansible_ssh_user=root ansible_ssh_port=22 ansible_ssh_pass=root

  测试ansible server跟client端的连通性:

ansible testhosts -m ping

 

注意:!遇到这种错误~~

 

 

使用以下方法:

1>

 

 

2>

 

 

3>

 

成功!报错解决~~~

 

 

ansible的一些模块用法:

1>

user模块, -f1 并发线程一次

 

 

2>

command模块,调用一些shell命令

 

 

3>

yum 模块,安装:present 卸载 : absent

 

 

4>

service 模块:启动一个服务 !重启: restarted 启动 started 停止 stopped

 

 

5>copy 模块 ,src :源文件(从哪里复制) dest:目标目录(复制到哪里)

 

5>

查看客户端信息~~

 

 

6>

运行shell 脚本

 

 

 

 

 

posted on 2019-05-06 14:29  lichaoyx  阅读(183)  评论(0编辑  收藏  举报

导航