TongETLV3.0安装指引(by lqw)

文章目录

  • 安装准备
    • 系统环境要求和端口
    • jdk版本要求
    • 安装包
    • 磁盘要求
    • 安装脚本对系统配置的影响
  • 系统配置
    • vm.max_map_count 至少为 262144,且设置 vm.overcommit_memory 参数值为 1
    • 使用 TongETL 的 Linux 用户需要设置最大文件打开数为 65536
    • 用户需要有sodo权限。
    • 安装netstat命令
    • 创建minio存储目录(仅供参考)
  • 安装
    • 解压安装包
    • 设置安装参数
    • 安装 python3
    • 安装数据库与中间件服务
    • 安装注册中心及系统组件
    • 安装元数据组件
    • 安装 etl 组件
    • 安装运维监控组件
  • 启动etl
  • 访问etl和nacos

安装准备

系统环境要求和端口

在这里插入图片描述
在这里插入图片描述

jdk版本要求

在这里插入图片描述
另外如果是用普通用户安装的,建议切换成普通用户后,执行以下指令进行配置

vi ~/.bashrc#增加以下内容,其中/opt/jdk1.8.0_411为jdk安装目录
JAVA_HOME=/opt/jdk1.8.0_411
JAVA_BIN=$JAVA_HOME/bin
JRE_HOME=$JAVA_HOME/jre
PATH=$JAVA_BIN:$JRE_BIN:$PATH
export JAVA_HOME JRE_HOME PATH

万一改错了导致一些基本系统指令无法使用,可执行以下指令,然后把之前改错的删掉重新配:

export PATH=/bin:/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin

安装包

在这里插入图片描述

磁盘要求

安装需要创建minio存储目录,从 V3.0 开始,新版 minio(2023-04-13 版)要求各 minio 节点数据存储目录与操作系统根目录(/)挂载在不同分区,且磁盘分区格式为 xfs。

具体可以参考本帖里的“创建minio存储目录”,另外安装的目录磁盘空间不能低于20g。

安装脚本对系统配置的影响

在这里插入图片描述

系统配置

vm.max_map_count 至少为 262144,且设置 vm.overcommit_memory 参数值为 1

cat /proc/sys/vm/max_map_count

在这里插入图片描述

如果需要修改该值,编辑/etc/sysctl.conf,添加如下内容:

vm.max_map_count=262144
vm.overcommit_memory=1

在这里插入图片描述

使用 TongETL 的 Linux 用户需要设置最大文件打开数为 65536

运行如下命令查看最大文件打开数:

ulimit -n

如果需要修改该值,编辑/etc/security/limits.conf,添加如下内容(其中tongetl为本次安装使用的普通用户账号)。

tongetl soft nofile 1048576
tongetl hard nofile 1048576tongetl soft nproc 524288
tongetl hard nproc 524288tongetl soft memlock 65536
tongetl hard memlock 65536

完成修改后重启服务器或重新登录,配置即可生效。

用户需要有sodo权限。

执行以下指令

visudo

输入i进入编辑模式,在最底下增加以下配置(以tongetl用户为例)

tongetl ALL=(ALL) ALL

如果想要跳过密码验证的,可以这样配置:

tongetl ALL=(ALL) NOPASSWD: ALL

安装netstat命令

TongETL 组件要求操作系统安装 netstat 命令,请检查系统是否已安装 netstat 命令。

centos:

sudo yum update
# centos7
sudo yum install -y net-tools
# centos8
sudo dnf install -y net-tools

Ubuntu

sudo apt update
sudo apt install -y net-tools

验证:

netstat -h

如果显示 netstat 的帮助信息,说明安装成功。

如果遇到报错:Cannot find a valid baseurl for repo: centos-sclo-rh/x86_64,说明yum源有问题,centos的可参考如下操作,更换为阿里云的。

cd /etc/yum.repos.d/
mv CentOS-SCLo-scl.repo CentOS-SCLo-scl.repo.bak
mv CentOS-SCLo-scl-rh.repo CentOS-SCLo-scl-rh.repo.bak
mv /etc/yum.repos.d/CentOS-Base.repo  /etc/yum.repos.d/CentOS-Base.repo.bak
# 如果无法wget可以直接浏览器下载下来后放进去 
sudo wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo  vim CentOS-SCLo-rh.repo粘贴以下内容:
[centos-sclo-rh]
name=CentOS-7 - SCLo rh
baseurl=https://mirrors.aliyun.com/centos/7/sclo/x86_64/rh/
gpgcheck=1
enabled=1
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-CentOS-SIG-SCLo#之后执行
yum clean all
yum update
yum makecache

