阿里云服务器Ubuntu18.04上安装MongoDB Ops Manager和Agent配置MongoDB集群


  首先确保mongoDB运行起来了

法一:输入 mongo --port 27017 可以进入Mongo shell

法二:用NoSQL Booster可以连接到MongoDB(记得先关掉40000防护墙)

法三:输入systemctl status mongod显示mongod.service loaded

法四: ps -ef | grep mongo 查看mongo进程

法五:检查mongod的运行端口 netstat -lanp | grep "27017" 

法六:输入 top 命令查看进程

  若没有运行起来,启动mongod sudo mongod --dbpath /data/db --logpath /var/log/mongodb/mongod.log --fork --bind_ip 0.0.0.0 --port 27017 

一、创建虚拟内存

由于Ops启动需要15GB内存,但阿里云轻量服务器只有1GB内存,所以设置16GB虚拟内存。(参考Ops官方文档/安装清单/硬件要求https://docs.opsmanager.mongodb.com/current/core/requirements/)

  开启虚存步骤详见“阿里云云主机添加swap分区与swap性能优化”https://yq.aliyun.com/articles/52098?spm=5176.10695662.1996646101.searchclickresult.60b41360DweMlA&aly_as=CWltCEwy

cat /proc/swaps  #1.查看当前系统中是否已经启用swap分区
top
dd if=/dev/zero of=/data/swap bs=2048 count=8388616 #2.如果没有启用swap分区功能,则新建一个专门的文件用于swap分区,4*4=16GB
mkswap /data/swap #3.通过mkswap命令将上面新建出的文件做成swap分区
cat /proc/sys/vm/swappiness #4.查看内核参数vm.swappiness中的数值是否为0,如果为0则根据实际需要调整成30或者60
sysctl -a | grep swappiness  
sysctl -w vm.swappiness=60
swapon /data/swap #5.启用此交换分区的交换功能
echo "/data/swap swap swap defaults    0  0" >> /etc/fstab

这个教程超好,设置内核参数vm.swappiness可以解决很久都打不开Ops的问题。

二、安装Ops manager

  1. 用axel(比curl好,可断点续传)下载ops的deb包,
  2. 因为我是Ubuntu系统,使用dpkg --install安装deb包
apt install axel
axel https://downloads.mongodb.com/on-prem-mms/deb/mongodb-mms_4.2.1.56625.20190905T1240Z-1_x86_64.deb
sudo dpkg --install mongodb-mms_4.2.1.56625.20190905T1240Z-1_x86_64.deb

  3.修改Ops的配置文件 vi /opt/mongodb/mms/conf/conf-mms.properties 

    根据需要修改mongoUri

  4.启动Ops

  • 使用:/etc/init.d/mongodb-mms start 启动Ops
  • 耐心等待10多min
  • 出现下面的情况,启动成功!
Starting pre-flight checks
Successfully finished pre-flight checks

Migrate Ops Manager data
   Running migrations...[  OK  ]
Start Ops Manager server
   Instance 0 starting......................
.........................................[  OK  ]
Starting pre-flight checks
Successfully finished pre-flight checks

Start Backup Daemon...[  OK  ]
  •   然后可在浏览器访问 {公网Ip}:8080 ,进入Ops的Web UI界面

  • 从教程第三步开始,注册Ops账号  

    详见“MongoDB Ops Manager 部署指南“http://www.mamicode.com/info-detail-2420298.html

    然后登陆,登陆后可以看见deployment这个界面

三、Automatic方式安装Agent

  • 下载对应版本的agent

    点击Agents->Download & Settings, 会出现所有的代理信息,如图所示:

  • 由于我的系统是Ubuntu18.04,我选择了第三种安装方式

  curl -OL http://60.205.231.180:8080/download/agent/automation/mongodb-mms-automation-agent-manager_10.2.6.5879-1_amd64.ubuntu1604.deb

sudo dpkg -i mongodb-mms-automation-agent-manager_10.2.6.5879-1_amd64.ubuntu1604.deb

主机先生成mmsGroupId、baseURI、APIKey,修改agent配置文件。

  • 丛机修改agent的配置文件和主机一致 sudo vi /etc/mongodb-mms/automation-agent.config

    修改三个参数mmsGroupId、baseURI、APIKey和主机一样


 

mmsGroupId=xxx
baseURI=http://xxx:8080
APIKey:
xxxxxxx
  • 启动agent
mkdir -p /data
chown mongodb:mongodb /data
systemctl start mongodb-mms-automation-agent.service
systemctl status mongodb-mms-automation-agent.service #由于上面那个没有输出,所以执行这句观察agent启动情况

      若出现下面的情况,恭喜。说明agent跑起来了!

 

四、参考资料

[1]”Ops安装清单“by Ops官网https://docs.opsmanager.mongodb.com/current/core/requirements/

[2]“阿里云云主机添加swap分区与swap性能优化”by 阿里云社区https://yq.aliyun.com/articles/52098?spm=5176.10695662.1996646101.searchclickresult.60b41360DweMlA&aly_as=CWltCEwy

[3]“安装MongoDB Agent来管理部署”by码迷https://docs.cloudmanager.mongodb.com/tutorial/install-mongodb-agent-to-manage/

[4]MongoDB Ops Manager 部署指南‘“by Agent官网http://www.mamicode.com/info-detail-2420298.html

  我今晚执行的所有命令

    1  exit
    2  sudo useradd -m hadoop -s /bin/bash
    3  sudo passwd hadoop
    4  sudo adduser hadoop sudo
    5  tar xzvf hbase-2.2.0-bin.tar.gz
    6  cd /usr/local
    7  tar xzvf hbase-2.2.0-bin.tar.gz
    8  vim ~/.bashrc
    9  jps
   10  apt install axel
   11  axel https://downloads.mongodb.com/on-prem-mms/deb/mongodb-mms_4.2.1.56625.20190905T1240Z-1_x86_64.deb
   12  netstat -lanp | grep "27017"
   13  yum -y install mongodb-org.x86_64 mongodb-org-mongos.x86_64 mongodb-org-shell.x86_64 mongodb-org-tools.x86_64 mongodb-org-server.x86_64
   14  sudo mongod --dbpath /data/db --logpath /var/log/mongodb/mongod.log --fork --bind_ip 0.0.0.0 --port 27017
   15  cat /proc/swaps
   16  top
   17  dd if=/dev/zero of=/data/swap bs=2048 count=8388616
   18  mkswap /data/swap
   19  cat /proc/sys/vm/swappiness
   20  sysctl -a | grep swappiness
   21  sysctl -w vm.swappiness=60
   22  swapon /data/swap
   23  echo "/data/swap swap swap defaults    0  0" >> /etc/fstab
   24  free -m
   25  vi /opt/mongodb/mms/conf/conf-mms.properties
   26  netstat -lanp | grep "27017"
   27  mongo --port 27017
   28  netstat -lanp | grep "27017"
   29  vi /opt/mongodb/mms/conf/conf-mms.properties
   30  netstat -lanp | grep "27017"
   31  vi /opt/mongodb/mms/conf/conf-mms.properties
   32  /etc/init.d/mongodb-mms start
   33  curl -OL http://47.94.207.134:8080/download/agent/automation/mongodb-mms-automation-agent-manager_10.2.6.5879-1_amd64.ubuntu1604.deb
   34  sudo dpkg -i mongodb-mms-automation-agent-manager_10.2.6.5879-1_amd64.ubuntu1604.deb
   35  sudo vi /etc/mongodb-mms/automation-agent.config
   36  sudo mkdir -p /data
   37  sudo chown mongodb:mongodb /data
   38  sudo systemctl start mongodb-mms-automation-agent.service
   39  systemctl status mongodb-mms-automation-agent.service
   40  history