目录
安装包的下载和解压
presto-server包下载地址:
https://prestodb.io/download.html
本文用的是presto-server-0.261.tar.gz
解压:
tar -zxvf presto-server-0.261.tar.gz
节点的相关配置
本次准备了三个节点
182.168.80.161(主节点)
182.168.80.162(从节点)
182.168.80.163(从节点)
presto-server的目录结构图如下:
-bin
-data(注:data文件夹需要手动创建)
etc(注:这部分内容后期会自动生成)
plugin(注:这部分内容后期会自动生成)
var(注:这部分内容后期会自动生成)
-etc(注:etc文件夹需要自己创建)
catalog(注意:需要手动创建这个文件夹)
-lib
-plugin
所以我们先创建data和etc文件夹
mkdir data
mkdir -p etc /etc/catalog/
然后目录如下:
配置文件可以先配置主节点然后scp到其他节点
(base) [root@yxkj153 etc]# ll
total 12
drwxr-xr-x 2 root root 29 May 29 13:23 catalog
-rw-r--r-- 1 root root 211 May 30 16:06 config.properties
-rw-r--r-- 1 root root 171 May 29 12:36 jvm.config
-rw-r--r-- 1 root root 65 May 29 13:09 node.properties
(base) [root@yxkj153 etc]# pwd
/opt/presto/etc
(base) [root@yxkj153 etc]#
进入etc目录下编辑配置文件
config.properties的配置
(base) [root@yxkj153 etc]# pwd
/opt/presto/etc
(base) [root@yxkj153 etc]# vi config.properties
主节点config.properties的配置
注:8089可以自定义端口号,node-scheduler.include-coordinator=false是否将coordinate节点同时作为worker节点,为避免worker占用太多资源,一般设置为false
coordinator=true
node-scheduler.include-coordinator=false
http-server.http.port=8089
query.max-memory=512MB
query.max-memory-per-node=512MB
discovery-server.enabled=true
discovery.uri=http://192.168.80.161:8089
从节点config.properties的配置
两个从节点一样
[root@yxkj155 etc]# cat config.properties
coordinator=false
#node-scheduler.include-coordinator=false
#http-server.http.port=8089
query.max-memory=512MB
#query.max-memory-per-node=512MB
#discovery-server.enabled=true
discovery.uri=http://192.168.80.161:8089
三个节点jvm.config的配置一样
/opt/presto/etc
(base) [root@yxkj153 etc]# cat jvm.config
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError
node.properties的配置
注:node.environment为一个presto集群的名字
node.id每个节点都不一样
主节点
node.environment=bdp
node.id=a001
node.data-dir=/var/presto/data
从节点
182.168.80.162节点
node.environment=bdp
node.id=a002
node.data-dir=/var/presto/data
182.168.80.163节点
node.environment=bdp
node.id=a003
node.data-dir=/var/presto/data
hive.properties的配置
三个节点一致
(base) [root@yxkj153 catalog]# pwd
/opt/presto/etc/catalog
(base) [root@yxkj153 catalog]# cat hive.properties
connector.name=hive-hadoop2
hive.metastore.uri=thrift://192.168.80.161:3306
hive.config.resources=/opt/hdfs/etc/hadoop/core-site.xml, /opt/hdfs/etc/hadoop/hdfs-site.xml
hive.allow-drop-table=true
hive.storage-format=ORC
hive.metastore-cache-ttl=0s
hive.metastore-refresh-interval=1s
hive.max-partitions-per-writers=1000
启动
/opt/presto/bin/launcher start
node-scheduler.include-coordinator=false时候显示的是2,如果设置true显示的worker节点数就是3