使用阿里云快速搭建 DataLight 平台

使用阿里云快速搭建 DataLight 平台

本篇文章由用户 “闫哥大数据” 分享,B 站账号:https://space.bilibili.com/357944741?spm_id_from=333.999.0.0

注意:因每个人操作顺序可能略有区别,整个部署流程如果出现出入,以官方文档为准。

DataLight 相关资源

🌐 DataLight 开源项目官网:
http://datalight.boundivore.cn

🌐 后端开源地址:
https://gitee.com/boundivore/boundivore-datalight

🌐 前端开源地址:
https://gitee.com/boundivore/boundivore-datalight-web

🌐 百度网盘:-开源资源包下载地址:
链接:https://pan.baidu.com/s/1342bIcEBDQHdFA35KUTjbQ
提取码:data

🌐 123网盘-开源资源包下载地址:
链接:https://www.123pan.com/s/7j3rTd-iFzKd?
提取码:6666

🌐 视频教程:
https://space.bilibili.com/3546708503955571/channel/seriesdetail?sid=4187881&ctype=0

一、概述

部署 DataLight 平台过程中,需要遵循按需分配原则,本教程旨在帮助用户快速预览 DataLight 大数据平台,用户可根据需要,自行调整配置。如果需要部署的服务较多,则需要更多的资源,用户可按需部署自己需要的服务,并在配置文件管理功能中,自行调整各个服务对于资源的占用情况。

二、购买阿里云抢占式资源服务器

2.1 登录阿里云页面

登录阿里云页面,找到 ECS 服务器购买页面。

2.2 创建 ECS 实例

2.3 选择实例配置

如果目的是测试预览,则可以选择最低成本的抢占式实例。

2.4 选择系统

购买三台,第一台配置高一些,4 核 16G 内存,另外两个可以 2 核 8G 内存即可

2.5 配置系统盘容量与网络

如果准备下载并上传全量 DataLight 资源包到节点,则推荐系统盘为 100G。

如果为了测试预览,则外网带宽可选择按量计费以降低成本。

在配置外网 IP 时,如果不希望除主节点外,其他节点有外网访问权限(可进一步降低成本),可在主节点上搭建 VPN 来实现对集群内其他节点的访问。

2.6 配置节点密码

配置访问系统的 root 用户的密码。

2.7 完成创建

购买成功,如下图所示。

2.8 修改实例名称

用户可根据需要,自行修改 ECS 服务器名称。

三、修改节点配置

该过程在不同云厂商系统环境中可能存在细微区别,但大体上一致。

在初始化节点时,用户可根据 DataLight 教程,通过帮助脚本,完成节点的自动初始化工作。

当然,也可以手动完成。

3.1、建立远程连接

通过 SSH 工具,建立与 ECS 服务器的远程连接访问。此处可以通过 VPN 或直连外网 IP。建立连接的节点,是你准备部署 DataLight Master 进程所在的节点。

配置3台节点。此处如果 node02、node03 没有分配外网 IP,可以考虑在 node01 上搭建 VPN 以使得外网访问穿透到 node02 node03节点。

3.2、修改主机名

sh /opt/datalight/assistant/scripts/init-hostname.sh node01
sh /opt/datalight/assistant/scripts/init-hostname.sh node02
sh /opt/datalight/assistant/scripts/init-hostname.sh node03

修改完,重启服务器

3.3、修改 hosts 映射文件

vi /etc/hosts
172.17.238.41   node01  node01
172.17.238.43   node02  node02
172.17.238.42   node03  node03

注意:阿里云的 /etc/hosts 中下方标记的内容需要删除。

3.4、修改安全组

为了安装方便,放行所有端口,并指定允许的 IP 为你当前本机交换机或路由器的 IP 地址,防止网络恶意脚本的攻击。

注意:可以通过百度搜索:IP 来查看当前自己的本机外网 IP。

3.6、免密登录,可通过初始化脚本自行完成

ssh-keygen -t rsa然后免密登录 node01 node02 node03
ssh-copy-id node01
ssh-copy-id node02
ssh-copy-id node03

四、购买 mysql 数据库

4.1 前往阿里云 RDS 产品页面

购买 MySQL 数据库实例。

4.2 配置 RDS 实例内容

4.3 查看 RDS 实例列表

4.4 完成创建,并查看访问地址

创建成功后,点击进入,创建外网连接。

4.5 初始化 RDS 数据库账号密码

单击“创建账号”前往 RDS 账号密码配置页面。

4.6 完成账号创建

创建数据库管理员账号、密码。

