Ubuntu搭建Presto环境

环境

  • Ubuntu 22.04
  • JDK 11
  • Presto 0.278

安装

访问 https://prestodb.io ,下载最新的Presto包,我下载的文件是 presto-server-0.278.tar.gz

# wget https://repo1.maven.org/maven2/com/facebook/presto/presto-server/0.278/presto-server-0.278.tar.gz

解压缩:

# tar -zxvf presto-server-0.278.tar.gz

创建 etc 目录:

# mkdir etc

etc 目录下创建 node.properties 文件,内容如下:

node.environment=production
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir=/var/presto/data

etc 目录下创建 jvm.config 文件,内容如下:

-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError

etc 目录下创建 config.properties 文件,内容如下:

coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
discovery-server.enabled=true
discovery.uri=http://example.net:8080

运行

官网上说,有两种运行方式:

  • bin/launcher start :后台运行
  • bin/launcher run :前台运行

我们第一次启动Presto,要看看有没有什么报错信息,所以选择前台运行。

# bin/launcher run

报错如下:

/usr/bin/env: ‘python’: No such file or directory

没找到python。我看了一下,有 python3

# which python3
/usr/bin/python3

于是添加一个软连接:

# ln -s /usr/bin/python3 /usr/bin/python

再次运行Presto,又报错如下:

......
1) Error injecting constructor, java.io.IOException: java.io.IOException: Can not attach to current VM (try adding '-Djdk.attach.allowAttachSelf=true' to the JVM config)
  at com.facebook.airlift.jmx.JmxAgent9.<init>(JmxAgent9.java:47)
  at com.facebook.airlift.jmx.JmxModule.configure(JmxModule.java:55)
......

好吧,那就按它所说的,在 jvm.config 里添加一行:

-Djdk.attach.allowAttachSelf=true

再次运行Presto,这次成功了。

访问 http://<ip>:8080/ui ,如下:

在这里插入图片描述

参考

  • https://prestodb.io
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值