部署文档参考官方文档
https://trino.io/docs/current/installation/deployment.html#running-trino
配置说明
本次采用单机 一协调 二工作 共计三节点方式部署
| 集群名 | 配置信息 | 组件信息 |
|---|---|---|
| trino-cluster | 83.1.12.4 16C64G10T 协调器 端口占用 48080 | trino-server-479、OpenJDK25U-jdk |
| trino-cluster | 83.1.12.4 16C64G10T 工作节点-1 端口占用 48081 | trino-server-479、OpenJDK25U-jdk |
| trino-cluster | 83.1.12.4 16C64G10T 工作节点-2 端口占用 48082 | trino-server-479、OpenJDK25U-jdk |
下载组件
trino-server-479下载地址:https://github.com/trinodb/trino/releases/download/479/trino-server-479.tar.gz
我是ARM服务器,根据自身服务器架构选择合适的JDK
注意,oracle的jdk无法使用,使用下面官方推荐的jdk官网进行下载
https://adoptium.net/zh-CN/temurin/releases?version=25&os=any&arch=any&mode=filter
下载组件后上传服务器的/home/目录
开始部署
为运行 Trino 进程的用户设置合适的 ulimit
cat > /etc/security/limits.conf << EOF
trino soft nofile 131072
trino hard nofile 131072
trino soft nproc 128000
trino hard nproc 128000
EOF
Java运行时环境
tar xf OpenJDK25U-jdk_aarch64_linux_hotspot_25.0.1_8.tar.gz -C /usr/local/
mv /usr/local/jdk-25.0.1+8 /usr/local/jdk-25.0.1
cat >> /etc/profile << EOF
export JAVA_HOME=/usr/local/jdk-25.0.1
export PATH=$JAVA_HOME/bin:$PATH
EOF
source /etc/profile
java -version
安装 Trino
启动协调器
mkdir /home/trino
# 创建数据存储目录
mkdir -p /home/trino/{trino-master-data,trino-slave1-data,trino-salve2-data}
tar xf /home/trino-server-479.tar.gz /home/trino
cd /home/trino
# 创建协调器节点目录
mv trino-server-479 trino-server-master
cd trino-server-master
mkdir etc
# 获取随机成功的uuid
uuidgen
26c015c4-c162-4edb-acb8-1c63898e5a74
cat > etc/node.properties << EOF
node.environment=trino-cluster
node.id=26c015c4-c162-4edb-acb8-1c63898e5a74 # 改为随机获取的uuid
node.data-dir=/home/trino/trino-master-data
EOF
# 配置JVM
cat > etc/jvm.config << EOF
-server
-Xmx16G
-XX:InitialRAMPercentage=80
-XX:MaxRAMPercentage=80
-XX:G1HeapRegionSize=32M
-XX:+ExplicitGCInvokesConcurrent
-XX:+ExitOnOutOfMemoryError
-XX:+HeapDumpOnOutOfMemoryError
-XX:-OmitStackTraceInFastThrow
-XX:ReservedCodeCacheSize=512M
-XX:PerMethodRecompilationCutoff=10000
-XX:PerBytecodeRecompilationCutoff=10000
-Djdk.attach.allowAttachSelf=true
-Djdk.nio.maxCachedBufferSize=2000000
-Dfile.encoding=UTF-8
-XX:+EnableDynamicAgentLoading
EOF
# 配置协调器
cat > etc/config.properties << EOF
coordinator=true
node-scheduler.include-coordinator=false
http-server.http.port=48080
# 链接协调器的端口
discovery.uri=http://83.1.12.4:48080
EOF
# 可以通过运行以下命令将 Trino 作为守护进程启动:
bin/launcher start
启动工作节点
直接把master的节点目录拷贝一份即可,只需要修改其中的node.properties的node.id 和etc/config.properties的配置
# 配置工作1节点目录
cd /home/trino
# 工作节点目录1
cp -r trino-server-master trino-server-salve-1
# 先修改工作目录1的配置信息
cd trino-server-salve-1
# 工作目录1获取随机成功的uuid
uuidgen
40329090-c4ce-47c6-9f0b-16b2fb5fc1cb
cat > etc/node.properties << EOF
node.environment=trino-cluster
node.id=40329090-c4ce-47c6-9f0b-16b2fb5fc1cb # 改为随机获取的uuid
node.data-dir=/home/trino/trino-slave1-data
EOF
# 修改etc/config.properties
cat > etc/config.properties << EOF
coordinator=false
# 工作节点1端口
http-server.http.port=48081
# 协调器链接信息
discovery.uri=http://83.1.12.4:48080
EOF
# 可以通过运行以下命令将 Trino 作为守护进程启动:
bin/launcher start
# 配置工作2节点目录
cd /home/trino
# 工作节点目录2
cp -r trino-server-master trino-server-salve-2
# 先修改工作目录1的配置信息
cd trino-server-salve-2
# 工作目录2获取随机成功的uuid
uuidgen
4e2f753c-cced-4b25-8539-3e2faed06c04
cat > etc/node.properties << EOF
node.environment=trino-cluster
node.id=4e2f753c-cced-4b25-8539-3e2faed06c04 # 改为随机获取的uuid
node.data-dir=/home/trino/trino-slave2-data
EOF
# 修改etc/config.properties
cat > etc/config.properties << EOF
coordinator=false
# 工作节点2端口
http-server.http.port=48082
# 协调器链接信息
discovery.uri=http://83.1.12.4:48080
EOF
# 可以通过运行以下命令将 Trino 作为守护进程启动:
bin/launcher start
添加连接器信息参考 :https://trino.io/docs/current/connector.html
声明:本站所有文章,如无特殊说明或标注,均为本站原创发布。任何个人或组织,在未征得本站同意时,禁止复制、盗用、采集、发布本站内容到任何网站、书籍等各类媒体平台。如若本站内容侵犯了原著者的合法权益,可联系我们进行处理。

评论(0)