ansible内置变量
时间: 2023-09-13 16:09:05 浏览: 144
Ansible有许多内置变量,以下是一些常用的变量:
1. `ansible_host`: 目标主机的IP地址或主机名
2. `ansible_port`: 目标主机的SSH端口号
3. `ansible_user`: 连接目标主机的用户名
4. `ansible_connection`: 连接目标主机的方式(如ssh或本地连接)
5. `ansible_ssh_private_key_file`: SSH私钥文件的路径
6. `ansible_python_interpreter`: Python解释器的路径
7. `ansible_os_family`: 目标主机所属的操作系统家族(如RedHat或Debian)
8. `ansible_distribution`: 目标主机的操作系统发行版(如CentOS或Ubuntu)
9. `ansible_distribution_version`: 目标主机的操作系统发行版的版本号
这些变量可以在playbook或模板中使用,来执行不同的任务或操作。
相关问题
使用ansible-playbook写一个打印所有ansible内置变量的脚本
可以使用以下的 Ansible Playbook 来打印所有的内置变量:
```
---
- hosts: localhost
gather_facts: no
tasks:
- name: Print all Ansible variables
debug:
var: item
with_items: "{{ ansible_facts }}"
```
这个 Playbook 会在本地主机上运行,禁用收集事实,并使用 debug 模块打印所有的 ansible_facts 变量。with_items 参数可以迭代所有的变量并打印它们。
可以直接调用的ansible内置变量有哪些,并说明作用
Ansible 内置变量是 Ansible 内置的一些变量,可以在 Playbook 中直接使用。以下是一些常用的 Ansible 内置变量及其作用:
1. `inventory_hostname`:当前主机在 inventory 文件中的名称。
2. `ansible_hostname`:当前主机的主机名。
3. `group_names`:当前主机所属的主机组列表。
4. `ansible_play_hosts`:当前 Playbook 中所有主机的列表。
5. `ansible_all_ipv4_addresses`:当前主机的所有 IPv4 地址。
6. `ansible_all_ipv6_addresses`:当前主机的所有 IPv6 地址。
7. `ansible_env`:当前主机的环境变量。
8. `ansible_distribution`:当前主机的发行版名称。
9. `ansible_distribution_version`:当前主机的发行版版本号。
10. `ansible_os_family`:当前主机的操作系统家族。
11. `ansible_processor_count`:当前主机的 CPU 核心数。
12. `ansible_memtotal_mb`:当前主机的内存总量。
这些内置变量可以在 Playbook 中使用,以便根据主机的属性执行不同的任务。除了上述内置变量之外,还有很多其他的内置变量可以使用,可以查看 Ansible 官方文档获取更多信息。
阅读全文