其他系统的则咨询对应厂商。

创建minio存储目录(仅供参考)

从 V3.0 开始,新版 minio(2023-04-13 版)要求各 minio 节点数据存储目
录与操作系统根目录(/)挂载在不同分区,且磁盘分区格式为 xfs。

参考Linux Centos系统 磁盘分区和文件系统管理 (深入理解)

最终效果如下:

在这里插入图片描述

可以参考如下步骤(千万千万一定要记得做好备份):

在这里插入图片描述

  1. 添加硬盘,首先请确保有可用的硬盘物理连接到系统上。
    以下是vm virtualBox的参考:
    在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

在这里插入图片描述

以下是vmware:
在这里插入图片描述
在这里插入图片描述

在这里插入图片描述在这里插入图片描述

其他的建议跟系统厂商或者服务器厂商确认下如何挂载新的磁盘。

  1. 确认新硬盘被识别。

使用 lsblk 或 fdisk -l 命令查看系统中的所有硬盘和分区:

在这里插入图片描述

找到硬盘设备,例如:“sda”、“sdb”,本例中使用新加硬盘“sdb”进行配置。

执行以下指令:

 fdisk /dev/sdb

在这里插入图片描述

之后执行

fdisk -l /dev/sdb
mkfs.xfs /dev/sdb1

在这里插入图片描述
执行以下指令:

[root@localhost ~]# sudo mkdir /mnt/sdb1
[root@localhost ~]# mount /dev/sdb1 /mnt/sdb1
[root@localhost ~]# df -h
文件系统                 容量  已用  可用 已用% 挂载点
devtmpfs                 2.9G     0  2.9G    0% /dev
tmpfs                    2.9G     0  2.9G    0% /dev/shm
tmpfs                    2.9G  8.6M  2.9G    1% /run
tmpfs                    2.9G     0  2.9G    0% /sys/fs/cgroup
/dev/mapper/centos-root   43G  2.0G   41G    5% /
/dev/sda1               1014M  195M  820M   20% /boot
/dev/mapper/centos-home   21G   33M   21G    1% /home
tmpfs                    581M     0  581M    0% /run/user/0
/dev/sdb1                 70G   33M   70G    1% /mnt/sdb1

之后设置一下自动挂载,避免每次重启服务器或者虚拟机后系统没有挂载上去(这一步之前记得系统做一下备份):

vi /etc/fstab 
# 在最下面放入以下内容,请根据自己的情况写,下面是本帖示范操作
/dev/sdb1   /mnt/sdb1                           xfs     defaults        0 0 

在这里插入图片描述

安装

解压安装包

上传安装包到服务器(本次示范/opt/etl),解压安装包,同时解压安装包里的两个压缩包:

cd /opt/
tar -zvxf TongETL_V3.0_x86_20250121.tar.gz

备注:
1.本次使用的是TongETL_V3.0_x86_20250121.tar.gz,如果用的是之前的包,解压之后的目录里会有productxxx.tar.gz和tonginstallxxx.tar.gz,记得解压一下,没有的话则不用。
2.TongETL_V3.0_x86_20250121.tar.gz的tonginstall没有5_ops_master,之前的包有。

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述
在这里插入图片描述

在这里插入图片描述

设置安装参数

[root@localhost TongETL_V3.0.0.0]# cd /opt/etl/TongETL_V3.0.0.0/tonginstall
[root@localhost tonginstall]# ./install_path.sh
*******************************************
准备创建安装目录...
请输入安装目录的路径,后续产品都会安装到这里 (未输入默认~/tong_etl): /opt/etl/TongETL
安装目录不存在,准备创建安装目录
当前目录剩余空间大于:20G继续安装
安装目录创建成功
安装目录路径为:/opt/etl/TongETL
请输入产品存放目录:/opt/etl/TongETL_V3.0.0.0/product
产品存放目录为:/opt/etl/TongETL_V3.0.0.0/product
请输入当前主机IP地址: 192.168.10.117
请输入当前用户名: root
请输入当前用户密码: yeyehuo163
准备解压third软件包
解压third软件包完成
********************************************
[root@localhost tonginstall]# 

在这里插入图片描述

