大数据管理平台DataSophon-1.2.1【图文详细部署流程】

一、DataSophon介绍

1.1、愿景

致力于快速实现部署、管理、监控以及自动化运维大数据云原生平台,帮助您快速构建起稳定、高效、可弹性伸缩的大数据云原生平台。

1.2、DataSophon是什么

《三体》,这部获世界科幻文学最高奖项雨果奖的作品以惊艳的"硬科幻"风被大家所熟知,其作者刘慈欣更是被誉为"单枪匹马将中国科幻提高到世界级水平"。

作为三体中非常重要的角色,智子(Sophon)是将九维的质子进行二维展开,通过电路蚀刻改造成超级计算机后,再转回到微观的十一维来监控人类的一举一动,并利用量子纠缠实现瞬时通信报告给4光年之外的三体文明。说白了智子是三体文明部署在地球的AI实时远程监控和管理平台。

DataSophon也是个类似的管理平台,只不过与智子不同的是,智子的目的是锁死人类的基础科学阻碍人类技术爆炸,而DataSophon是致力于自动化监控、运维、管理大数据基础组件和节点的,帮助您快速构建起稳定,高效的大数据集群服务。

1.3主要特性有:

  • 快速部署,可快速完成300个节点的大数据集群部署
  • 兼容复杂环境,极少的依赖使其很容易适配各种复杂环境
  • 监控指标全面丰富,基于生产实践展示用户最关心的监控指标
  • 灵活便捷的告警服务,可实现用户自定义告警组和告警指标
  • 可扩展性强,用户可通过配置的方式集成或升级大数据组件

1.4、整体架构

1.5、集成组件

各集成组件均进行过兼容性测试,并稳定运行于300+个节点规模的大数据集群,日处理数据量约4000亿条。在海量数据下,各大数据组件调优成本低,平台默认展示用户关心和需要调优的配置。

序号名称版本描述
1HDFS3.3.3分布式大数据存储
2YARN3.3.3分布式资源调度与管理平台
3ZooKeeper3.5.10分布式协调系统
4Kafka2.4.1高吞吐量分布式发布订阅消息系统
5Hive3.1.0离线数据仓库
6FLINK1.16.2实时计算引擎
7Spark3.1.3分布式计算系统
8Hbase2.4.16分布式列式存储数据库
9Trino367分布式Sql交互式查询引擎
10Ranger2.1.0权限控制框架
11ElasticSearch7.16.2高性能搜索引擎
12StreamPark2.1.1流处理极速开发框架,流批一体&湖仓一体的云原生平台
13DolphoinScheduler3.1.8分布式易扩展的可视化工作流任务调度平台
14AlertManager0.23.0告警通知管理系统
15Prometheus2.17.2高性能监控指标采集与告警系统
16Grafana9.1.6监控分析与数据可视化套件
17Kerberos1.15.1计算机网络认证协议
18Doris1.2.6新一代极速全场景MPP数据库
19Kyuubi1.7.3统一多租户JDBC网关
20Iceberg1.4.0适用于庞大数据集分析的开放式数据表格式

二、部署准备

2.1、服务器 

IP主机名CPU内存磁盘
192.168.0.171ddp018c20G50G
192.168.0.172ddp028c20G50G
192.168.0.173ddp038c20G50G
192.168.0.174ddp048c20G50G

2.2、主机名映射 

配置/etc/hosts文件(四台服务器都需要,第一行localhost 需要根据不同服务器修改)

[root@ddp01 datasophon-manager-1.2.1]# vim /etc/hosts
192.168.0.171 localhost
192.168.0.171 ddp01
192.168.0.172 ddp02
192.168.0.173 ddp03
192.168.0.174 ddp04
配置主机host
大数据集群所有机器需配置主机host。

配置主机名: hostnamectl set-hostname 主机名
配置/etc/hosts文件

2.3、关闭防火墙

systemctl stop firewalld
systemctl disable firewalld
systemctl status firewalld

2.4、集群免密

部署机器中,DataSophon节点以及大数据服务主节点与从节点之间需免密登录。

配置免密

ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
chmod 600 ~/.ssh/authorized_keys

2.5、系统文件句柄

vim /etc/security/limits.conf
# End of file
 
* soft nofile 65536
* hard nofile 131072
* soft nproc 2048
* hard nproc 65536

2.6、环境要求

Jdk环境需安装,参考:centos7.9 配置java1.8 环境变量-CSDN博客

