Ansible-相关工具命令ansible、ansible-doc、ad-hoc
1、ansible
1.1、作用
此工具通过 ssh 协议 ,实现对远程主机的配置管理,应用部署、任务执行等功能
1.2、ansible 命令使用格式
ansible <host-pattern> [-m module_name] [-a args]
1.3、ansible 命令常用选项说明
--version # ansible版本信息
-v # 显示详细信息
-i # 主机清单文件路径,默认是在/etc/ansible/hosts
-m # 使用的模块名称,默认使用command模块
-a # 使用的模块参数,模块的具体动作
-k # 提示输入ssh密码,而不使用基于ssh的密钥认证
-C # 模拟执行测试,但不会真的执行
-T # 执行命令的超时
--become-user # 指定sudo时的用户名称,默认为root
1.4、ansible 的 host-pattern 使用
1.4.1、指定操作所有的组
ansible all -m ping
1.4.2、通配符
ansible "*" -m ping ansible 10.0.0.* -m ping
1.4.3、与:在webservers组;并且在dbservers中的主机
ansible "webservers:&dbservers" -m ping
1.4.4、或:在webservers组,或者在appservers中的主机
ansible "webservers:appservers" -m ping
1.4.5、非:在webservers组,但不在apps组中的主机
ansible 'webservers:!apps' -m ping
1.4.6、正则表达式
ansible "~(web|db).*\.example\.com" -m ping
2、ansible-doc
2.1、查看所有的模块
ansible-doc -l
2.2、查看模块的详细文档
ansible-doc copy
2.3、查看模块的所有方法
ansible-doc -s copy
3、ansible ad-hoc
3.1、ad-hoc是什么
ad-hoc 简而言之就是 “临时命令”,执行完即结束,并不会保存;
应用场景1:查看多台节点的进程是否存在;
应用场景2:拷贝指定的文件至本地;
3.2、ad-hoc命令使用
3.2.1、命令示例
ansible 'groups' -m command -a 'df -h'
3.2.2、图解
3.3、ad-hoc执行过程
1、加载自己的配置文件,默认 /etc/ansible/ansible.cfg ; 2、查找对应的主机配置文件,找到要执行的主机或者组; 3、加载自己对应的模块文件,如 command ; 4、通过 ansible 将模块或命令生成对应的临时 py 文件,并将该文件传输至远程服务器对应执行用户 $HOME/.ansible/tmp/ansible-tmp-number/XXX.PY ; 5、执行用户家目录的 `` 文件; 6、给文件 +x 执行; 7、执行并返回结果; 8、删除临时 py 文件, sleep 0 退出;
3.4、ad-hoc执行状态
使用 ad-hoc 执行一次远程命令,注意观察返回结果的颜色;
绿色: 代表被管理端主机没有被修改
黄色: 代表被管理端主机发现变更
红色: 代表出现了故障,注意查看提示
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】凌霞软件回馈社区,博客园 & 1Panel & Halo 联合会员上线
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】博客园社区专享云产品让利特惠,阿里云新客6.5折上折
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 本地部署 DeepSeek:小白也能轻松搞定!
· 如何给本地部署的DeepSeek投喂数据,让他更懂你
· 从 Windows Forms 到微服务的经验教训
· 李飞飞的50美金比肩DeepSeek把CEO忽悠瘸了,倒霉的却是程序员
· 超详细,DeepSeek 接入PyCharm实现AI编程!(支持本地部署DeepSeek及官方Dee