4.7 通过工具连接 RDS 数据库实例。

远程连接 MySQL:

五、初始化 MySQL 数据库

5.1 创建 DataLight 数据库

在运行 DataLight 之前,创建 DataLight 数据库。

CREATE DATABASE db_datalight DEFAULT CHARACTER SET utf8mb4 COLLATE utf8mb4_unicode_ci;

5.2 导入 DataLight 表结构

导入 sql 文件的数据,SQL 语句的位置:D:\datalight\Boundivore\datalight部署包\datalight\orm\sql

5.3 导入完成,查看表内容

六、上传 DataLight 资源包

6.1 创建 DataLight 文件夹

在 Linux 系统中,创建文件夹 DataLight,命令如下:

mkdir -p /opt/datalight

6.2 准备上传工具

将内容拷贝上去:由于 Finalshell 拷贝大量文件夹时,老出现拷贝不全的情况。

该工具的下载链接是:https://www.filezilla.cn/download/client

6.3 查看待上传内容

6.4 准备上传

无论是 Finalshell 还是 Filezilla ,在拖拽的过程中,经常会因为网络抖动,造成文件丢失,所以为了保险起见,请先在当前本地系统中压缩整个资源包后,上传压缩包,并在 Linux解压更为稳妥。

6.5 上传压缩包

由于 K8S 较大,很多尝鲜的小伙伴用不上,上传 plugins 的时候可以不上传 KUBESPHERE 插件包。

仅需在第一个 node01(主节点) 节点上上传 datalight 文件夹下的内容,其它节点不需要上传。

6.6 解压压缩包

上传完成后,使用如下命令解压压缩包:

unzip dl.zip -d /opt/datalight/

6.7 安装系统依赖

可手动在每个节点完成如下内容的安装,也可以使用自动初始化脚本完成安装。

yum -y install epel-release  # 安装 EPEL 仓库,提供额外的软件包
yum -y install jq  # 安装 jq,用于处理 JSON 数据
yum -y install curl  # 安装 curl,用于命令行数据传输
yum -y install chrony  # 安装 chrony,用于时间同步
yum -y install expect  # 安装 expect,用于自动化交互式 shell 脚本
yum -y install openssl openssl-devel patch  # 安装 OpenSSL 和开发包及 patch 工具
yum -y install lrzsz  # 安装 lrzsz,用于 ZMODEM 文件传输
yum -y install unzip zip  # 安装 unzip 和 zip,用于解压和压缩文件
yum -y install yum-utils  # 安装 yum-utils,提供额外的 yum 命令
yum -y install net-tools  # 安装 net-tools,提供网络工具如 ifconfig
yum -y install bc
yum -y install gcc gcc-c++  # 安装 GCC 和 G++ 编译器
yum -y install make  # 安装 make,构建自动化工具
yum -y install autoconf automake libtool curl  # 安装 autoconf、automake、libtool 和 curl,用于构建和配置软件
yum -y install zlib lzo-devel zlib-devel openssl openssl-devel ncurses-devel ruby  # 安装 zlib、lzo-devel、zlib-devel、openssl、openssl-devel、ncurses-devel 和 ruby,用于压缩、加密、终端控制和 Ruby 语言支持
yum -y install snappy snappy-devel bzip2 bzip2-devel lzo lzo-devel lzop libXtst  # 安装 snappy、snappy-devel、bzip2、bzip2-devel、lzo、lzo-devel、lzop 和 libXtst,用于数据压缩和图形界面支持

6.8 修改自动初始化脚本配置

修改配置文件:/opt/datalight/assistant/conf/init-main-cluster.properties

# 准备初始化的节点列表配置信息,Key 前缀为序号,不可重复,需要初始化多少节点,则添加多少节点
# 建议:1.node.ip 为当前执行脚本的节点 IP
1.node.ip=172.17.238.41
1.node.ssh.port=22
1.node.hostname=node01
1.node.user.root=root
1.node.pwd.root=***************
1.node.user.datalight=datalight
1.node.pwd.datalight=123456782.node.ip=172.17.238.43
2.node.ssh.port=22
2.node.hostname=node02
2.node.user.root=root
2.node.pwd.root=***************
2.node.user.datalight=datalight
2.node.pwd.datalight=123456783.node.ip=172.17.238.42
3.node.ssh.port=22
3.node.hostname=node03
3.node.user.root=root
3.node.pwd.root=***************
3.node.user.datalight=datalight
3.node.pwd.datalight=12345678

6.9 修改数据库连接配置

