簡體   English   中英

Ansible:如何將多個密碼文件傳遞給 playbook

[英]Ansible: How to pass multiple password files to playbook

當我運行 Ansible 劇本時,如何在命令行上傳遞多個密碼文件?

我想運行這個:

ansible-playbook --vault-password-file /path/to/vault-password-file my_playbook.yml

但我想傳遞多個密碼文件,因為我在劇本中使用了多個變量,這些變量使用存儲在不同密碼文件中的不同密碼。

我怎么做?

(我使用的是 Ansible 2.9.16,但如果有幫助可以升級到 2.10.x,我不受任何特定版本的約束)

您可以利用 vault-ids 概念(在 Ansible v2.4 中引入)來解決您的問題。 下面的示例命令,

ansible-playbook --vault-id dev@dev-password --vault-id prod@prompt site.yml

dev -> 是保管庫 ID

dev-password -> 指向要使用的密碼

prod -> 另一個保管庫 ID

prompt -> 提示輸入密碼

Ansible 完整工作流程和設置的文檔: https://docs.ansible.com/ansible/2.6/user-and-guide/vault.html#vault-passwords-id

使用現有密碼文件設置保險櫃 ID

  1. Ansible 配置文件設置

vault_identity_list = vaultid1@~/path_to_pass1_file/.pass1, vaultid2@~/path_to_pass2_file/.pass2

  1. 使用相應的 Vaultid 加密文件

ansible-vault encrypt --encrypt-vault-id vaultid1 file_to_be_encrypted_1 ansible-vault encrypt --encrypt-vault-id vaultid2 file_to_be_encrypted_2

  1. 運行您的劇本,它將自動從ansible.cfg中選擇配置並解密內容。

暫無
暫無

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

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