当前位置: 首页 > news >正文

衡石分析平台使用手册-容器部署

容器部署​

本文介绍如何在容器上部署 HENGSHI SENSE,以及部署后如何进行版本升级和数据备份。

部署前准备工作​

单机部署前,请完成如下准备工作。

1.检查 docker 的环境。需要满足

  • Docker 版本 >= 17.09
  • 安装 docker-compose。

2.获取并导入离线镜像。

shell

wget https://download.hengshi.com/releases/hengshi-sense-xxx.tar.gz
docker load -i hengshi-sense-xxx.tar.gz

1
2

3.根据版本获取 docker-compose 部署文件。

安装版本部署文件组件依赖
3.xdocker-composemetadb、engine、hengshi
4.0.xdocker-composemetadb、engine、hengshi、minio
4.1.xdocker-composemetadb、engine、hengshi、minio、redis、flink
4.2.xdocker-composemetadb、engine、hengshi、minio、redis、flink
4.3.xdocker-composemetadb、engine、hengshi、minio、redis、flink
4.4.xdocker-composemetadb、engine、hengshi、minio、redis、flink
4.5.0 ~ 4.5.6docker-composemetadb、engine、hengshi、minio、redis、flink
4.5.7 ~ 4.5.x(x>7)docker-composemetadb、engine、hengshi、minio、redis、flink、apm-server
5.0.xdocker-composemetadb、engine、hengshi、minio、redis、flink、apm-server
5.1.xdocker-composemetadb、engine、hengshi、minio、redis、flink(已被移除 无需运行)、apm-server

单机部署​

请按下面的操作提示进行单机部署 HENGSHI 服务。

1.初始化 metadb 和引擎

shell

unzip -q docker-compose-x.x.x.zip # 将下载的 docker-compose 文件解压
cd docker-compose-x.x.x # 进入配置文件目录
cp hsenv .env # 修改.env 中的变量, HS_IMAGE_TAG 必须修改为导入的离线镜像的 tag 详细变量可参考文档底部示例;
# 安装前务必先做 metadb 和引擎的初始化操作,否则 hengshi 无法启动
docker-compose run --rm metadb init metadb # 初始化 metadb
docker-compose run --rm engine init engine # 初始化 engine

运行正常会出现如下提示。

shell

unzip -q docker-compose-x.x.x.zip
cd docker-compose-x.x.x
cp hsenv .envdocker-compose run --rm metadb init metadb# 日志中出现以下字样 则表示 metadb 初始化成功
INIT SUCCESS! : [metadb] /opt/hsdata/pg_data
docker-compose run --rm engine init engine
# 日志中出现以下字样 则表示 engine 初始化成功
INIT SUCCESS! : [engine] /opt/hsdata/engine-cluster
after config docker engine standalone

2.启动服务

shell

docker-compose up -d  # detach 方式启动

运行正常会出现如下提示。

shell

docker-compose up -d
[+] Running 8/8✔ Container hengshi-flink      Started   1.1s✔ Container hengshi-metadb     Started   1.1s✔ Container hengshi-engine     Started   1.0s✔ Container hengshi-apmserver  Started   0.8s✔ Container hengshi-minio      Started   1.0s✔ Container hengshi-monit      Started   1.0s✔ Container hengshi-redis      Started   1.2s✔ Container hengshi-sense      Started   1.9s

3.停止服务并删掉容器

shell

docker-compose down # 销毁容器

运行正常会出现如下提示。

shell

docker-compose down
[+] Running 9/8✔ Container hengshi-monit      Removed    0.0s✔ Container hengshi-apmserver  Removed    0.0s✔ Container hengshi-engine     Removed   10.4s✔ Container hengshi-sense      Removed    0.0s✔ Container hengshi-flink      Removed   10.3s✔ Container hengshi-metadb     Removed   10.4s✔ Container hengshi-minio      Removed   10.4s✔ Container hengshi-redis      Removed   10.2s✔ Network hengshi_default      Removed    0.1s

4.暂停服务

shell

docker-compose stop  # 停止容器服务

运行正常会出现如下提示。

shell

docker-compose stop
[+] Running 8/8✔ Container hengshi-monit      Stopped   0.0s✔ Container hengshi-sense      Stopped   0.0s✔ Container hengshi-apmserver  Stopped   0.0s✔ Container hengshi-engine     Stopped  10.6s✔ Container hengshi-minio      Stopped  10.5s✔ Container hengshi-flink      Stopped  10.4s✔ Container hengshi-metadb     Stopped  10.4s✔ Container hengshi-redis      Stopped  10.5s

