使用阿里云快速搭建 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
相关文章:

使用阿里云快速搭建 DataLight 平台
使用阿里云快速搭建 DataLight 平台 本篇文章由用户 “闫哥大数据” 分享,B 站账号:https://space.bilibili.com/357944741?spm_id_from333.999.0.0 注意:因每个人操作顺序可能略有区别,整个部署流程如果出现出入,以…...
ubuntu设置自启动
1. 把要启动的程序或者脚本(比如A.sh、A1)放在 /usr/sbin 目录中。比如我的 A.sh 只是启动 A1 程序: #!/bin/bash/usr/sbin/A1echo "A1 finish!!!" 需要注意的是,脚本和程序都要有可执行的权限才行 2. 在 /etc/systemd/system 目录中创建 .…...
Paddle分布式训练报NCCL错
应该是没有装NCCL,但是通过NVIDIA官网方式用apt安装报错,说nccl签名有问题 打开官网查找对应版本的nccl:https://developer.nvidia.com/nccl/nccl-legacy-downloads 这里不下载local Ubuntu选项,下载O/S agnostic local install…...

PD3.1快充对我们到底有没有必要?
在科技飞速发展的今天,各种智能设备和电子产品已经渗透到了我们生活的方方面面。随之而来的,是对充电速度和效率的不断追求。正是在这样的背景下,USB联盟于2021年6月发布了最新的快充协议——PD3.1。那么,PD3.1快充协议对我们到底…...

Android OpenGL ES详解——立方体贴图
目录 一、概念 二、如何使用 1、创建立方体贴图 2、生成纹理 3、设置纹理环绕和过滤方式 4、激活和绑定立方体贴图 三、应用举例——天空盒 1、概念 2、加载天空盒 3、显示天空盒 4、优化 四、应用举例——环境映射:反射 五、应用举例——环境映射:折射 六、应用…...

Bugku CTF_Web——字符?正则?
Bugku CTF_Web——字符?正则? 进入靶场 <?php highlight_file(2.php); $keyflag{********************************}; $IM preg_match("/key.*key.{4,7}key:\/.\/(.*key)[a-z][[:punct:]]/i", trim($_GET["id"]), $match); if…...
C# 中Math.Round 和 SQL Server中decimal(18,2) 不想等的问题
首先了解Math.Round方法的默认舍入规则 在C#中,Math.Round方法使用的是“银行家舍入法”(也叫四舍六入五成双)。这种舍入规则是:当要舍弃的数字小于5时直接舍去;当要舍弃的数字大于5时进位;当要舍弃的数字正…...
lab2:docker基础实战
一、实验目的 1.通过本次实验,完成Docker主机的安装和配置、镜像的搜索和下载、容器生命周期的基本管理、容器网络的管理。 2.通过Dockerfile来构建nginx镜像,了解Dockerfile镜像构建过程。 二、实验内容与实验要求 1.完成Docker的安装和配置。 2.完…...
Druid 1.2 源码导读
Druid 是阿里巴巴开源的数据库连接池和监控组件,广泛用于 Java 应用程序中。Druid 1.2 版本提供了高性能的连接池和丰富的监控功能。以下是对 Druid 1.2 源码的导读,帮助你理解其架构和设计。 1. 源码获取 从 GitHub 上获取 Druid 1.2 的源码ÿ…...
千益畅行,共享旅游卡市场乱象解析与未来展望
在当今旅游市场蓬勃发展的大背景下,共享旅游卡作为一种新兴的旅游消费模式,受到了广泛关注。然而,伴随着其快速发展,市场乱象也层出不穷。作为千益畅行共享旅游卡的全国运营总监,我深感有必要对这些问题进行深入剖析&a…...

Dubbo源码解析-服务导出(四)
一、服务导出 当我们在某个接口的实现类上加上DubboService后,就表示定义了一个Dubbo服务,应用启动时Dubbo只要扫描到了DubboService,就会解析对应的类,得到服务相关的配置信息,比如: 1. 服务的类型&…...
浅谈React的虚拟DOM
React的虚拟DOM:揭秘高效渲染的秘密 在React中,虚拟DOM(Virtual DOM)是一个核心概念,它是React能够提供高效渲染和更新的关键。虚拟DOM是一个轻量级的JavaScript对象,表示真实的DOM树。通过使用虚拟DOM&am…...
linux上海康SDK安装并设置环境变量
将HCNetSDK下linux部分复制到客户端电脑/usr/lib/HCNetSDK下:sudo cp -r H /usr/lib/HCNetSDK H是我的文件夹,要把这个文件夹的内容复制到/usr/lib/HCNetSDK路径里。 编辑:vi ~/.bashrc 找到export,按 i 插入换行添加 export LD_LIBRARY_PATH$LD_LIB…...

【计算机网络】UDP网络程序
一、服务端 1.udpServer.hpp 此文件负责实现一个udp服务器 #pragma once#include <iostream> #include <string> #include <cstdlib> #include <cstring> #include <functional> #include <strings.h> #include <unistd.h> #incl…...

