大数据之Trino高可用方案

2024-02-27 10:12
文章标签 数据 可用 方案 trino

本文主要是介绍大数据之Trino高可用方案,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

系统架构

在这里插入图片描述

2、keepalive安装

2.1、安装(2台机器)

 yum install -y keepalived
useradd keepalived_script
echo keepalived_script | passwd --stdin keepalived_script

2.2、编写coordinator服务存活检测脚本(两台机器都需要)

vim /usr/bin/check_trino_alive.sh
#!/bin/shPATH=/bin:/sbin:/usr/bin:/usr/sbin#port_test=`nc -z -v  localhost 18080|grep succeeded -c`;
port_test=`ss -nlp | grep 18080 | wc -l`;if [ $port_test -eq 0 ]thenecho 'trino coordinator is died'systemctl stop keepalived.serviceexit 1
elseexit 0
fichmod +x /usr/bin/check_trino_alive.sh

2.3、机器trino coordinator1的配置

[root@hdpapcuat01v ~]# cat /etc/keepalived/keepalived.conf 
! Configuration File for keepalivedvrrp_script check_trino_alive {script "/usr/bin/check_trino_alive.sh"interval 3weight -10
}global_defs {router_id LVS_TRINO #运行keepalived机器的一个标识#script_user root#enable_script_security
}vrrp_instance VI_1 {interface eth0 #设置实例绑定的网卡state BACKUP  #指定哪个为master,哪个为backupvirtual_router_id 92 #VPID标记,主备必须一样mcast_src_ip 127.0.0.1priority 170 #优先级,高优先级竞选为master#vrrp_unicast_bind 127.0.0.1#vrrp_unicast_peer 127.0.0.2authentication {auth_type PASS  #认证方式auth_pass afafa12384CDEad #认证密码}virtual_ipaddress {## 设置VIP,必须是同一网段虚拟IP127.0.0.3}track_script {check_trino_alive #trino存活检查}}

2.4、机器trino coordinator2的配置

[trino@localhost1 trino]$ cat  /etc/keepalived/keepalived.conf
! Configuration File for keepalivedvrrp_script check_trino_alive {script "/usr/bin/check_trino_alive.sh"interval 3weight -10
}global_defs {router_id LVS_TRINO #运行keepalived机器的一个标识#script_user root#enable_script_security
}vrrp_instance VI_1 {interface eth0 #设置实例绑定的网卡state BACKUP  #指定哪个为master,哪个为backupvirtual_router_id 92 #VPID标记,主备必须一样mcast_src_ip 127.0.0.2priority 170 #优先级,高优先级竞选为master#vrrp_unicast_bind 127.0.0.1#vrrp_unicast_peer 127.0.0.2authentication {auth_type PASS  #认证方式auth_pass afafa12384CDEad #认证密码}virtual_ipaddress {## 设置VIP,必须是同一网段虚拟IP127.0.0.3}track_script {check_trino_alive #trino存活检查}}	[root@localhost1 etc]# chmod +x /etc/keepalived/keepalived.conf

2.5、重启 keepalive 生效(两台机器都执行)

systemctl restart  keepalived.service 
systemctl status keepalived.service

2.6、验证

在这里插入图片描述

3、配置Trino

3.1、coordinator1

vi config.properties 
# 该节点是否作为coordinator
coordinator=true
# coordinator是否同时作为worker节点
node-scheduler.include-coordinator=false
# http连接端口
http-server.http.port=18080
#每个查询可以使用的最大分布式内存量。
query.max-memory=38GB
#查询可在任何一台计算机上使用的最大用户内存量
query.max-memory-per-node=16GB
memory.heap-headroom-per-node=12GB
# 服务发现的地址
discovery.uri=http://localhostvip.daemon.com:18080

3.2、coordinator2

vi config.properties 
# 该节点是否作为coordinator
coordinator=true
# coordinator是否同时作为worker节点
node-scheduler.include-coordinator=false
# http连接端口
http-server.http.port=18080
#每个查询可以使用的最大分布式内存量。
query.max-memory=38GB
#查询可在任何一台计算机上使用的最大用户内存量
query.max-memory-per-node=16GB
memory.heap-headroom-per-node=12GB
# 服务发现的地址
discovery.uri=http://localhostvip.daemon.com:18080

3.3、其他worker节点

vi config.properties 
# 该节点是否作为coordinator
coordinator=false
# coordinator是否同时作为worker节点
node-scheduler.include-coordinator=true
# http连接端口http-server.http.port=18080
#每个查询可以使用的最大分布式内存量。
query.max-memory=38GB
#查询可在任何一台计算机上使用的最大用户内存量
query.max-memory-per-node=16GB
memory.heap-headroom-per-node=12GB# 服务发现的地址discovery.uri=http://localhostvip.daemon.com:18080

3.4、启动

/opt/apache-hadoop/trino/bin/launcher restart
/opt/apache-hadoop/trino/bin/launcher start
/opt/apache-hadoop/trino/bin/launcher status

3.5、验证

停止各个节点测试

节点类型服务状态
127.0.0.1节点1停止正常
127.0.0.2节点2正常停止
127.0.0.3VIP正常正常

Client访问

[trino@localhost ~]$ trino-cli --server localhostvip.daemon.com:18080 --catalog hive

在这里插入图片描述

这篇关于大数据之Trino高可用方案的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/752055

相关文章

SQL Server修改数据库名及物理数据文件名操作步骤

《SQLServer修改数据库名及物理数据文件名操作步骤》在SQLServer中重命名数据库是一个常见的操作,但需要确保用户具有足够的权限来执行此操作,:本文主要介绍SQLServer修改数据... 目录一、背景介绍二、操作步骤2.1 设置为单用户模式(断开连接)2.2 修改数据库名称2.3 查找逻辑文件名

canal实现mysql数据同步的详细过程

《canal实现mysql数据同步的详细过程》:本文主要介绍canal实现mysql数据同步的详细过程,本文通过实例图文相结合给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的... 目录1、canal下载2、mysql同步用户创建和授权3、canal admin安装和启动4、canal

SpringBoot服务获取Pod当前IP的两种方案

《SpringBoot服务获取Pod当前IP的两种方案》在Kubernetes集群中,SpringBoot服务获取Pod当前IP的方案主要有两种,通过环境变量注入或通过Java代码动态获取网络接口IP... 目录方案一:通过 Kubernetes Downward API 注入环境变量原理步骤方案二:通过

Springboot3+将ID转为JSON字符串的详细配置方案

《Springboot3+将ID转为JSON字符串的详细配置方案》:本文主要介绍纯后端实现Long/BigIntegerID转为JSON字符串的详细配置方案,s基于SpringBoot3+和Spr... 目录1. 添加依赖2. 全局 Jackson 配置3. 精准控制(可选)4. OpenAPI (Spri

关于跨域无效的问题及解决(java后端方案)

《关于跨域无效的问题及解决(java后端方案)》:本文主要介绍关于跨域无效的问题及解决(java后端方案),具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地方,望不吝赐教... 目录通用后端跨域方法1、@CrossOrigin 注解2、springboot2.0 实现WebMvcConfig

使用SpringBoot整合Sharding Sphere实现数据脱敏的示例

《使用SpringBoot整合ShardingSphere实现数据脱敏的示例》ApacheShardingSphere数据脱敏模块,通过SQL拦截与改写实现敏感信息加密存储,解决手动处理繁琐及系统改... 目录痛点一:痛点二:脱敏配置Quick Start——Spring 显示配置:1.引入依赖2.创建脱敏

在Java中将XLS转换为XLSX的实现方案

《在Java中将XLS转换为XLSX的实现方案》在本文中,我们将探讨传统ExcelXLS格式与现代XLSX格式的结构差异,并为Java开发者提供转换方案,通过了解底层原理、性能优势及实用工具,您将掌握... 目录为什么升级XLS到XLSX值得投入?实际转换过程解析推荐技术方案对比Apache POI实现编程

详解如何使用Python构建从数据到文档的自动化工作流

《详解如何使用Python构建从数据到文档的自动化工作流》这篇文章将通过真实工作场景拆解,为大家展示如何用Python构建自动化工作流,让工具代替人力完成这些数字苦力活,感兴趣的小伙伴可以跟随小编一起... 目录一、Excel处理:从数据搬运工到智能分析师二、PDF处理:文档工厂的智能生产线三、邮件自动化:

Python数据分析与可视化的全面指南(从数据清洗到图表呈现)

《Python数据分析与可视化的全面指南(从数据清洗到图表呈现)》Python是数据分析与可视化领域中最受欢迎的编程语言之一,凭借其丰富的库和工具,Python能够帮助我们快速处理、分析数据并生成高质... 目录一、数据采集与初步探索二、数据清洗的七种武器1. 缺失值处理策略2. 异常值检测与修正3. 数据

pandas实现数据concat拼接的示例代码

《pandas实现数据concat拼接的示例代码》pandas.concat用于合并DataFrame或Series,本文主要介绍了pandas实现数据concat拼接的示例代码,具有一定的参考价值,... 目录语法示例:使用pandas.concat合并数据默认的concat:参数axis=0,join=