5.启动暂停的服务

shell

docker-compose start # 启用暂停的容器

运行正常会出现如下提示。

shell

docker-compose start
[+] Running 8/8✔ Container hengshi-flink      Started  1.2s✔ Container hengshi-metadb     Started  0.9s✔ Container hengshi-apmserver  Started  1.0s✔ Container hengshi-redis      Started  1.0s✔ Container hengshi-engine     Started  0.9s✔ Container hengshi-monit      Started  1.2s✔ Container hengshi-minio      Started  0.8s✔ Container hengshi-sense      Started  0.7s


 

示例: .env 文件​

shell

#hengshi-sense 镜像的 tag 版本
HS_IMAGE_TAG=$TAG#可选, 配置 volumn 的根路径,默认为 docker-compose.yaml 目录下。可以选择配置。请规划数据盘,建议配置最大数据盘。
HSHOME=.# hengshi web service port
HS_HENGSHI_EXPOSE_PORT=8080# hengshi data-gateway service port
DATA_GATEWAY_PUBLIC_EXPOSE_PORT=8079#可选, 容器对外暴露的 metadb 端口, 默认54320
HS_PG_EXPOSE_PORT=54320# 可选,engine 类型 可选项 greenplum|doris
HS_ENGINE_TYPE=greenplum# 可选, engine 类型为 greenplum, engine 对外暴露的 端口
HS_ENGINE_EXPOSE_PORT=15432# 可选, engine 类型为 doris, engine 对外暴露的 端口
#HS_ENGINE_EXPOSE_PORT=9030# remote debug port
HS_JDWP_EXPOSE_PORT=5005# 可选,MINIO 服务暴露端口
HS_MINIO_EXPOSE_PORT=9891# 可选,MINIO 控制台对外暴露端口
HS_MINIO_CONSOLE_EXPOSE_PORT=9892# 可选,redis 服务暴露端口
HS_REDIS_EXPOSE_PORT=6379# 可选,flink 服务暴露端口
HS_FLINK_EXPOSE_PORT=8082# 可选,apmserver 服务暴露端口
HS_APMSERVER_EXPOSE_PORT=8200# MINIO 连接地址|登陆用户|登陆密钥
MINIO_SERVER_HOST=hengshi-minio
MINIO_ROOT_USER=hengshi
MINIO_ROOT_PASSWORD=hengshi202020

提示

配置.env 时请确保配置的端口没有被占用,可以执行 netstat -anpt 命令进行查询。

如内置引擎类型要求为 Doris,调整 HS_ENGINE_TYPE 参数

相关文章:

衡石分析平台使用手册-容器部署

容器部署​ 本文介绍如何在容器上部署 HENGSHI SENSE,以及部署后如何进行版本升级和数据备份。 部署前准备工作​ 单机部署前,请完成如下准备工作。 1.检查 docker 的环境。需要满足 Docker 版本 > 17.09安装 docker-compose。 2.获取并导入离线…...

静态库,动态库以及makefile基础

一.静态(链接)库 libfun.a 静态链接进可执行程序 可执行程序偏大 运行时只需要可执行程序即可 生成静态库步骤 gcc -c fun.c -o fun.o ar rcv libfun.a fun.o //需要用.o文件生成数据库 运行 gcc main.c libfun.a 二.动态库 libfun.so 动…...

Python基础语法(1)上

常量和表达式 我们可以把 Python 当成一个计算器,来进行一些算术运算。 print(1 2 - 3) print(1 2 * 3) print(1 2 / 3) 这里我们可能会有疑问,为什么不是1.6666666666666667呢? 其实在编程中,一般没有“四舍五入”这样的规则…...

使用 Python/java/go做一个微信机器人

E云是一套完整的的第三方服务平台,包含微信API服务、企微API服务、SCRM系统定制、企微系统定制、服务类软件定制等模块,本文档主要讲述个微API服务相关,以下简称API,它能处理用户微信中的各种事件,提供了开发者与个微对…...

【北京迅为】iTOP-i.MX6开发板使用手册第四部分固件编译第十四章非设备树Android4.4系统编译

可根据用户需求更换,百变定制,高端产品无忧! 迅为IMX6Q兼容四核商业级 、双核商业级、四核工业级 、更可提供i.MX6Q家族PLUS版本核心板。 核心板采用十层PCB沉金盲埋设计,更能保证电磁兼容与系统稳定。 公众号:迅为电…...

测评造假?Mistral首个多模态模型Pixtral 12B发布

