opendronemap集群搭建

需求

OpenDroneMap(ODM)是一个开源项目,旨在利用无人机采集的图像数据生成地图、模型和其他地理空间数据。它主要解决以下问题:

  1. 航空摄影数据处理:ODM可以处理无人机拍摄的大量航空图像数据,通过图像处理和计算机视觉技术生成高质量的地图和模型。
  2. 地图制作与更新:利用ODM,用户可以快速、成本效益地生成地图,并及时更新地理空间数据,有助于城市规划、灾害监测等领域的应用。
  3. 三维建模:ODM可以生成精确的三维模型,对于建筑物、地形等的三维建模具有重要意义,可用于虚拟现实、游戏开发等领域。
  4. 资源管理:通过ODM生成的地图和模型,可以帮助资源管理部门更好地监控土地利用、自然资源管理等情况,提高资源利用效率。

由于,单节点需要大量的时间生成模型,需要通过集群模式搭建测试是否能够通过水平拓展的方式线性增加odm处理模型的能力。

资源信息

服务器 资源信息 备注
ClustOdm(master) 20核32G 用于资源调度,不参与计算
OdmNode(node1) 8核心16G
OdmNode(node2) 8核16G
OdmNode(node3) 4核8G

搭建Docker

通过shell脚本,安装阿里镜像源并安装docker

#!/bin/bash

# 安装wget工具
yum -y install wget

# 切换到/etc/yum.repos.d/目录
cd /etc/yum.repos.d/

# 创建一个备份文件夹
mkdir bak

# 将当前目录下的所有.repo文件移动到备份文件夹
mv *.repo bak/

# 从阿里云下载CentOS-Base.repo文件,并保存到/etc/yum.repos.d/目录
wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo

# 清理yum缓存
yum clean all

# 更新yum缓存
yum makecache

# 安装vim、lsof和network-tools软件包
yum install -y vim && yum install -y lsof && yum install -y network-tools && yum -y install lrzsz && yum -y install lsof

# 安装yum-utils软件包
yum install -y yum-utils

# 添加Docker的yum源
yum-config-manager --add-repo http://mirrors.aliyun.com/docker-ce/linux/centos/docker-ce.repo

# 安装Docker相关软件包
yum install -y docker-ce docker-ce-cli containerd.io

# 启动Docker服务并查看状态
systemctl start docker && systemctl status docker

搭建OpenDroneMap(node)

  • 8080:代理服务器备用端口;
  • 3000:node开发服务器端口
docker run -it -p 3000:3000 -p 8080:8080 opendronemap/nodeodm

搭建ClusterOdm(master)

  • 8080:代理服务器备用端口;
  • 3000:node开发服务器端口
  • 10000:查看集群状态
docker run -it -p 3001:3000 -p 8081:8080 -p 10001:10000 opendronemap/clusterodm

动态加入node

# 集群状态
[root@localhost ~]# telnet localhost 8080
Trying ::1...
Connected to localhost.
Escape character is '^]'.
Welcome ::ffff:172.17.0.1:43468 ClusterODM:1.5.3
HELP for help
QUIT to quit
# 集群节点
#> node list
1) 172.30.50.57:3000 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
2) 172.30.50.58:3000 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
3) 172.30.50.56:3000 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
4) 172.30.50.37:3001 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
# 添加节点
#> node add localhost 3000
# 查看是否添加成功
#> node list
1) 172.30.50.57:3000 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
2) 172.30.50.58:3000 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
3) 172.30.50.56:3000 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>
4) 172.30.50.37:3001 [online] [0/1] <engine: odm 3.3.4> <API: 2.2.2>

查看是否成功加入集群

  • 访问:http://localhost:10000

你可能感兴趣的:(云计算,容器,运维,云原生)