备注:

1.产品存放目录为解压后的目录里的product目录。

安装 python3

[root@localhost tonginstall]# cd /opt/etl/TongETL_V3.0.0.0/tonginstall/0_python3_jdk
[root@localhost 0_python3_jdk]# ./install_python.sh
*******************************************
准备安装Python3,正在获取安装目录...
python3安装路径:/opt/etl/TongETL/install_python3
third_path /opt/etl/TongETL_V3.0.0.0/tonginstall
*******************************************
开始安装Python3...
成功进入插件目录
正在解压Python3安装包...
解压完毕安装包...
正在解压pip安装包...
解压完毕安装包...
成功进入pip目录
正在安装pip...
完成pip安装...
*******************************************
正在校验Python安装...
Python3安装成功
*******************************************
[root@localhost 0_python3_jdk]# 

在这里插入图片描述

安装数据库与中间件服务

cd /opt/etl/TongETL_V3.0.0.0/tonginstall/1_dbs
./install_dbs.sh --miniodatapath=/mnt/sdb1/minio

其中/mnt/sdb1这个目录参考创建minio存储目录这一节内容

期间可能会遇到这个提示(可以忽略,也可以参考以下做法):
在这里插入图片描述

在这里插入图片描述

另外起一个窗口,执行以下指令看看输出结果跟红色框框的地方是否一致 ,如果一致,输入yes回车。

 ssh-keygen -lf /etc/ssh/ssh_host_ecdsa_key.pub

在这里插入图片描述

看到类似这种提示说明安装成功

在这里插入图片描述

安装注册中心及系统组件

cd /opt/etl/TongETL_V3.0.0.0/tonginstall/2_systems
./install_systems.sh

在这里插入图片描述

安装元数据组件

cd /opt/etl/TongETL_V3.0.0.0/tonginstall/3_meta
./install_meta.sh

在这里插入图片描述

安装 etl 组件

cd /opt/etl/TongETL_V3.0.0.0/tonginstall/4_etl
./install_etl.sh

在这里插入图片描述

安装运维监控组件

如果是TongETL_V3.0_x86_20250121.tar.gz这个安装包,可直接跳过(这个之前的包才有5_ops_master)。

cd /opt/etl/TongETL_V3.0.0.0/tonginstall/5_ops_master
./install_ops_master.sh

在这里插入图片描述

启动etl

cd /opt/TongETL_V3.0_x86/tonginstall
./start.sh

在这里插入图片描述
启动完成后,执行另一个脚本,确认是否端口都正常启动

[tongetl@localhost tonginstall]$ ./port_check.sh 
安装路径为: /opt/etl3.0/tong_etl
检查进程: "rdb/bin/mysqld_safe"
mysql端口 15800 正常运行。
检查通过,mysql正常运行!
---------------------------------------------------
检查进程: "rds/bin/tongrds-server"
redis端口 15600 正常运行。
检查通过,redis正常运行!
---------------------------------------------------
检查进程: "kafka.Kafka"
kafka端口 15500 正常运行。
kafka端口 15510 正常运行。
kafka端口 15520 正常运行。
检查通过,kafka正常运行!
---------------------------------------------------
检查进程: "bin/minio"
minio端口 17701 正常运行。
检查通过,minio正常运行!
---------------------------------------------------
检查进程: "nacos-server.jar"
nacos端口 15390 正常运行。
检查通过,nacos正常运行!
---------------------------------------------------
检查进程: "lb/bin/sbin/nginx"
nginx端口 80 正常运行。
检查通过,nginx正常运行!
---------------------------------------------------
检查进程: "auth-[0-9\.]\+\.jar"
auth端口 15370 正常运行。
检查通过,auth正常运行!
---------------------------------------------------
检查进程: "gateway-[0-9\.]\+\.jar"
gateway端口 15380 正常运行。
检查通过,gateway正常运行!
---------------------------------------------------
检查进程: "admin-[0-9\.]\+\.jar"
admin端口 15360 正常运行。
检查通过,admin正常运行!
---------------------------------------------------
检查进程: "flow-[0-9\.]\+\.jar"
flow端口 15400 正常运行。
检查通过,flow正常运行!
---------------------------------------------------
检查进程: "system-[0-9\.]\+\.jar"
system端口 15310 正常运行。
检查通过,system正常运行!
---------------------------------------------------
检查进程: "taskorch-[0-9\.]\+\.jar"
taskorch端口 15300 正常运行。
检查通过,taskorch正常运行!
---------------------------------------------------
检查进程: "bin/meta-[0-9\.]\+\.jar"
meta端口 15350 正常运行。
检查通过,meta正常运行!
---------------------------------------------------
检查进程: "meta-rt-[0-9\.]\+\.jar"
meta-rt端口 17200 正常运行。
检查通过,meta-rt正常运行!
---------------------------------------------------
检查进程: "dev-[0-9\.]\+\.jar"
etl端口 15340 正常运行。
检查通过,etl正常运行!
---------------------------------------------------
检查进程: "dbsvc-rt-[0-9\.]\+\.jar"
dbsvc-rt端口 19400 正常运行。
检查通过,dbsvc-rt正常运行!

