1. 单机安装及启动

本文讲述如何在单机环境下进行HENGSHI SENSE安装的操作过程。

在安装前请确认网络环境,如果是隔离环境,无法连接互联网时,请先按照 离线环境安装依赖的指导进行依赖包的安装,然后按照本文的指导继续操作。如果网络环境可以连接互联网,请直接按照本文的指导进行安装。

1.1. 准备工作

  1. 请参考安装环境文档准备安装环境。

  2. 配置用户与安装目录。
    在操作前请检查您是否有sudo权限或root权限,如果没有请先获取相应的权限,再进行下面的操作。
    请不要使用root安装,推荐建立一个拥有sudo权限的用户安装、运行HENGSHI SENSE,并配置安装路径。本文示例中以hengshi用户举例,安装路径为/opt/hengshi,下面示例中介绍如何创建hengshi用户及设置安装目录和权限。

    grep hengshi /etc/passwd > /dev/null || sudo useradd -m hengshi         #建立henghsi用户   
     sudo mkdir -p /opt/hengshi && sudo chown hengshi:hengshi /opt/hengshi  #设置安装目录及权限
    
  3. 服务端sshd监听非22端口。
    以下2种情况 需要在部署用户 ~/.ssh/config中配置各个host的实际端口。 否则请忽略直接安装

    1. 如果部署hengshi的机器SSH端口不是默认的22端口
    2. 如果部署engine的segments的机器与hengshi服务不在一个机器上且SSH端口不是默认的22端口

      例如: 本机配置hostname为localhost,并且HS_ENGINE_SEGMENTS=(Node-A),对应的监听端口都为122。
      在.ssh/config配置文件中需要包含以下配置:

      Host localhost    
      Port 122    
      Host Node-A    
      Port 122
      

1.2. 安装HENGSHI SENSE

执行以下步骤完成安装。

  1. 切换到执行安装的用户,示例中用户名为hengshi。
    sudo su - hengshi
    
  2. 进入安装包解压后的目标目录。
    cd ~/pkgs/hengshi-sense-[version]
    
  3. 执行安装命令。

    ./hs_install -p /opt/hengshi
    

    说明
    如果在使用服务时替换了衡石metadb,需要确保export HS_PG_IF_EXTERNAL=false 变量的值为true,可在配置文件 conf/hengshi-sense-env.sh 更改,这样在升级过程中将不会要求停止此服务进行安装升级。

  4. 安装成功时,提示以下信息。

    SUCCESSED! installed to xxxxx
    

1.3. 配置系统

启动服务前,请阅读配置文件对相关的配置进行设置。
如内置引擎类型要求为Doris,请阅读Doris引擎配置

1.4. 启动服务

请按照如下步骤启动服务。

  1. 切换到启动服务的用户,示例中的用户名为hengshi。
    sudo su - hengshi
    
  2. 进入安装目录。
    cd /opt/hengshi
    
  3. 初始化OS,执行前请确认用户有sudo权限。
    bin/hengshi-sense-bin init-os all   # 离线环境在将依赖安装后执行 bin/hengshi-sense-bin init-os all-offline -k 跳过依赖包安装
    
  4. 初始化HENGSHI SENSE。
    bin/hengshi-sense-bin init all
    
  5. 启动HENGSHI SENSE服务。
    bin/hengshi-sense-bin start all
    
  6. 当服务启动成功后,提示以下信息,模块的状态为IS ACTIVE

    IS ACTIVE! : [metadb] @127.0.0.1:54320/hengshi
    IS ACTIVE! : [engine] @127.0.0.1:15432/hengshi
    IS ACTIVE! : [minio] minio server /opt/hengshi/minio-data
    IS ACTIVE! : [redis] redis-server .*:6379
    IS ACTIVE! : [flink] /opt/hengshi/lib/flink
    IS ACTIVE! : [syslog] syslog-ng --no-caps --module-path=/opt/hengshi/lib/syslog-ng/lib/syslog-ng -f /opt/hengshi/conf/syslog-ng.conf -p /opt/hengshi/logs/syslog-ng.pid -R /opt/hengshi/logs/syslog-ng.persist -c /opt/hengshi/logs/syslog-ng.ctl
    IS ACTIVE! : [hengshi] jar /opt/hengshi/lib/bootstrap-4.4-SNAPSHOT.jar
    IS ACTIVE! : [watchdog] /opt/hengshi/bin/hengshi-watchdog.sh
    
  7. 通过浏览器访问服务地址,默认地址: http://localhost:8080 使用HENGSHI SENSE服务。如果不能访问,请检查配置文件conf/hengshi-sense-env.sh中的服务端口HS_HENGSHI_PORT是否对外开放。

  8. 如需配置nginx请参考: 安装与启动常见FAQ 中的1.1.3 如何通过80和443端口进行服务