测评造假?Mistral首个多模态模型Pixtral 12B发布! 近日,法国人工智能(AI)初创公司Mistral于9月11日宣布推出其首款多模态AI大模型——Pixtral 12B,成功吸引了全球科技界的广泛关注。这款集图像与文本处理能…...

【Java-简单练习题】

1.”AABBBCCC“>>"A2B3C3" public class Test6 {public static void main(String[] args) {String ns "AABBBCCCC";String retcompress(ns);System.out.println(ret);}public static String compress(String str) {StringBuilder ret new StringB…...

Notepad++ 下载安装教程

目录 1.下教程 2.安装教程 1.下教程 Downloads | Notepad (notepad-plus-plus.org) 进入下载地址后选择最新版点击连接 点击链接后,向下滑动,下载适合自己电脑版本的安装包 这里大家没有梯子可能打不开页面,可以直接从本文开头下载。 2.安…...

shader 案例学习笔记之smoothstep函数

参考:smoothstep 用来生成0-1的平滑过渡值 smoothstep函数源码实现: float smoothstep(float t1, float t2, float x) {// Scale, bias and saturate x to 0..1 rangex clamp((x - t1) / (t2 - t1), 0.0, 1.0); // Evaluate polynomialreturn x * x *…...

大模型的第一个杀手级应用场景出来了

大家终于都意识到大模型首先改变的是软件行业自己,而软件的根基是代码生成。代码生成第一波就是AI辅助开发,这个会是大模型第一个杀手级应用。大家苦苦逼问自己的大模型杀手级应用,为什么会是辅助编程,这里说下什么: 必…...

不允许有程序员不知道这款AI代码扩写工具

01CodeGeeX编程大模型 在介绍什么是codeGeeX之前,先上图。 想象一下,自己写代码的时候旁边有个专家助手,随时跟你解释前面别人写的代码是什么意思,有什么缺陷。在你自己写的时候也可以每一步进行代码提示和代码扩写,是…...

java 的list集合排序自定义元素

在 Java 中,可以对包含自定义元素的List集合进行排序。通常可以使用Collections.sort()方法结合自定义的比较器来实现。 一、定义包含自定义元素的类 假设我们有一个表示学生的类Student: class Student {private int id;private String name;private …...

【数学建模】2024数学建模国赛经验分享

文章目录 一、关于我二、我的数模历程三、经验总结: 一、关于我 我的CSDN主页:https://gxdxyl.blog.csdn.net/ 2020年7月(大二结束的暑假)开始在CSDN写作: 阿里云博客专家: 接触的领域挺多的&#xff…...

Scala尾递归解决爆栈问题

引言 我在上篇中详细的讲了递归的一系列问题,多路递归,爆栈问题,尾递归优化等,今天就实际演示一下尾递归是如何解决爆栈问题的,以及它的原理是什么? 支持尾递归优化的语言 尾递归是一种特殊的递归形式,如果…...

【观察者】设计模式:构建灵活且响应式的软件系统

引言 在软件开发中,我们经常面临需要在多个对象之间进行通信的挑战。特别是当一个对象的状态发生变化时,我们希望所有依赖于这个状态的对象都能自动更新。这就是观察者设计模式大显身手的地方。 简介 观察者模式是一种行为设计模式,它定义…...

开源网安斩获CCIA中国网络安全创新创业大赛总决赛三等奖

近日,由中央网信办指导,中国网络安全产业联盟(CCIA)主办的2024年中国网络安全创新创业大赛总决赛及颁奖典礼在国家网络安全宣传周落下帷幕。开源网安“AI代码审核平台CodeSec V4.0” 凭借在AI方向的技术创新、技术突破及功能应用创…...

进程的同步与互斥

目录 一、进程同步 二、进程互斥 1.临界资源访问代码: ①进入区 ②临界区 ③退出区 ④剩余区 注: 2.互斥准则: ①.空闲让进。 ②.忙则等待。 ③.有限等待。 ④.让权等待。 三、进程互斥的软件实现方法 1.单标志法 2.双标志先…...

基础的八股

JS this 全局:this指向window 函数:this指向window 对象:this指向调用它的 get、post的区别 1、写的地方不同:get在地址栏里 地址栏有多长就只能写多少、post在请求体里 没有上限 2、关于回退和刷新:get回退和刷新没问…...

使用Python从头开始创建PowerPoint演示文稿

目录 一、环境搭建与基础知识 1.1 环境搭建 1.2 基础知识 二、创建演示文稿对象 三、添加幻灯片 3.1 选择幻灯片布局 3.2 设置幻灯片内容 3.2.1 设置标题和副标题 3.2.2 添加文本内容 3.2.3 插入图片 3.2.4 插入图表 四、高级应用:批量生成演示文稿 4.…...

【C++ Primer Plus习题】15.4

大家好,这里是国中之林! ❥前些天发现了一个巨牛的人工智能学习网站&#xff0c;通俗易懂&#xff0c;风趣幽默&#xff0c;忍不住分享一下给大家。点击跳转到网站。有兴趣的可以点点进去看看← 问题: 解答: main.cpp #include <iostream> #include "sales.h"…...

设计模式和设计原则回顾

设计模式和设计原则回顾 23种设计模式是设计原则的完美体现,设计原则设计原则是设计模式的理论基石, 设计模式 在经典的设计模式分类中(如《设计模式:可复用面向对象软件的基础》一书中),总共有23种设计模式,分为三大类: 一、创建型模式(5种) 1. 单例模式(Sing…...

Prompt Tuning、P-Tuning、Prefix Tuning的区别

一、Prompt Tuning、P-Tuning、Prefix Tuning的区别 1. Prompt Tuning(提示调优) 核心思想:固定预训练模型参数,仅学习额外的连续提示向量(通常是嵌入层的一部分)。实现方式:在输入文本前添加可训练的连续向量(软提示),模型只更新这些提示参数。优势:参数量少(仅提…...

(十)学生端搭建

本次旨在将之前的已完成的部分功能进行拼装到学生端&#xff0c;同时完善学生端的构建。本次工作主要包括&#xff1a; 1.学生端整体界面布局 2.模拟考场与部分个人画像流程的串联 3.整体学生端逻辑 一、学生端 在主界面可以选择自己的用户角色 选择学生则进入学生登录界面…...

Zustand 状态管理库:极简而强大的解决方案

Zustand 是一个轻量级、快速和可扩展的状态管理库&#xff0c;特别适合 React 应用。它以简洁的 API 和高效的性能解决了 Redux 等状态管理方案中的繁琐问题。 核心优势对比 基本使用指南 1. 创建 Store // store.js import create from zustandconst useStore create((set)…...

从深圳崛起的“机器之眼”:赴港乐动机器人的万亿赛道赶考路

进入2025年以来&#xff0c;尽管围绕人形机器人、具身智能等机器人赛道的质疑声不断&#xff0c;但全球市场热度依然高涨&#xff0c;入局者持续增加。 以国内市场为例&#xff0c;天眼查专业版数据显示&#xff0c;截至5月底&#xff0c;我国现存在业、存续状态的机器人相关企…...

Objective-C常用命名规范总结

【OC】常用命名规范总结 文章目录 【OC】常用命名规范总结1.类名&#xff08;Class Name)2.协议名&#xff08;Protocol Name)3.方法名&#xff08;Method Name)4.属性名&#xff08;Property Name&#xff09;5.局部变量/实例变量&#xff08;Local / Instance Variables&…...

C++ 设计模式 《小明的奶茶加料风波》

&#x1f468;‍&#x1f393; 模式名称&#xff1a;装饰器模式&#xff08;Decorator Pattern&#xff09; &#x1f466; 小明最近上线了校园奶茶配送功能&#xff0c;业务火爆&#xff0c;大家都在加料&#xff1a; 有的同学要加波霸 &#x1f7e4;&#xff0c;有的要加椰果…...

(一)单例模式

一、前言 单例模式属于六大创建型模式,即在软件设计过程中,主要关注创建对象的结果,并不关心创建对象的过程及细节。创建型设计模式将类对象的实例化过程进行抽象化接口设计,从而隐藏了类对象的实例是如何被创建的,封装了软件系统使用的具体对象类型。 六大创建型模式包括…...

django blank 与 null的区别

1.blank blank控制表单验证时是否允许字段为空 2.null null控制数据库层面是否为空 但是&#xff0c;要注意以下几点&#xff1a; Django的表单验证与null无关&#xff1a;null参数控制的是数据库层面字段是否可以为NULL&#xff0c;而blank参数控制的是Django表单验证时字…...

【C++】纯虚函数类外可以写实现吗?

1. 答案 先说答案&#xff0c;可以。 2.代码测试 .h头文件 #include <iostream> #include <string>// 抽象基类 class AbstractBase { public:AbstractBase() default;virtual ~AbstractBase() default; // 默认析构函数public:virtual int PureVirtualFunct…...