簡體   English   中英

與AWS連接時的動態庫存

[英]Ansible dynamic inventory when connecting with AWS

我已經下載了ec2.py和ec2.ini文件,並將它們放在

/etc/ansible/inventory

我已經將ansible.cfg更改為

inventory      = /etc/ansible/inventory/ec2.py

我將環境變量設置為

export AWS_ACCESS_KEY_ID="XXXXXXXXXXXXXXX"
export AWS_SECRET_ACCESS_KEY="XXXXXXXXXXXXXXXXXXXXX"
export AWS_DEFAULT_REGION="us-east-1"
export EC2_INI_PATH="/etc/ansible/inventory/ec2.ini"

現在當我運行ansible -m ping我得到的一切

[WARNING]: provided hosts list is empty, only localhost is available

而不是ping我帳戶中的所有實例

當我運行./ec2.py --list我得到

{
   "_meta": {
   "hostvars": {}
}
}

我在AWS中的所有實例都在運行

似乎您使用的庫存文件不正確。

  • 檢查ec2.py是否可執行(chmod + x)
  • 使用-v選項運行ansible以檢查其實際使用的配置文件

    ansible -v -m ping all

  • 檢查是否有ANSIBLE_INVENTORY或ANSIBLE_HOSTS環境變量覆蓋預期的配置文件。 您可以通過設置覆蓋廣告資源定義

    export ANSIBLE_INVENTORY=/etc/ansible/inventory/ec2.py

提醒配置文件按以下順序處理

  • ANSIBLE_CONFIG(環境變量)
  • ansible.cfg(在當前目錄中)
  • .ansible.cfg(在主目錄中)
  • /etc/ansible/ansible.cfg

在1.5之前的訂單是:

  • ansible.cfg(在當前目錄中)
  • ANSIBLE_CONFIG(環境變量)
  • .ansible.cfg(在主目錄中)
  • /etc/ansible/ansible.cfg

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM