没有合适的资源?快使用搜索试试~ 我知道了~
资源推荐
资源详情
资源评论
主机名 IP地址 角色
Control 192.168.1.100 控制节点
Node1 192.168.1.101 被控制节点 n1
Node2 192.168.1.102 被控制节点n2
Node3 192.168.1.103 被控制节点n3
Node4 192.168.1.104 被控制节点n4
Node5 192.168.1.105 被控制节点n5
Ansible 笔记总结
:! 使用vim时执行命令
:r! 使用vim时执行命令并插入输出结果
ansible 基础
ansible 是自动化工具,基于python 开发
功能:
环境部署
例如
控制端修改hosts 文件
批量系统部署
• 批量程序部署
• 批量运行命令等功能
• 批量安装软件
• 批量修改密码
• 批量修改配置
基于 SSH 架构、模块丰富支持自定义模块、部署简单、社区活跃、支持异构 IT 架构
[root@control ~]# cat /etc/hosts
192.168.1.100 control
192.168.1.101 node1
192.168.1.102 node2
192.168.1.103 node3
192.168.1.104 node4
192.168.1.105 node5
控制端配置SSH 密钥
控制端安装 ansible
ansible 控制节点
要求 python 2.6及以上版本
Python 模块 paramiko、pyYAML、jinja2...
安装方式:yum、源码安装
以下使用yum 安装
先配置yum 源
被控节点
1、ansible 默认通过SSH 协议管理机器
2、被管理节点要开启SSH 服务,并允许控制主机登录
3、被管理主机需要安装Python
控制端查看编辑的/etc/ansible/hosts
[root@control ~]#ssh-keygen -f /root/.ssh/id_rsa -N ''
Generating public/private rsa key pair.
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? y
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
SHA256:NH5A83jY6r8xYWEKPNUPHdycNMUMmglmdtphbZDyCm4 root@control
The key's randomart image is:
+---[RSA 2048]----+
| +.=o*O+*.|
| . o X+*+=*.o|
| + * B==. |
| =.B .o |
| .S.+. |
| .Eo.. |
| .. o |
| . o |
| o. |
+----[SHA256]-----+
[root@control ~]# for i in node1 node2 node3 node4 node5
> do
> ssh-copy-id $i
> done
[root@control ~]# yum install ansible
[root@control ~]# rpm -qa |grep ansible
ansible-2.9.27-1.el7.noarch
控制端查看受管节点
ansible 基本配置
主配置文件
ansible 配置我呢见查找顺序
1、先检测ANSIBLE_CONFIG 变量定义的配置文件
2、其次检查当前目录下的./ansible.cfg 文件
3、其次检查当前用户家目录下~/ansible.cfg 文件
4、最后检查/etc/ansible/ansible.cfg 文件
主配置文件 ansible.cfg
[root@control ansible]# pwd
/etc/ansible
[root@control ~]# cat /etc/ansible/hosts
[test]
192.168.1.101
192.168.1.102
192.168.1.103
192.168.1.104
192.168.1.105
[root@control ansible]# ansible test --list-hosts
hosts (5):
192.168.1.101
192.168.1.102
192.168.1.103
192.168.1.104
192.168.1.105
[root@control ansible]# ls /etc/ansible/ansible.cfg
/etc/ansible/ansible.cfg
#/etc/ansible/ansible.cfg
[defaults]
# some basic default values...
#inventory = /etc/ansible/hosts 主机清单文件
#forks = 5 并发连接数
#ask_pass = True 使用密码还是密钥远程
#host_key_checking = False 是否校验密钥
inventory 主机清单文件
测试Ansible 环境与配置是否正常
ansible adhoc
命令行语法格式
格式
# vim /etc/ansible/hosts
[test]
192.168.1.101
192.168.1.102
192.168.1.103
192.168.1.104
192.168.1.105
#或
[test]
node1
node2
node3
node4
node5
#或
[test]
node[1:5]
#嵌套组 children为关键字
[test1]
node[1:3]
[test2]
node[4:5]
[nodetest:children]
test1
test2
[root@control ansible]# ansible test --list-hosts
hosts (5):
192.168.1.101
192.168.1.102
192.168.1.103
192.168.1.104
192.168.1.105
#ansible 主机合集 -m 模块 -a '参数'
#ansible test -m ping
-k 使用密码远程
-i 指定主机列表文件
ansible 中多数脚本支持参数
默认模块为command
使用模块 -m
使用参数 -a
默认主机列表文件
可以修改 ansible.cfg 文件指定路径
#inventory = /etc/ansible/hosts
测试使用 ping 模块测试
[root@control ansible]# pwd
/etc/ansible
[root@control ansible]# ls
ansible.cfg hosts roles
/etc/ansible/hosts
#ansible test -m ping #test为角色(组角色)
[root@control ~]# ansible node -m ping
node2 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": false,
"ping": "pong"
}
node1 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": false,
"ping": "pong"
}
[root@control ansible]# ansible node1 -m ping
node1 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": false,
"ping": "pong"
}
[root@control ansible]# ansible node2 -m ping
node2 | SUCCESS => {
"ansible_facts": {
"discovered_interpreter_python": "/usr/libexec/platform-python"
},
"changed": false,
"ping": "pong"
}
剩余130页未读,继续阅读
资源评论
s10a03756
- 粉丝: 0
- 资源: 20
上传资源 快速赚钱
- 我的内容管理 展开
- 我的资源 快来上传第一个资源
- 我的收益 登录查看自己的收益
- 我的积分 登录查看自己的积分
- 我的C币 登录后查看C币余额
- 我的收藏
- 我的下载
- 下载帮助
最新资源
- DatabaseWatermarkingBasedonTextFormat
- -移动通信-网络课程设计与研究
- 基于Python的PCA人脸识别算法的原理及实现代码+文档详解.zip
- 甘肃移动全业务工程建设项目管理流程优化研究
- 549springboot + vue 民宿管理平台.zip (可运行源码+数据库文件+文档)
- ZArchiver.Pro_0.9.5.apk
- vmware环境配置.mp4
- 548springboot + vue 大学生社团活动平台.zip(可运行源码+数据库文件+文档)
- 微信小程序 辩论倒计时小程序源码 作业设计demo 计算机专业参考
- 深入探究文件IO,嵌入式Linux
资源上传下载、课程学习等过程中有任何疑问或建议,欢迎提出宝贵意见哦~我们会及时处理!
点击此处反馈
安全验证
文档复制为VIP权益,开通VIP直接复制
信息提交成功