由于你使用的是阿里云的数据库,所以需要修改 Master 连接 MySQL 的连接。

database:mysql:host: rm-2zesz8wlma97k45imdo.mysql.rds.aliyuncs.comport: 3306user: rootpassword: "******"dbName: db_datalight

6.10 修改 iptables.conf

如果启用了 iptables,则需修改如下内容。

39.105.124.191 22
39.105.124.191 80
39.105.124.191 443
39.105.124.191 8001
39.105.124.191 8002

6.11 启动时间同步

三台服务器的时间要同步,不同步,启动会失败。

systemctl enable chronyd
systemctl restart chronyd

6.12 执行整个节点的初始化脚本

上面的步骤中,有一部分内容的操作,在自动初始化脚本 init-main.sh 中已经包含了,只是本人手动操作了一部分。

具体差异可对比官方文档。

检查 /opt/datalight/assistant/repo/jdk 下 是否有jdk,没有的话需要上传。最终执行如下命令。

cd /opt/datalight/assistantsh main/init-main.sh

初始化过程如下图所示。

七、启动 Master

7.1 必要检查

请先检查 3 台节点的时间是否同步。

init-main.sh 脚本执行完毕后,环境变量不刷新,需要 3 台节点都重新刷新一下环境变量,以使当前 SSH Session 生效。或重连 SSH 会话。

source /etc/profile

7.2 启动 Master 进程

在 node01 节点,启动 Master 进程,命令如下。

/opt/datalight/bin/datalight.sh start master 8001

通过 jps 命令查看进程。

八、配置本地 IP 与主机名映射

为方便后续使用,可以在本地系统中配置 hosts 映射。

Windwos 中的路径如下:

C:\Windows\System32\drivers\etc

添加内容:

39.105.124.191 node01
39.105.126.251 node02
39.105.141.49 node03

九、访问 DataLight 页面

启动成功后,进行页面访问:

http://node01:8001

默认账户:admin

默认密码:admin

访问页面如下:

如遇失败,可查看日志:

/data/datalight/logs/app/datalight-master.log

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.rhkb.cn/news/471942.html

如若内容造成侵权/违法违规/事实不符,请联系长河编程网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

H.265流媒体播放器EasyPlayer.js H.264/H.265播放器chrome无法访问更私有的地址是什么原因

EasyPlayer.js H5播放器,是一款能够同时支持HTTP、HTTP-FLV、HLS(m3u8)、WS、WEBRTC、FMP4视频直播与视频点播等多种协议,支持H.264、H.265、AAC、G711A、MP3等多种音视频编码格式,支持MSE、WASM、WebCodec等多种解码方…

QT_CONFIG宏使用

时常在Qt代码中看到QT_CONFIG宏,之前以为和#define、DEFINES 差不多,看了定义才发现不是那么回事,定义如下: 看注释就知道了QT_CONFIG宏,其实是:实现了一个在编译时期安全检查,检查指定的Qt特性…

centos7安装Chrome使用selenium-wire

背景:在centos7中运行selenium-wire爬虫,系统自带的Firefox浏览器不兼容,运行报错no attribute ‘set_preference’,应该是selenium-wire和Firefox的驱动不兼容 查了半天不知道怎么解决,就想在centos7上安装Chrome来跑…

医院信息化与智能化系统(21)

医院信息化与智能化系统(21) 这里只描述对应过程,和可能遇到的问题及解决办法以及对应的参考链接,并不会直接每一步详细配置 如果你想通过文字描述或代码画流程图,可以试试PlantUML,告诉GPT你的文件结构,让他给你对应…

《FreeRTOS任务控制块篇》

Task control block, 即任务控制块。任务控制块(TCB)是一个结构体,它会分配给每个任务,其中存储着任务的状态信息,包括指向任务上下文(任务的运行时环境,包括寄存器值)的指针。任务控…

Queuing 表(buffer表)的优化实践 | OceanBase 性能优化实践

案例问题描述 该案例来自一个金融行业客户的问题:他们发现某个应用对一个数据量相对较小的表(仅包含数千条记录)访问时,频繁遇到性能下降的情况。为解决此问题,客户向我们求助进行分析。我们发现这张表有频繁的批量插…

ssh登陆服务器后支持Tab键命令补全

在服务器上新建了用户后,通过ssh登录到服务器后发现不能使用Tab键来进行命令补全 截图如下: 以为没有配置.bashrc 此时输入 source 发现无此命令 细心的可以发现 -sh 于是输入命令echo $SHELL 确认此时的shell为sh, 只要输入命令bash即可切…

