首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >无法使用其他主机ip地址配置主机

无法使用其他主机ip地址配置主机
EN

Stack Overflow用户
提问于 2019-02-20 07:41:23
回答 1查看 110关注 0票数 1

我创建了一个Ansible攻略来配置:-一个数据库服务器-一个nginx & php服务器

数据库服务器需要知道php服务器ip地址才能配置数据库访问权限。for服务器需要知道数据库服务器ip地址,才能配置网站的数据库访问。我尝试使用delegate_facts:

代码语言:javascript
复制
vars:
    Database_server_name: "SVWEB-03"
    Web_server_name: "SVWEB-02"


- name: Web server ip address
  set_fact:
    Web_server_ip: "{{  ansible_default_ipv4.address  }}"
  delegate_to: "{{  Web_server_name  }}"
  delegate_facts: True
  when:
    - "Database_server_name in inventory_hostname"

- name: Database server ip address
  set_fact:
    Database_server_ip: "{{  ansible_default_ipv4.address  }}"
  delegate_to: "{{  Database_server_name  }}"
  delegate_facts: True
  when:
    - "Web_server_name in inventory_hostname"

- debug:
    msg: "{{  Web_server_ip  }}"
  when:
    - "Database_server_name in inventory_hostname"

- debug:
    msg: "{{  Database_server_ip  }}"
  when:
    - "Web_server_name in inventory_hostname"

但我有错误:

代码语言:javascript
复制
TASK [Web server ip address] ***************************************************************************************************
skipping: [SVWEB-02]
ok: [SVWEB-03 -> SVWEB-02]

TASK [Database server ip address] ************************************************************************************************
skipping: [SVWEB-03]
ok: [SVWEB-02 -> SVWEB-03]

TASK [debug] ***************************************************************************************************************
skipping: [SVWEB-02]
fatal: [SVWEB-03]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'Web_server_ip' is undefined\n\nThe error appears to have been in '/home/murmure/ansible/playbooks/Install_Wordpress_Separate_DB_and_Web.yml': line 64, column 7, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n    - debug:\n      ^ here\n"}

TASK [debug] ***************************************************************************************************************
fatal: [SVWEB-02]: FAILED! => {"msg": "The task includes an option with an undefined variable. The error was: 'Database_server_ip' is undefined\n\nThe error appears to have been in '/home/murmure/ansible/playbooks/Install_Wordpress_Separate_DB_and_Web.yml': line 69, column 7, but may\nbe elsewhere in the file depending on the exact syntax problem.\n\nThe offending line appears to be:\n\n\n    - debug:\n      ^ here\n"}

有人知道我的错误吗?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2019-02-20 09:41:36

我相信你需要的是hostvars

代码语言:javascript
复制
- name: Database server ip address
  set_fact:
    Database_server_ip: "{{  hostvars.Database_server_name.ansible_default_ipv4.address  }}"
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54776616

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档