相关疑难解决方法(0)

如何为文件中的动态库存提取的服务器定义ssh私钥

在为ssh私钥文件编写ansible playbook时遇到了一个配置问题.

我们知道,我们可以在静态库存服务器的ansible hosts文件中定义与主机服务器,ip和相关ssh私钥的组合.

但我不知道如何使用动态库存服务器来定义它.

例如:

---
- hosts: tag_Name_server1
  gather_facts: no
  roles:
    - role1

- hosts: tag_Name_server2
  gather_facts: no
  roles:
    - roles2
Run Code Online (Sandbox Code Playgroud)

下面的命令用于调用该剧本:

ansible-playbook test.yml -i ec2.py --private-key ~/.ssh/SSHKEY.pem
Run Code Online (Sandbox Code Playgroud)

我的问题是:

  1. 如何在ansible文件中定义〜/ .ssh/SSHKEY.pem,而不是在命令行中定义
  2. 我想playbook中可能有一个参数,比如"gather_facts"来定义哪个私钥应该用于上面的主机,但看起来没有这样的参数?
  3. 如果无法在文件中定义私钥,如果不同的密钥文件将用于一个剧本的不同动态获取服务器,那么应​​该在命令行中定义什么?

谢谢您的意见

ansible ansible-playbook

52
推荐指数
5
解决办法
10万
查看次数

Ansible:如何将存储库克隆为其他用户

我正在尝试用Ansible编写部署规则.一些步骤是:

  1. 更新和升级服务器
  2. 创建一个名为harry的用户
  3. 将公钥和私钥添加到哈里
  4. 从bitbucket.org克隆一个Git存储库

我想将存储库作为harry用户在其主目录中克隆(这就是我复制它的公钥和私钥的原因).问题是无法指定用户必须执行git clone.所以Ansible尝试以root身份克隆存储库并失败,因为他没有访问存储库的权限.

你是如何解决这个问题的?

git ansible ansible-playbook

10
推荐指数
2
解决办法
2万
查看次数

标签 统计

ansible ×2

ansible-playbook ×2

git ×1