企业不想做网站的原因,网站后台修改不了,建立个人博客网站wordpress,wordpress鼠标滑过几何线条1. 主机定义
主机是 Ansible 管理的最小单元#xff0c;可以是 IP 或域名#xff0c;支持直接定义或附加参数。
基础语法
# 直接定义主机#xff08;IP 或域名#xff09;
192.168.1.10
example.com# 定义主机并指定连接参数#xff08;如端口、用户等#xff09;
web…1. 主机定义
主机是 Ansible 管理的最小单元可以是 IP 或域名支持直接定义或附加参数。
基础语法
# 直接定义主机IP 或域名
192.168.1.10
example.com# 定义主机并指定连接参数如端口、用户等
web1.example.com ansible_port2222 ansible_useradmin
特殊参数常用 ansible_port: SSH 端口默认 22 ansible_user: SSH 用户名 ansible_ssh_private_key_file: 私钥路径 ansible_python_interpreter: 指定 Python 解释器路径如系统默认非 Python3 2. 主机组
主机组用于逻辑分类方便批量操作。组名用 [] 定义下方列成员。
示例
[web_servers]
web1.example.com
web2.example.com[db_servers]
db1.example.com
db2.example.com ansible_userpostgres # 覆盖组变量
操作组
# 仅对 web_servers 组执行命令
ansible web_servers -m ping 3. 变量
变量可分配给 主机 或 组优先级主机变量 子组变量 父组变量。
主机变量
# 直接附加到主机行
web1.example.com http_port80 max_requests100# 或在下方缩进定义
web1.example.comhttp_port80max_requests100
组变量
[web_servers:vars] # 定义组变量
http_port80
backup_dir/var/www[all:vars] # 全局变量所有主机生效
ansible_python_interpreter/usr/bin/python3 4. 子组
子组通过 :children 定义继承父组的变量支持嵌套层级。
示例
# 定义父组 app_servers包含 web_servers 和 db_servers 子组
[app_servers:children]
web_servers
db_servers# 子组可继承父组变量
[app_servers:vars]
environmentproduction 完整示例
# 主机定义
controller ansible_connectionlocal# 主机组
[web_servers]
web1.example.com
web2.example.com[db_servers]
db1.example.com ansible_userpostgres# 子组
[app_servers:children]
web_servers
db_servers# 组变量
[web_servers:vars]
http_port80[app_servers:vars]
deploy_envprod# 全局变量
[all:vars]
ansible_python_interpreter/usr/bin/python3 注意事项 变量优先级主机变量 当前组变量 父组变量 all 组变量。 建议将复杂变量拆分到 group_vars/ 和 host_vars/ 目录。 使用 ansible-inventory --graph 可视化查看主机组结构。