1.5. 启动服务后相关操作

当HENGSHI SENSE服务运行时,需要定时备份数据防止数据丢失,及时清理无用日志释放存储空间。

  1. 定时备份数据

    建议每日对数据库metadb进行备份,可以备份到本地设备也可以备份到远程设备。定时备份建议在非业务高峰期进行,比如凌晨,避免影响用户使用服务。 下面示例是每日零时将数据备份到远程设备的执行命令,参数详细说明请参考数据备份

    0 0 * * * /opt/hengshi/bin/dbbackup.sh -m metadb -l /BACKUP/PATH -h $REMOTE_IP -r /BACKUP/PATH
    
  2. 定时清理日志

    运行过程中,HENGSHI SENSE会产生运行日志,这些日志需要定时清理释放存储空间。下面示例是每日定时清理内部数据库的滚动日志的命令。

    0 0 * * * /opt/hengshi/bin/clean_engine.sh -t -r -c -g -p   
     */5 * * * * /opt/hengshi/bin/clean_engine.sh -l
    

说明
在公网环境下,非必要场景中不要暴露衡石整体的服务端口,建议通过nginx+域名对外提供服务。避免因组件原因造成被攻击的情况。在特殊情况下,可通过IP+端口访问的形式使用web服务的端口(默认为8080)。

1.6. 停止服务

通过执行以下命令停止服务。

sudo su - hengshi             
cd /opt/hengshi               
bin/hengshi-sense-bin stop all

服务停止成功后,提示以下信息,模块状态为"NOT ACTIVE"。

NOT ACTIVE! : [metadb] @127.0.0.1:54320/hengshi
 NOT ACTIVE! : [engine] @127.0.0.1:15432/hengshi
 NOT ACTIVE! : [minio] minio server /opt/hengshi/minio-data
 NOT ACTIVE! : [redis] redis-server .*:6379
 NOT ACTIVE! : [flink] /opt/hengshi/lib/flink
 NOT ACTIVE! : [syslog] syslog-ng --no-caps --module-path=/opt/hengshi/lib/syslog-ng/lib/syslog-ng -f /opt/hengshi/conf/syslog-ng.conf -p /opt/hengshi/logs/syslog-ng.pid -R /opt/hengshi/logs/syslog-ng.persist -c /opt/hengshi/logs/syslog-ng.ctl
 NOT ACTIVE! : [hengshi] jar /opt/hengshi/lib/bootstrap-4.4-SNAPSHOT.jar
 NOT ACTIVE! : [watchdog] /opt/hengshi/bin/hengshi-watchdog.sh

1.7. 检查服务状态

在服务运行过程中,可通过执行以下命令查看程序运行状态。

sudo su - hengshi             
cd /opt/hengshi               
bin/hengshi-sense-bin status all

在程序运行状态的提示信息中,重点关注以下模块的状态信息,IS ACTIVE表示对应模块运行中,NOT ACTIVE表示对应模块停止服务。

NOT ACTIVE! : [metadb] @127.0.0.1:54320/hengshi
 NOT ACTIVE! : [engine] @127.0.0.1:15432/hengshi
 NOT ACTIVE! : [minio] minio server /opt/hengshi/minio-data
 NOT ACTIVE! : [redis] redis-server .*:6379
 NOT ACTIVE! : [flink] /opt/hengshi/lib/flink
 NOT ACTIVE! : [syslog] syslog-ng --no-caps --module-path=/opt/hengshi/lib/syslog-ng/lib/syslog-ng -f /opt/hengshi/conf/syslog-ng.conf -p /opt/hengshi/logs/syslog-ng.pid -R /opt/hengshi/logs/syslog-ng.persist -c /opt/hengshi/logs/syslog-ng.ctl
 NOT ACTIVE! : [hengshi] jar /opt/hengshi/lib/bootstrap-4.4-SNAPSHOT.jar
 NOT ACTIVE! : [watchdog] /opt/hengshi/bin/hengshi-watchdog.sh

results matching ""

    No results matching ""

    集群安装