MySQL安装参考:centos7.9 安装 mysql5.7 【详细教程】-CSDN博客

需关闭mysql ssl功能参考:mysql5.7.6关闭SSL-CSDN博客

2.7、创建目录

在ddp01(171)服务器/opt/datasophon目录下创建目录

mkdir -p /opt/datasophon/DDP/packages

将下载的部署包上传(或者使用软链)到/opt/datasophon/DDP/packages目录下,作为项目部署包仓库地址。

三、部署

3.1、解压

在安装目录下解压datasophon-manager-{version}.tar.gz,解压后可以看到如下安装目录:

cd  /opt/datasophon/DDP/packages/
tar -zxvf datasophon-manager-1.2.1.tar.gz

DataSophon 的所有应用配置文件在 conf 目录下。如果需要使用 DataSophon 的全部功能,在这之前先了解一下如何进行配置

conf 目录结构如下:

|-- datasophon.conf
|-- logback-api.xml
|-- common.properties
|-- profiles
|   |-- application-config.yml

datasophon.conf 为快捷配置文件;如果你只想快速体验 DataSophon 的功能,配置它就足够了。datasophon.conf 本质上是 application-config.yml 中常用配置的快捷方式

logback-api.xml为日志配置文件

profiles/application-config.yml 为应用配置文件,包含所有的应用配置。

3.2、配置应用数据库

3.2.1、创建数据库,

 指定数据库编码为UTF-8

CREATE DATABASE IF NOT EXISTS datasophon DEFAULT CHARACTER SET utf8;
grant all privileges on *.* to datasophon@"%" identified by 'datasophon' with grant option;
GRANT ALL PRIVILEGES ON *.* TO 'datasophon'@'%';
FLUSH PRIVILEGES;

3.2.2、修改配置

修改 conf 目录下的application.yml 配置文件中数据库链接配置(需要根据自己需要修改数据库名、用户和密码):

spring:
  datasource:
    driver-class-name: com.mysql.cj.jdbc.Driver
    type: com.alibaba.druid.pool.DruidDataSource
    url: jdbc:mysql://${datasource.ip:localhost}:${datasource.port:3306}/${datasource.database:datasophon}?&allowMultiQueries=true&characterEncoding=utf-8
    username: datasophon
    password: datasophon

server:
  port: ${server.port:8081}
  address: ${server.ip:0.0.0.0}


datasophon:
  migration:
    enable: true

3.2.3、启动服务

cd /opt/datasophon/DDP/packages/datasophon-manager-1.2.1
#启动
sh bin/datasophon-api.sh start api
#停止
sh bin/datasophon-api.sh stop api
#重启
sh bin/datasophon-api.sh restart api

3.2.4、部署成功后、可以进行日志查看

日志统一存放于logs文件夹内:

[root@ddp01 datasophon-manager-1.2.1]# cd logs/
[root@ddp01 logs]# ls -l
总用量 5020
-rw-r--r--. 1 root root  114998 7月  28 09:05 api-ddp01.out
-rw-r--r--. 1 root root 1341328 7月  27 16:59 datasophon-api.2024-07-27_16.0.log
-rw-r--r--. 1 root root  200702 7月  27 17:12 datasophon-api.2024-07-27_17.0.log
-rw-r--r--. 1 root root  509741 7月  27 20:59 datasophon-api.2024-07-27_20.0.log
-rw-r--r--. 1 root root  144099 7月  27 21:59 datasophon-api.2024-07-27_21.0.log
-rw-r--r--. 1 root root   82398 7月  27 22:59 datasophon-api.2024-07-27_22.0.log
-rw-r--r--. 1 root root   62032 7月  27 23:05 datasophon-api.2024-07-27_23.0.log
-rw-r--r--. 1 root root  112531 7月  28 08:59 datasophon-api.2024-07-28_08.0.log
-rw-r--r--. 1 root root 1372955 7月  27 16:59 datasophon-api-error.2024-07-27_16.0.log
-rw-r--r--. 1 root root 1146702 7月  27 17:08 datasophon-api-error.2024-07-27_17.0.log
-rw-r--r--. 1 root root   15260 7月  27 22:16 datasophon-api-error.2024-07-27_22.0.log
-rw-r--r--. 1 root root    6948 7月  27 23:05 datasophon-api-error.log
-rw-r--r--. 1 root root     706 7月  28 09:05 datasophon-api.log