什么是全域电商?有哪些电商代运营公司能做全域电商代运营?
什么是全域电商?有哪些电商代运营公司能做全域电商代运营? 随着电商行业的迅猛发展,传统的单一平台运营模式已经无法满足品牌多元化发展的需求。在此背景下,全域电商作为一种新兴的运营方式应运而生,成为越来越多品牌在…...
微信小程序上传pdf和显示
引用:https://blog.csdn.net/qq_54027065/article/details/129854339 loadResume(){let that thisuni.showLoading({title:"下载中"})wx.downloadFile({url:url,success:(res)>{console.log(res,"res11111")if (res.statusCode 200){setTi…...

MongoDB分布式集群搭建----副本集----PSS/PSA
MongoDB分布式集群 Replication 复制、Replica Set 复制集/副本集 概念 一、 副本集的相关概念 1.概念 “ A replica set is a group of mongod instances that maintain the same data set. ” 一组MongoDB服务器(多个mongod实例)(有不…...

PDF编辑的好东西
1.Eage浏览器 直接拖到浏览器中就ok了,这样读书的话是非常爽的,然后的话最近,也不知道学啥,vue开发网站,一开始的配置,也是给我难到了,所以没有办法,就随便找点书看看吧,…...

块设备的两种访问方法的区别
概述 1.当我们运行类似于“dd if/dev/sdb1ofsdb1.img”的命令把整个/dev/sdb1裸分区复制到sdb1.img的时候,内核走的是def_blk_fops这个file_operations 2.另外一种方法是通过文件系统来访问块设备,file_operations的实现则位于文件系统内,文…...
java 泛型中的 ?
在 Java 泛型中,? 被称为通配符(wildcard),它代表了未知的类型。使用通配符可以增加代码的灵活性,允许在不知道具体类型的情况下操作泛型类或接口。通配符主要有以下几种形式: 无界通配符(Unbo…...

eNSP-Cloud(实现本地电脑与eNSP内设备之间通信)
说明: 想象一下,你正在用eNSP搭建一个虚拟的网络世界,里面有虚拟的路由器、交换机、电脑(PC)等等。这些设备都在你的电脑里面“运行”,它们之间可以互相通信,就像一个封闭的小王国。 但是&#…...
模型参数、模型存储精度、参数与显存
模型参数量衡量单位 M:百万(Million) B:十亿(Billion) 1 B 1000 M 1B 1000M 1B1000M 参数存储精度 模型参数是固定的,但是一个参数所表示多少字节不一定,需要看这个参数以什么…...

定时器任务——若依源码分析
分析util包下面的工具类schedule utils: ScheduleUtils 是若依中用于与 Quartz 框架交互的工具类,封装了定时任务的 创建、更新、暂停、删除等核心逻辑。 createScheduleJob createScheduleJob 用于将任务注册到 Quartz,先构建任务的 JobD…...

《基于Apache Flink的流处理》笔记
思维导图 1-3 章 4-7章 8-11 章 参考资料 源码: https://github.com/streaming-with-flink 博客 https://flink.apache.org/bloghttps://www.ververica.com/blog 聚会及会议 https://flink-forward.orghttps://www.meetup.com/topics/apache-flink https://n…...
HTML前端开发:JavaScript 常用事件详解
作为前端开发的核心,JavaScript 事件是用户与网页交互的基础。以下是常见事件的详细说明和用法示例: 1. onclick - 点击事件 当元素被单击时触发(左键点击) button.onclick function() {alert("按钮被点击了!&…...
【无标题】路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论
路径问题的革命性重构:基于二维拓扑收缩色动力学模型的零点隧穿理论 一、传统路径模型的根本缺陷 在经典正方形路径问题中(图1): mermaid graph LR A((A)) --- B((B)) B --- C((C)) C --- D((D)) D --- A A -.- C[无直接路径] B -…...

系统掌握PyTorch:图解张量、Autograd、DataLoader、nn.Module与实战模型
本文较长,建议点赞收藏,以免遗失。更多AI大模型应用开发学习视频及资料,尽在聚客AI学院。 本文通过代码驱动的方式,系统讲解PyTorch核心概念和实战技巧,涵盖张量操作、自动微分、数据加载、模型构建和训练全流程&#…...

stm32wle5 lpuart DMA数据不接收
配置波特率9600时,需要使用外部低速晶振...

DeepSeek越强,Kimi越慌?
被DeepSeek吊打的Kimi,还有多少人在用? 去年,月之暗面创始人杨植麟别提有多风光了。90后清华学霸,国产大模型六小虎之一,手握十几亿美金的融资。旗下的AI助手Kimi烧钱如流水,单月光是投流就花费2个亿。 疯…...
RLHF vs RLVR:对齐学习中的两种强化方式详解
在语言模型对齐(alignment)中,强化学习(RL)是一种重要的策略。而其中两种典型形式——RLHF(Reinforcement Learning with Human Feedback) 与 RLVR(Reinforcement Learning with Ver…...