我是 Ansible 的初学者,我现在正尝试在 Ubuntu 14.04 主机上安装 MongoDB。根据MongoDB installation instructions手动过程如下:
sudo apt-key adv --keyserver hkp://keyserver.ubuntu.com:80 --recv 2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5
echo "deb [ arch=amd64,arm64 ] https://repo.mongodb.org/apt/ubuntu xenial/mongodb-org/3.6 multiverse" | sudo tee /etc/apt/sources.list.d/mongodb-org-3.6.list
sudo apt-get update
sudo apt-get install -y mongodb-org
我想我可以使用 Ansible shell 模块运行它,但是由于 4 行中的第 2 行会不断向 mongodb-org-3.6.list
文件中添加新行,我猜这是不是正确的方法。
有谁知道使用 Ansible 执行此操作的合乎逻辑的方法是什么?欢迎所有提示!
最佳答案
在那种情况下,您甚至不必弄乱 lineinfile
。使用 apt_repository
模块(documentation);在此示例中,我们将安装 MongoDB 3.4:
[...]
tasks:
- name: Add Mongo packages repo
apt_key: id=2930ADAE8CAF5059EE73BB4B58712A2291FA4AD5 keyserver=keyserver.ubuntu.com
- name: add repo itself
apt_repository: repo='deb http://repo.mongodb.org/apt/ubuntu {{ansible_distribution_release}}/mongodb-org/3.4 multiverse' state=present
- name: install packages
apt: pkg=mongodb-org state=present
[...]
关于linux - 如何使用 Ansible 安装 MongoDB?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37568848/