访问前端页面地址, 默认用户名和密码为admin/admin123

http://192.168.0.171:8081/ddh/#/login

3.3、创建集群

3.3.1、登录进入系统页面后在集群管理页面创建集群

DataSophon支持多集群管理和授予用户集群管理员权限。

3.3.2、点击【创建集群】

输入集群名称,集群编码(集群唯一标识),集群框架。

3.3.3、创建成功后点击【配置集群】:

根据提示,输入主机列表(注意:主机名需与在准备环境中hostnamectl set-hostname 设置的主机名一致),ssh用户名默认为root和ssh端口默认为22。

3.3.4、配置完成后,点击【下一步】,系统开始链接主机并进行主机环境校验。

3.3.5、主机环境校验成功后点击【下一步】

主机agent分发步骤将自动分发datasophon-worker组件,并启动WorkerApplicationServer。

3.3.6、主机管理Agent分发完成后,点击【下一步】,开始部署服务。

初始化配置集群先选择部署AlertManager,Grafana和Prometheus三个组件。DataSophon依赖此三个组件实现系统监控告警管理。

3.3.7、点击【下一步】

分配AlertManager,Grafana和Prometheus服务的worker与client服务角色部署节点,没有worker和client服务角色的可以跳过之间点击【下一步】。

3.7.8、修改各服务配置。系统已给出默认配置,大部分情况下无需修改。

3.7.9、点击【下一步】开始服务安装,可实时查看服务安装进度。

3.7.10、点击【完成】,在集群管理页面点击【进入】,即可进入集群服务组件管理页面。

3.4、配置个人电脑映射

配置正在访问集群的hosts(我这里是windows,配置路径C:\Windows\System32\drivers\etc)

集群访问组件页面时用的是hostname

四、服务安装

4.1、添加ZooKeeper。

分配ZooKeeper master服务角色部署节点,zk需部3台或5台。

Zk没有worker与client服务角色,直接点击【下一步】跳过。

根据实际情况修改Zk服务配置。

点击【下一步】,进行zk服务安装。

安装成功后即可查看Zookeeper服务总览页面。

4.2、添加HDFS

其中JournalNode需部署三台,NameNode部署两台,ZKFC和NameNode部署在相同机器上。如下图:

点击【下一步】,选择DataNode部署节点。

根据实际情况修改配置,例如修改DataNode数据存储目录。

点击【下一步】,开始安装Hdfs。

安装成功后,即可查看HDFS服务总览页面。

4.3、添加YARN

其中ResourceManager需部署两台作高可用。如下图:

点击【下一步】,选择NodeManager部署节点。

根据实际情况修改配置。

点击【下一步】,开始安装YARN。

4.4、添加Spark

选择SPARK3。

Spark没有Master角色,直接点击【下一步】。

分配服务Worker与Client角色

根据实际情况修改配置

点击【下一步】,安装Spark。

安装成功后,即可查看SPARK3服务总览页面。

4.5、添加Flink

选择Flink
FLink没有Master角色,选择分配服务Worker与Client角色
根据需要配置服务
点击【下一步】,安装FLink。
安装成功后,即可查看FLINK服务总览页面。

4.6、添加Hive

在数据库中创建Hive数据库。

CREATE DATABASE IF NOT EXISTS hive DEFAULT CHARACTER SET utf8;

grant all privileges on *.* to hive@"%" identified by 'hive' with grant option;

GRANT ALL PRIVILEGES ON *.* TO 'hive'@'%';

FLUSH PRIVILEGES;

选择需要安装hiveserver2和metastore角色的节点

HIVE没有Master节点

选择需要安装hiveclient角色的节点

根据实际情况修改配置

等待安装完成,安装成功后即可查看Hive服务总览页面

安装成功后可查看Hive总览页面。

4.7、添加Kafka

选择安装kafka服务broker角色的节点
分配服务Worker与CLient角色
根据实际情况调整Kafka参数。
点击下一步 等待安装完成
Kafka安装成功后,即可在Kakfa服务总览页查看Kafka详情。

4.8、添加Hbase

点击【添加服务】,选择Hbase。

选择HMaster。

选择RegionServer。

可根据需要修改服务配置。

点击【下一步】开始安装Hbase。

安装成功后可查看Hbase总览页面。

4.9、添加Trino

点击【添加服务】,选择Trino。

选择TrinoCoordinator。

选择TrinoWorker。注意:TrinoCoordinator和TrinoWorker不要部署在同一台机器上。

