DataSophon 是致力于自动化监控、运维、管理大数据基础组件和节点的,帮助您快速构建起稳定,高效的大数据集群服务。
要求各机器各组件正常运行提供如下的网络端口配置:
组件 | 默认端口 | 说明 |
---|---|---|
DDHApplicationServer | 8081、2551、8586 | 8081 为http server 端口,2551 为rpc 通信端口,8586 为 jmx 端口 |
WorkerApplicationServer | 2552、9100、8585 | 2552 rpc 通信端口,8585 为 jmx 端口,9100 为主机数据采集器端口 |
nginx | 8888 | 提供 UI 端通信端口 |
推荐 Chrome 以及使用 Chrome 内核的较新版本浏览器访问前端可视化操作界面。
各主机防火墙需关闭。
大数据集群所有机器需配置主机 host。
配置主机名: hostnamectl set-hostname 主机名
配置 /etc/hosts 文件
部署机器中,DataSophon 节点以及大数据服务主节点与从节点之间需免密登录。
生成ssh 秘钥: ssh-keygen -m PEM -t rsa ,一路回车。
执行 ssh-copy-id 目标主机。
Jdk环境需安装。建议 mysql 版本为 5.7.X,并关闭 ssl。
(本机为 mysql 8)
DDHApplicationServer 为 API 接口层即 web 后端,主要负责处理前端 UI 层的请求。该服务统一提供 RESTful api 向外部提供请求服务。
WorkerApplicationServer 负责执行 DDHApplicationServer 发送的指令,包括服务安装、启动、停止、重启等指令。
mac m1 需尽可能先配置国内 yum 源否则容易出错例如配置华为云,做好用户 datasophon 用户授权(远程访问等权限)
注意需关闭 mysql ssl 功能。在部署过程中,部分组件会执行 sql 生成库表,不同环境的 mysql 在配置上存在差异,可根据 sql 执行情况,变更 mysql 配置。
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;
执行 datasophon-manager 安装目录 sql 目录下 datasophon.sql,创建数据表。
use datasophon;
source /opt/datasophon-manager-1.0.0/sql/datasophon-1.0.0.sql
提供 nginx.conf 的 server 配置。
vi /etc/nginx/nginx.conf
server {
listen 8888;# 访问端口(自行修改)
server_name localhost;
#charset koi8-r;
#access_log /var/log/nginx/host.access.log main;
location / {
root /usr/local/nginx/dist; # 前端解压的 dist 目录地址(自行修改,我这里是 yum 直接 install 了,这个目录需要自己创建)
index index.html index.html;
}
location /ddh {
proxy_pass http://hadoop102:8081; # 接口地址(自行修改)
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header x_real_ipP $remote_addr;
proxy_set_header remote_addr $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_http_version 1.1;
proxy_connect_timeout 4s;
proxy_read_timeout 30s;
proxy_send_timeout 12s;
proxy_set_header Upgrade $http_upgrade;
proxy_set_header Connection "upgrade";
}
#error_page 404 /404.html;
# redirect server error pages to the static page /50x.html
#
error_page 500 502 503 504 /50x.html;
location = /50x.html {
root /usr/share/nginx/html;
}
}
将 dist.zip 解压到 nginx 目录下,启动 nginx (前面配置 yum 源之后,这里很好安装)
DDP部署包下载地址:
链接: https://pan.baidu.com/s/1PMtFWOaYYR0X50X1E_618w?pwd=2t8h 提取码: 2t8h
在 /opt/datasophon 目录下创建目录
mkdir -p /opt/datasophon/DDP/packages
将下载的部署包上传到 /opt/datasophon/DDP/packages 目录下,作为项目部署包仓库地址。(所有包都上传,软件的 arm 包并不特指 arrch64,jdk 可以使用自己的<需在 /etc/profile 配置 java_home>,也可以用包内的)
在安装目录下解压 datasophon-manager-{version}.tar.gz,解压后可以看到如下安装目录:
bin:启动脚本 git
conf:配置文件
lib:项目依赖的 jar 包
logs: 项目日志存放目录
jmx:jmx 插件
修改 conf 目录下的 application.yml 配置文件中数据库链接配置:
datasource:
type: com.alibaba.druid.pool.DruidDataSource
url: jdbc:mysql://hadoop102:3306/datasophon?useUnicode=true&characterEncoding=utf-8&allowPublicKeyRetrieval=true
username: datasophon
password: datasophon
driver-class-name: com.mysql.cj.jdbc.Driver
将 mysql 8 驱动 cp 至 /opt/datasophon/datasophon-manager-1.0.0/lib/
启动:sh bin/datasophon-api.sh start api
停止:sh bin/datasophon-api.sh stop api
重启:sh bin/datasophon-api.sh restart api
部署成功后,可以进行日志查看,日志统一存放于 logs 文件夹内:
logs/
├── ddh-api.log
├── ddh-api-error.log
|—— api-{hostname}.out
访问前端页面地址,接口 ip (自行修改) http://172.16.69.202:8888 默认用户名和密码为admin/admin123
初始化配置集群先选择部署 AlertManager,Grafana 和 Prometheus 三个组件。DataSophon 依赖此三个组件实现系统监控告警管理。
然后优先安装 zk(高可用) 再安装其他服务
refer: https://sophiadata.github.io/Bigdata_Blog_Website/blog