presto配置
presto启动时默认配置文件目录在安装目录下的etc下
每个节点的配置
在etc下创建node.properties文件,配置如下:
1 | node.environment=production |
node.environment: 集群名字,一个集群内所有的节点必须一致。
node.id: 节点id,每个节点同一集群内保持唯一。
node.data-dir:节点数据目录,数据目录用于存放日志和服务的pid。
服务配置
presto server分为coordinator和worker,coordinator可以认为是master节点,worker可以认为是计算节点。配置时在etc下创建config.properties文件。
coordinator配置如下:
1 | coordinator=true |
worker配置如下:
1 | coordinator=false |
coordinator:是coordinator角色还是worker角色。
node-scheduler.include-coordinator:计算节点是否包含coordinator,主要用于单机测试。
http-server.http.port:服务启动的端口号。
discovery-server.enabled:节点是否作为发现节点的web服务。分发任务时,用于发现计算节点,每个计算节点启动时会在其上注册。
discovery.uri:发现节点的web服务地址,一般和coordinator部在一起。
query.max-memory:每个查询可以用的最大内存。
query.max-memory-per-node:每个查询每台计算节点可以用的最大内存。
query.max-total-memory-per-node:每个查询每台计算节点可以用的总的最大内存,包括查询任务用的内存和系统消耗的内存。
配置jvm启动参数
在etc下创建jvm.config文件
1 | -server |
配置catalog
presto通过connector访问数据,connector配置在catalog里。presto内置的不同类型的connector,放在安装目录的plugins下。catalog的配置在etc/catalog/下,以hive为例,我们添加一个名字是hive的catalog,则在etc/catalog下创建hive.properties文件,配置如下:
1 | hive.metastore.uri=thrift://example.meta:9083 |
通过命令行访问时使用–catalog指定catalog。
配置服务日志级别
在etc下创建log.properties文件,配置如下:
1 | com.facebook.presto=DEBUG |
日志文件放在data/var/log下。
服务管理
启动
1 | ./bin/launcher start |
停止
1 | ./bin/launcher stop |
重启
1 | ./bin/launcher restart |
动态catalog
https://www.cnblogs.com/xiaoxin101/p/13363562.html
https://www.imooc.com/video/19268
参考链接:
https://blog.csdn.net/qq_32447301/article/details/89430750
docker 集群部署:https://github.com/Lewuathe/docker-presto-cluster