注意"Trino最大堆内存","每个查询在单个节点可使用最大内存"这两个配置,其中"每个查询在单个节点可使用最大内存"不可超过"Trino最大堆内存"的80%,"总共可使用最大内存"为"每个查询在单个节点可使用最大内存"* TrinoWorker数。

点击【下一步】,开始安装Trino。

安装成功后可查看Trino总览页面。

选择trino的webui,可以访问trino的连接,http://192.168.3.116:8086/ui/ (账号admin 没有密码)

4.10、添加Ranger

创建Ranger数据库。

CREATE DATABASE IF NOT EXISTS ranger DEFAULT CHARACTER SET utf8;

grant all privileges on *.* to ranger@"%" identified by 'ranger' with grant option;

GRANT ALL PRIVILEGES ON *.* TO 'ranger'@'%';

FLUSH PRIVILEGES;

点击【添加服务】,选择Ranger。

选择RangerAdmin部署节点。

分配服务Worker与CLient角色

输入数据库root用户密码,数据库地址,Ranger数据用户密码等配置信息。

点击【下一步】,开始安装Ranger,Ranger在安装过程中会执行sql语句,可能因mysql配置问题导致sql执行失败,从而导致Ranger安装失败,可查看日志查找sql执行失败原因,解决后重新添加实例安装。

安装成功后可查看Ranger总览页面。

http://ddp02:6080/login.jsp admin/admin123

4.11、添加DolphinScheduler

初始化DolphinScheduler数据库。

CREATE DATABASE dolphinscheduler DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'%' IDENTIFIED BY 'dolphinscheduler';

GRANT ALL PRIVILEGES ON dolphinscheduler.* TO 'dolphinscheduler'@'localhost' IDENTIFIED BY 'dolphinscheduler';

flush privileges;

执行/opt/datasophon/DDP/packages目录下dolphinscheduler_mysql.sql创建dolphinscheduler数据库表。

mysql> use dolphinscheduler;

Database changed

mysql> source /opt/datasophon/DDP/packages/dolphinscheduler_mysql.sql

Query OK, 0 rows affected (0.00 sec)

Query OK, 0 rows affected, 1 warning (0.00 sec)

添加DolphinScheduler。

分配api-server/alert-server/master-server/worker-server角色

分配Work与Client 角色

根据实际情况,修改DolphinScheduler配置。

等待安装完成

安装成功后即可查看DolphinScheduler服务总览页面。

点击WebUI下面的链接

http://ddp01:12345/dolphinscheduler/ui/login admi/dolphinscheduler123

4.12、添加ElasticSearch

分配服务Master角色

根据实际情况修改配置。

等待安装完成

根据实际情况,修改ElasticSearch配置。

4.13、添加StreamPark

初始化StreamPark数据库。

CREATE DATABASE streampark DEFAULT CHARACTER SET utf8 DEFAULT COLLATE utf8_general_ci;

GRANT ALL PRIVILEGES ON streampark.* TO 'streampark'@'%' IDENTIFIED BY 'streampark';

GRANT ALL PRIVILEGES ON streampark.* TO 'streampark'@'localhost' IDENTIFIED BY 'streampark';

flush privileges;

在命令行中链接数据库,执行下面三个SQL文件

/opt/datasophon/DDP/packages/streampark.sql

/opt/datasophon/DDP/packages/streampark_mysql-schema.sql

/opt/datasophon/DDP/packages/streampark_mysql-data.sql

添加StreamPark。

分配Master角色

分配服务Worker与CLient角色(系统生成 改不了)

根据实际情况修改配置。

等待安装完成

安装成功后可查看StreamPark总览页面,

可通过WebUi跳转到StreamPark用户页面。

http://ddp01:10000/#/login admin/streampark

4.14、添加Kerberos

点击【添加服务】,选择Kerberos。

分配Krb5Kdc和KAdmin服务角色部署节点。

分配服务Worker与CLient角色

点击【下一步】,进行Kerberos服务配置页面,默认不需要修改,注意:域名默认为HADOOP.COM,暂不支持修改。

等待安装完成

4.15、添加Iceberg

点击【添加服务】,选择Iceberg。选择IcebergClient

根据实际情况修改配置。

安装完成

4.16、doris

还没安装成功

参考文章:

官网:DataSophon | DataSophon

【DataSophon】大数据管理平台DataSophon-1.2.1安装部署详细流程-CSDN博客

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值