备注:

1.旧的包里有的没有./start.sh,可以先用./restart.sh
2.如果用./port_check.sh 发现有哪个没启动成功的,可以到对应组件的目录,检查日志,单独启动这个组件有没有问题,例如我在安装的时候遇到过的这种情况:

检查进程: "system-[0-9\.]\+\.jar"
警告:system端口 15310 异常!
检查失败,system异常!

当时重启了虚拟机后忘记防火墙没关,到etl的安装目录(我设置了/opt/etl
3.0/tong_etl,也就是设置安装参数的那一节的第一步),先./stop.sh再./start.sh,到logs目录查看日志才知道,后来关了防火墙重新单独启动这个组件就可以了。
在这里插入图片描述

访问etl和nacos

其中etl控制台访问url:

http://服务器ip:15371
账号:admin
密码:Tong#1234

在这里插入图片描述

nacos:

http://192.168.10.122:15390/nacos
账号:nacos
密码:Tong@1234

如下图所示,10个服务为正常的。
在这里插入图片描述

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

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

相关文章

AI前端开发:赋能开发者,提升解决实际问题的能力

近年来,人工智能技术飞速发展,深刻地改变着各行各业。在软件开发领域,AI写代码工具的出现更是引发了一场革命,尤其是前端开发领域,AI的应用正在显著提升开发者的解决实际问题的能力。本文将探讨AI前端开发如何提升效率…

【STM32】H743的以太网MAC控制器的一个特殊功能

调试743的MAC,翻阅手册的时候,发现了一个有意思的功能 混杂模式 H743的MAC控制器,可以设置为混杂模式,这就意味着它可以做一些网络监控的应用,譬如连接具备端口镜像功能的交换机,然后直接代替PC实现网络数据…

【Linux】Ubuntu Linux 系统 ——PHP开发环境

ℹ️大家好,我是练小杰,元宵节到了,在此祝大家元宵节快乐😆 新的一年里,愿你步步高升,事事如意,心想事成!! 本文是关于Linux 操作系统中部署PHP开发环境这部分基础内容,后…

SQL注入之布尔和时间盲注,sqli-labs

实验环境: sqli-labs,小皮面板搭建,edge浏览器 apache:2.4.39,MySQL:5.7 PHP:5.39 Python(pycharm2023):3 less-8 布尔盲注: 1.我这里是采用最简单的直接采…

C/C++后端开发面经

字节跳动 客户端开发 实习 一面(50min) 自我介绍是否愿意转语言,是否只愿意搞后端选一个项目来详细谈谈HTTP和HTTPS有什么区别?谈一下HTTPS加密的具体过程: 非对称加密 对称加密 证书认证的方式 非对称加密是为了保证对称密钥的安全性。 对称…

如何用.NET Core Identity实现定制化的用户身份验证系统

目录 初识标识框架(Identity) 重置密码操作 JWT基本使用 Swagger添加报文头 初识标识框架(Identity) .net core Identity是一个完整的身份验证和授权框架,它帮助开发人员处理用户的登录、注册、角色管理、权限控制以及其他与用户身份相关的操作,标…

WebSocket与Socket.io的区别

