Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/mongodb/11.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
使用Ansible安装特定版本的MongoDB_Mongodb_Ubuntu_Ansible_Yaml - Fatal编程技术网

使用Ansible安装特定版本的MongoDB

使用Ansible安装特定版本的MongoDB,mongodb,ubuntu,ansible,yaml,Mongodb,Ubuntu,Ansible,Yaml,我已经尝试了很多次,但是我没有找到任何合适的解决方案 我想使用Ansible在3台机器上安装MongoDB 4.2,但我不知道如何指定版本 我的操作系统是Ubuntu服务器20.04 下面的yml文件导致版本错误 --- #mongoDB安装程序的任务文件 -主持人:ec2 变成:真的 任务: -名称:使用apt安装aptitude 恰当的: 姓名:天资 国家:最新 更新缓存:是 -名称:安装mongoDB 恰当的: 名称:mongodb=4.2 国家:现在 更新缓存:是 -名称:确保mongo

我已经尝试了很多次,但是我没有找到任何合适的解决方案

我想使用Ansible在3台机器上安装MongoDB 4.2,但我不知道如何指定版本

我的操作系统是Ubuntu服务器20.04

下面的yml文件导致版本错误

---
#mongoDB安装程序的任务文件
-主持人:ec2
变成:真的
任务:
-名称:使用apt安装aptitude
恰当的:
姓名:天资
国家:最新
更新缓存:是
-名称:安装mongoDB
恰当的:
名称:mongodb=4.2
国家:现在
更新缓存:是
-名称:确保mongodb正在运行,并且能够在重新启动时自动启动
系统D:
姓名:mongodb
启用:是
国家:开始
这里是错误

任务[安装mongoDB] *********************************************************致命:[13.232.181.230]:失败!=>{“缓存更新时间”:1620583763, “cache_updated”:true,“changed”:false,“msg”:“'/usr/bin/apt get-y -o“Dpkg::Options::=--强制confdef”-o“Dpkg::Options::=--强制confold”安装“mongodb=4.2” 失败:未找到“mongodb”的E:版本“4.2”\n,“rc”:100, “stderr”:“E:找不到“mongodb”的版本“4.2”\n”, “stderr_行”:[“E:找不到'mongodb'的'4.2'版本”], “标准输出”:“正在读取包列表…\n正在生成依赖项 树…\n正在读取状态信息…\n,“标准输出行”:[“正在读取” 包列表…,“构建依赖关系树…”,读取状态 信息…]}


在远程机器上安装特定版本的MongoDB的正确方法是什么。

首先,我要感谢Zeitounator和Wernfried Domscheit的帮助。我很感激

我犯了很多错误

  • 他们的钥匙错了
  • 缺少存储库信息
  • mongo安装包的名称错误
  • mongo服务检查不正确
下面是正确的yml文件,它工作正常。
我正在安装
Mongo 4.4
。第4.2节中的步骤将保持不变。您必须确保密钥路径和repo

解决方案
---
#mongoDB安装程序的任务文件
-主持人:ec2
变成:真的
任务:
-名称:使用apt安装aptitude
恰当的:
姓名:天资
国家:最新
更新缓存:是
-名称:导入公钥
apt_键:
网址:'https://www.mongodb.org/static/pgp/server-4.4.asc'
国家:现在
-名称:添加存储库
apt_存储库:
文件名:'/etc/apt/sources.list.d/mongodb-org-4.4.list'
回购:黛布https://repo.mongodb.org/apt/ubuntu 仿生/mongodb org/4.4多重宇宙'
国家:现在
更新缓存:是
-名称:安装mongoDB
恰当的:
名称:mongodb组织
国家:现在
更新缓存:是
-名称:确保mongodb正在运行,并且能够在重新启动时自动启动
服务:
姓名:mongod
启用:是
国家:开始

出现了什么错误?如果直接在命令行上使用apt,您将如何指定版本?用同样的方式写名字,这个问题与ansible无关,也与编程无关,因此在这里是离题的。如果您仍有困难,请尝试@WernfriedDomscheit,我已更新帖子并显示错误消息。您是否能够使用
apt
手动安装(过时的)Mongo 4.2?如果我尝试使用Linux终端手动安装,我可以成功完成。这次我尝试使用Ansible,这样我就可以在多台机器上轻松安装它。