加密敏感的结构化数据
首先,创建一个密钥文件,例如 vault_pass_file
,它理想地包含一长串随机字符。在 linux 系统中,你可以使用 pwgen
创建随机密码文件:
pwgen 256 1 > vault_pass_file
然后,使用此文件加密敏感数据,例如,groups_vars/group.yml
:
ANSIBLE_VAULT_PASSWORD_FILE=vault_pass_file ansible-vault encrypt group_vars/group.yml
从现在开始,为了运行剧本你需要 vault_pass_file
:
ANSIBLE_VAULT_PASSWORD_FILE=vault_pass_file ansible-playbook -i inventories/nodes my-playbook.yml
注意,你也可以使用标志 --vault-password-file vault_pass_file
而不是设置 ANSIBLE_VAULT_PASSWORD_FILE
环境变量。
要编辑或解密磁盘上的密钥,你可以分别使用 ansible-vault edit
和 ansible-vault decrypt
。