文章目录 引言一、WebSocket:原生的实时通信协议(一)WebSocket 是什么(二)WebSocket 的工作原理(三)WebSocket 的使用方法(四)WebSocket 的优势(五&#xff0…

excel里的函数技巧(持续更新中)

行转列 在 Excel 中,行转列(将一行数据转换为一列,或者将一列数据转换为一行)是一项常见的操作。你可以使用 转置 功能轻松实现这一操作。 TRANSPOSE(数组)

DeepSeek模型R1服务器繁忙,怎么解决?

在当今科技飞速发展的时代,人工智能领域不断涌现出令人瞩目的创新成果,其中DeepSeek模型无疑成为了众多关注焦点。它凭借着先进的技术和卓越的性能,在行业内掀起了一股热潮,吸引了无数目光。然而,如同许多前沿技术在发…

w~自动驾驶~合集17

我自己的原文哦~ https://blog.51cto.com/whaosoft/13269720 #FastOcc 推理更快、部署友好Occ算法来啦! 在自动驾驶系统当中,感知任务是整个自驾系统中至关重要的组成部分。感知任务的主要目标是使自动驾驶车辆能够理解和感知周围的环境元素&#…

操作系统|ARM和X86的区别,存储,指令集

文章目录 主频寄存器寄存器在硬件中的体现是什么寄存器的基本特性硬件实现寄存器类型 内存和寄存器的区别内存(Memory)和磁盘(Disk)指令的执行ARM Cortex-M3与Thumb-2指令集Thumb-2 与流水线虚拟地址指令的执行 多核CPU芯片间的通…

好好说话:深度学习扫盲

大创项目是和目标检测算法YOLO相关的,浅浅了解了一些有关深度学习的知识。在这里根据本人的理解做一些梳理。 深度学习是什么? 之前经常听到AI,机器学习,深度学习这三个概念,但是对于三者的区别一直很模糊。 AI&…

关于 IoT DC3 中设备(Device)的理解

在物联网系统中,设备(Device)是一个非常宽泛的概念,它可以指代任何能够接入系统并进行数据交互的实体。包括但不限于手机、电脑、服务器、网关、硬件设备甚至是某些软件程序等所有能接入到该平台的媒介。 内容 定义 目的 示例 …

接入 SSL 认证配置:满足等保最佳实践

前言 随着信息安全形势的日益严峻,等保(信息安全等级保护)要求成为各行业信息系统必须遵守的标准。在数据库领域,OpenGauss作为一款高性能、安全、可靠的开源关系型数据库,也需要满足等保要求,确保数据的安…

【论文阅读】Revisiting the Assumption of Latent Separability for Backdoor Defenses

https://github.com/Unispac/Circumventing-Backdoor-Defenses 摘要和介绍 在各种后门毒化攻击中,来自目标类别的毒化样本和干净样本通常在潜在空间中形成两个分离的簇。 这种潜在的分离性非常普遍,甚至在防御研究中成为了一种默认假设,我…

2024-2025年主流的开源向量数据库推荐

以下是2024-2025年主流的开源向量数据库推荐,涵盖其核心功能和应用场景: 1. Milvus 特点:专为大规模向量搜索设计,支持万亿级向量数据集的毫秒级搜索,适用于图像搜索、聊天机器人、化学结构搜索等场景。采用无状态架…

开源身份和访问管理方案之keycloak(一)快速入门

文章目录 什么是IAM什么是keycloakKeycloak 的功能 核心概念client管理 OpenID Connect 客户端 Client Scoperealm roleAssigning role mappings分配角色映射Using default roles使用默认角色Role scope mappings角色范围映射 UsersGroupssessionsEventsKeycloak Policy创建策略…

【工业场景】用YOLOv8实现火灾识别

火灾识别任务是工业领域急需关注的重点安全事项,其应用场景和背景意义主要体现在以下几个方面: 应用场景:工业场所:在工厂、仓库等工业场所中,火灾是造成重大财产损失和人员伤亡的主要原因之一。利用火灾识别技术可以及时发现火灾迹象,采取相应的应急措施,保障人员安全和…

FlinkCDC 实现 MySQL 数据变更实时同步

文章目录 1、基本介绍2、代码实战 2.1、数据源准备2.2、代码实战2.3、数据格式 1、基本介绍 Flink CDC 是 Apache Flink 提供的一个功能强大的组件,用于实时捕获和处理数据库中的数据变更。可以实时地从各种数据库(如MySQL、PostgreSQL、Oracle、Mon…

金融风控项目-1

文章目录 一. 案例背景介绍二. 代码实现1. 加载数据2. 数据处理3. 查询 三. 业务解读 一. 案例背景介绍 通过对业务数据分析了解信贷业务状况 数据集说明 从开源数据改造而来,基本反映真实业务数据销售,客服可以忽略账单周期,放款日期账单金…