当前位置:网站首页>ansible学习笔记02
ansible学习笔记02
2022-07-31 15:28:00 【51CTO】
ansible的inventory文件
文件定义了ansible管理的主机,或主机组
静态inventory文件
用txt文本记录的文件,包括主机的ip地址,域名等信息,只要不修改inventory文件内容,被管理的主机就不会发生变化
动态inventory文件
从数据库获取动态信息,信息随着数据库的变化而变化,大多数情况下以json格式输出
inventory文件
一个简单的inventory文件
定义主机组
通过方括号[]括起来,一个主机文件可以属于多个组
组里面能嵌套组
定义主机范围
使用[start:end]定义范围
注意事项
如果主机和主机组重名了,ansible会忽略主机组,选择主机名,配置inventory文件尽量避免这件事发生。
查看主机信息
命令: ansible 主机名or组名 -i 路径 --list-hosts
| 参数 | 含义 |
|---|---|
| -i | 指定inventory文件路径,默认路径是/etc/ansible/hosts,不指定该参数,会进入默认路径查找 |
| –list-hosts | 列出主机信息 |
| all | 列出所有主机组信息 |
| ungrouped | 列出非主机组信息 |
ansible的配置文件
ansible配置文件不是全局的,任何用户都可以拥有自己的ansible配置文件
配置文件的优先级
| 路径 | 优先级 |
|---|---|
| /etc/ansible/ansible.cfg | 最低 |
| ~/.ansible.cfg(家目录下) | 低 |
| ./ansible.cfg(当前目录下) | 中(建议使用) |
| ANSIBLE_CONFIG(全局变量指定) | 高 |
ANSIBLE_CONFIG不建议使用,一旦使用,所有的用户都会指向该路径
使用默认的ansible.cfg
使用家目录下的.ansible.cfg
使用当前目录下ansible.cfg
ansible配置文件的相关参数
ansible配置文件练习
创建目录/home/student/deploy-manage
目录下有ansible.cfg文件,Inventory文件也在该目录下
Inventory文件的主机组如下
[myself] 拥有主机localhost
[intranetweb] 拥有主机 servera.lab.example.com
[internetweb] 拥有主机 serverb.lab.example.com
[web] 嵌套组拥有主机组 intranetweb 和 internetweb
在ansible.cfg增加[privilege_escalation]选项,能够使用sudo方式提权,提权到root用户,并且输入密码
ansible ad hoc 命令
ad hoc:临时的,一行通过ansible开头执行的命令,使用起来非常的简单,快速。
使用格式: ansible host-pattern -m moudle [-a ‘moudle arguments’] [-i inventory]
| 模块分类 | 模块 |
|---|---|
| 文件模块 | copy、file、lineinfile、synchronize |
| 软件包模块 | package、yum、apt、dnf、gem、pip |
| 系统模块 | firewalld、service、user、reboot |
| Net工具 | get_url(下载)、nmcli(设置网卡)、uri(与web交互) |
ad hoc方式,使用ping模块
ad hoc方式,使用user模块添加用户
ad hoc方式,使用user模块移除用户
ad hoc方式,使用copy模块
ad hoc方式,使用command模块1
ad hoc缺省值就是command,使用的时候可省略 -m command参数
| 配置文件参数 | command选项 |
|---|---|
| inventory | -i |
| remote_user | -u |
| become | –become,-b |
| become_method | –become-method |
| become_user | –become-user |
| become_ask_pass | –ask-become-pass,-K |
ad hoc方式,使用command模块2
ad hoc相关练习
1、 查看ansible版本
2、 新建文件夹/home/student/deploy-review
3、 在文件夹内创建ansible.cfg,指定inventory目录为:/home/student/deploy-review/inventory,指定登录用户为devops
4 、创建子目录/home/student/deploy-review/inventory,inventory文件从:从http://materials.example.com/labs/deploy-review/inventory下载
5、 使用ansible ad hoc 中command模块查看主机id信息
6、 使用ansible ad hoc 中copy模块将文本:This server is managed by Ansible. \n 输出到/etc/motd中
7、 再次运行题目6相同的ad hoc,查看现象
8、 使用ansible ad hoc 中command模块查看/etc/motd中的信息
单元小结
边栏推荐
- R语言ggplot2可视化:使用ggpubr包的ggboxplot函数可视化箱图、使用font函数自定义图例标题文本(legend.title)字体的大小、颜色、样式(粗体、斜体)
- abaqus find contact pairs报错:surface name is already in use
- Kubernetes原理剖析与实战应用手册,太全了
- What is the difference between BI software in the domestic market?
- SQL、HQL、JPQL 到底有什么区别
- Linux查看redis版本(查看mongodb版本)
- 自动化测试如何创造业务价值?
- Ubuntu Topic 5: Setting a Static IP Address
- MySQL的相关问题
- RecyclerView高效使用第二节
猜你喜欢
随机推荐
Jmeter常用的十大组件
R language ggplot2 visualization: use the ggboxplot function of the ggpubr package to visualize the box plot, use the font function to customize the font size, color, style (bold, italic) of the legen
Efficient use of RecyclerView Section 3
Gorm—Go language database framework
四象限时间管理有多好用?
leetcode303 Weekly Match Replay
女性服务社群产品设计
格林美瑞交所IPO:募资3.8亿美元 更多中国企业将赴欧洲上市
hough变换检测直线原理(opencv霍夫直线检测)
mongo进入报错
NC | 斯坦福申小涛等开发数据可重复分析计算框架TidyMass
Linux check redis version (check mongodb version)
浏览器自带的拾色器
腾讯云部署----DevOps
Efficient use of RecyclerView Section 2
Use of radiobutton
7、常见面试口语提问问题汇总
Matlab matrix basic operations (definition, operation)
"Autumn Recruitment Series" MySQL Interview Core 25 Questions (with answers)
OPPO在FaaS领域的探索与思考









