教程

GIS大数据站点多机部署指南

概述

iManager中,GIS大数据站点的部署采用的是Docker技术,支持多物理机联合支撑。方案中的几个重要概念如下:

GIS镜像库:GIS程序中心,所有运行的程序都从这里获取;

iManager:GIS管理器,可通过UI部署和管理GIS大数据站点;

Docker资源池:实际运行GIS程序的地方,提供CPU、内存、存储等资源。

逻辑示意图如下:

deployhadoop

您可以将GIS镜像库、iManager部署在同一台主机上,也可以部署在不同的主机上。本文档以两台主机(机器A和机器B)上部署为例,对部署过程进行说明。

机器A(IP:192.168.17.224):部署GIS镜像库、部署iManager,同时作为Swarm的manager节点;

机器B(IP:192.168.21.135):作为Swarm的worker节点。

iManager部署分如下几个主要步骤:

  1. 安装Docker
  2. 启动GIS镜像库
  3. 启动iManager
  4. 组建Docker资源池
  5. 将资源池配置到iManager

iManager解决方案部署步骤

  1. 安装Dokcer

    在机器A和机器B上按照操作系统的不同,选择对应的docker离线安装包(offline-docker-*.tar.gz)。

    将offline-docker-*.tar.gz包放置在机器任意目录

    解压(修改包名为实际的包名):

    tar -zxf offline-docker-*.tar.gz

    进入解压后的文件夹,按照里面的readme.txt进行安装即可:

    验证:查看docker版本,如能看到类似”*_Docker version *.*.*“的信息,则说明安装成功了。

    docker -v

    注意:
    机器A和机器B都需要安装docker。

  2. 启动GIS镜像库

    将GIS镜像库安装包supermap-imanager-*-*-*-registry-multi-node.tar.gz放置在机器A的任意目录。

    解压:

    tar -zxf supermap-imanager-*-*-*-registry-multi-node.tar.gz

    进入解压后根目录:

    cd supermap-imanager-docker-images

    安装:

    sudo su
    chmod +x ./startup.sh && ./startup.sh

    验证:执行如下命令,如果结果没有报错,则启动成功。其中,IP为GIS镜像库所在主机(机器A)的IP。

    docker pull IP:5000/supermap/nginx-imanager:latest

    注意:
    GIS镜像库地址为 IP:5000。IP为机器A的IP。此处为:192.168.17.224:5000。

  3. 启动iManager

    • 解压iManager安装包

    supermap-imanager-*-*-*-linux64-docker-multi-node.tar.gz包放置在机器A的任意目录,用如下命令解压(修改包名为实际包名)

    tar -zxf supermap-imanager-*-*-*-linux64-docker-multi-node.tar.gz

    进入解压后根目录:

    cd supermap-imanager-docker
    • 启动/停止iManager

    启动iManager【注意:此处必须使用“sudo”】:

    sudo su
    sudo ./startup.sh --advertise-addr 本机IP --registry gis镜像库IP:5000

    您可以执行如下命令停止iManager:

    sudo ./shutdown.sh
    • 访问imanager服务

    http://{IP}:8390/imanager

    其中{IP}为本机(机器A)IP。

  4. 组建Docker资源池

    本文档以在上述所用到的机器A和机器B上组建Docker资源池为例,其中机器A作为Swarm Mode的manager节点,机器B作为worker节点。

    初始化swarm mode:在机器A上,执行如下命令。其中,IP为机器A的IP。

    docker swarm init --listen-addr IP

    会输出类似如下的提示:

    swarmInit

    将机器B加入到Swarm Mode作为worker:在机器B上执行上一步提示输出的命令(即红色框里面的内容)。

    可以看到类似如下信息则说明节点成功加入Swarm Mode:

    addworker

    在Swarm Mode的manager节点所在主机上(机器A)执行如下命令查看Swarm Mode的节点列表。

    docker node ls

    可以看到类似如下信息则说明资源池搭建成功:

    nodels

    注:
    Swarm Mode的主节点为:IP:2375。其中IP为机器A的IP。此处为:192.168.17.224:2375

  5. 将资源池配置到iManager

    • 导入Swarm Mode配置

    登录SuperMap iManager后,点击“系统配置”下的“docker多机管理”选项进入如下页面进行节点的管理。

    configurenode

    点击“导入Swarm Mode配置”。

    importswarm

    • 主节点IP:Swarm Mode的manager节点(机器A)的IP。
    • 主节点端口:Swarm Mode的manager节点(机器A)的Docker暴露的端口号:2375。

    填写好以上信息后,点击“确定”,页面会显示Swarm Mode节点的配置信息,如下图所示:

    swarmnodelist

    • 配置仓库

    点击“系统配置”下的“docker多机管理”选项进入仓库配置页面。如下图所示:

    configureregistry

    点击“修改”按钮进行仓库地址的更改。

    editregistry

    仓库地址:填写GIS镜像库地址。

在iManager中一键创建GIS大数据站点

  1. 大数据->GIS大数据站点->多机页面,单击“创建GIS大数据站点(多机)”按钮,即可一键创建;
  2. 一个GIS大数据站点包含多个子节点,如果要精确指定子节点运行的主机,可按如下步骤进行:

    • 在“系统配置> docker 多机管理”页面给主机定义标签(label);
    • 在“创建GIS大数据站点(多机)”页面勾选“高级选项”,给子节点添加label限制;
    • 然后在点“确定”按钮创建。