
将presto-server-0.196.tar.gz安装包上传至hadoop102服务器的/opt/software目录下,接着将其解压到/opt/module路径中,为后续的部署操作做好准备。

将解压后的文件夹名称修改为presto,便于识别与管理。

进入/opt/module/presto目录,并创建一个用于存储运行时数据的目录,确保Presto服务具备必要的数据存储空间。

在相同目录下新建一个名为etc的文件夹,用于存放所有配置文件,实现配置集中化管理。

在/opt/module/presto/etc目录内创建jvm.config文件,用于定义JVM启动参数。

向jvm.config文件中添加如下配置内容:
-server -Xmx8G -XX:+UseG1GC -XX:G1HeapRegionSize=32M -XX:+UseGCOverheadLimit -XX:+ExplicitGCInvokesConcurrent -XX:+HeapDumpOnOutOfMemoryError -XX:+ExitOnOutOfMemoryError

Presto支持接入多种数据源,这些数据源在系统中被称为catalog。本文档以Hive为例,配置一个Hive类型的catalog,以便能够查询和处理Hive中的数据。

在etc/catalog目录下创建hive.properties文件,并写入以下内容:
connector.name=hive-hadoop2 hive.metastore.uri=thrift://hadoop102:9083

使用分发命令将hadoop102上的presto整个目录同步复制到hadoop103和hadoop104节点,保证三台机器上的基础环境一致。

分发完成后,分别登录hadoop102、hadoop103和hadoop104三台主机,进入各自的/opt/module/presto/etc目录,编辑node.properties文件,设置唯一的node.id,确保每个节点拥有不同的标识符。

Presto集群由一个Coordinator(协调节点)和多个Worker(工作节点)组成。此处设定hadoop102作为Coordinator节点,承担任务调度与查询协调职责。

在hadoop102的etc目录下创建config.properties文件,并配置其角色为coordinator,启用相关服务端口与线程设置。

将hadoop103和hadoop104配置为Worker节点,负责执行实际的数据计算任务,参与分布式查询处理。

在hadoop103和hadoop104的etc目录下创建对应的config.properties文件,指定其节点类型为worker,并连接至中心协调节点。

配置内容如下:
node.environment=production node.id=unique-worker-id http-server.http.port=8889 query.max-memory=5GB query.max-memory-per-node=1GB query.max-total-memory-per-node=2GB discovery.uri=http://hadoop102:8889

切换至hadoop102的/opt/module/hive目录,以atguigu用户身份启动Hive Metastore服务,确保元数据服务正常运行,供Presto访问Hive表结构信息。

在每台节点上执行启动命令,以前台方式运行Presto服务,便于查看实时日志输出,确认服务是否成功启动。

确认无误后,可使用后台方式启动Presto服务,释放终端并保持进程持续运行:
nohup bin/launcher start &

















