ansible - 如何为组中的所有主机设置公共(public)ansible_user?

标签 ansible openstack ansible-inventory

有谁知道 ansible 是否允许用户在组中包含的所有主机之间共享相同的 ansible_user 设置?当使用某些云计算平台(例如 OpenStack)时,此功能特别有用,它允许用户启动共享相同配置(例如用户帐户和 SSH key )的多个实例。

最佳答案

您可以配置多个行为参数来修改 Ansible 连接到主机的方式。其中包括 ansible_user 变量。您可以按主机或每个进行设置。您还可以在 all 主机组下定义通用 ansible_user 变量,并在 grouphost 覆盖该变量级别。

如果您只在一个 hosts.yml 文件中编写库存,您可以这样做:

all:
  children:
    ubuntu_linux:
      hosts:
        ubuntu_linux_1:
        ubuntu_linux_2:
    aws_linux:
      hosts:
        aws_linux_host_1:
        aws_linux_host_2:
        aws_linux_host_3:
      vars:
        ansible_user: ec2-user
  vars:
    ansible_host: ubuntu

而且,如果您使用目录来创建 list ,则可以在 ./inventory/group/vars.yml 文件中设置它。

检查"Connecting to hosts: behavioral inventory parameters" Ansible 文档部分,了解您可以配置哪些其他参数。

希望对你有帮助

关于ansible - 如何为组中的所有主机设置公共(public)ansible_user?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57311120/

相关文章:

ansible - 在安装角色之前,如何等待ssh在主机上可用?

ansible - 防止使用 Ansible 同时部署

openstack - 我想用 microStack 设置一个多节点 OpenStack,但它总是失败,我做错了什么?

openstack - 无法在 devstack 节点外部访问 DevStack 实例

deployment - 使用 ansible 进行多阶段部署

Ansible 循环错误

ansible - 如何在 list 文件中使用 ansible-vault 加密密码?

provisioning - 如何覆盖 Ansible 上的角色文件?

mysql - 如何使用 ansible 授予 MySQL 服务器管理权限(SUPER,RELOAD ...)?

ruby - Fog 上的请求中 Nil 不会变成 null