[白月黑羽]关于仿写类postman功能软件题目的解答

原题: 答: python文件如下 from PySide6.QtWidgets import QApplication, QMessageBox,QTableWidgetItem,QHeaderView,QWidget,QTableWidget from PySide6.QtCore import QEvent,QObject from PySide6.QtUiTools import QUiLoader import time import …

Postman接口测试(断言、关联、参数化、输出测试报告)

基本界面展示 Get、Post请求 Postman断言 使用postman来判断预期结果与实际结果是否一致 响应状态码断言 响应包含字符串 断言判断字符串的格式 关联 用于解决http请求之间存在依赖关系 依赖:一个http请求的响应结果中的数据,被另一个请求使用 登…

【卡尔曼滤波】数据融合Fusion的应用 C语言、Python实现(Kalman Filter)

【卡尔曼滤波】数据融合Fusion的应用 C语言、Python实现(Kalman Filter) 更新以gitee为准: gitee地址 文章目录 卡尔曼滤波数据融合Python实现C语言实现多个数据如何融合附录:压缩字符串、大小端格式转换压缩字符串浮点数压缩Pac…

网络原理-网络层和数据链路层

一、网络层 1、IP协议完成的工作 地址管理:使用一套地址体系来描述所没备的位置 路由选择:一个数据包如何从网络的某个地址传到另一个地址 2、IP报头 4 位版本号:取值为4或6 (IPv4/IPv6) 4 位首部长度:IP报头,单位…

【Three.js基础学习】22.New project structure

提示:文章写完后,目录可以自动生成,如何生成可参考右边的帮助文档 前言 这里将使用全新的项目结构,将不同工具分层,区分开使用。 一、结构目录 二、对应文件 1.script.js 获取画布,引入样式和功能。 /* 课…

AI风向标|算力与通信的完美融合,SRM6690解锁端侧AI的智能密码

当前,5G技术已经成为推动数字经济和实体经济深度融合的关键驱动力,进入5G发展的下半场,5G与AI的融合正推动诸多行业的数字化转型和创新发展,终端侧AI和端云混合式AI将广泛应用于各类消费终端和各行各业。 在推动5G和AI与各行业场…

【WPF】Prism学习(二)

Prism Commands 1.命令(Commanding) 1.1. ViewModel的作用: ViewModel不仅提供在视图中显示或编辑的数据,还可能定义一个或多个用户可以执行的动作或操作。这些用户可以通过用户界面(UI)执行的动作或操作…

智慧建造-运用Trimble技术将梦幻水族馆变为现实【上海沪敖3D】

项目概述 西雅图水族馆耗资1.6亿美元对海洋馆进行扩建。该项目包括建造三个大型栖息地,每个建筑物几乎都没有直边,其中一个主栖息地由520立方米混凝土和355吨钢筋组成。特纳建筑公司的混凝土团队通过强大的贸易合作伙伴和创新的数字制造技术,…

kubesphere环境-本地Harbor仓库+k8s集群(单master 多master)+Prometheus监控平台部署

前言:半月前在公司生产环境上离线部署了k8s集群Victoria Metrics(二开版)自研版夜莺 监控平台的搭建,下面我租用3台华为云服务器演示部署kubesphere环境-本地Harbor仓库k8s集群(单master节点 & 单master节点)Prometheus监控部…

java 随机生成验证码

1.需求 实现随机生成验证码,验证码可能是大小写字母和数字 2.实现 写一个getCode方法实现 public static String getCode(int n){//1. 定义一个字符串,字符串中包含大小写字母和数字String str "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrs…

Unity图形学之Blend指令

1.渲染流程:Blend 决定了要渲染的像素和Gbuffer里像素到底怎么取舍 2.Blend 公式: 3.factor可以取值的内容有: One 1 Zero :0 SrcColor : 要渲染的像素 SrcAlpha : 要渲染像素的 a 通道。 DstColor : 已经渲染在gbuffer…

林曦词典|养生

“林曦词典”是在水墨画家林曦的课堂与访谈里,频频邂逅的话语,总能生发出无尽的思考。那些悠然轻快的、微妙纷繁的,亦或耳熟能详的词,经由林曦老师的独到解析,意蕴无穷,让人受益。于是,我们将诸…

生成自签名证书并配置 HTTPS 使用自签名证书

生成自签名证书 1. 运行 OpenSSL 命令生成证书和私钥 在终端中输入以下命令,生成自签名证书和私钥文件: sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 -keyout self_signed.key -out self_signed.pem-x509:生成自签名证书。…