[root@ocdp198 ~]# java -version
java version "1.8.0_271"
wget https://download.openlookeng.io/1.0.1/hetu-server-1.0.1.tar.gz
tar -zxvf hetu-server-1.0.1.tar.gz
mkdir -p /data/openlookeng/data
mkdir /<openlookeng home>/etc
[root@ocdp198 etc]# cat config.properties
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=9090
query.max-memory=5GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://10.1.236.198:9090
node.environment:环境名称。同一集群内所有openLooKeng节点的环境名称必须相同。
node.id:openLooKeng安装的唯一标识符。该属性对于每个节点必须唯一。在openLooKeng的重启或升级过程中,此标识符应该保持一致。如果在一台机器上运行多个openLooKeng安装(即同一机器上多个节点),每个安装必须有一个唯一的标识符。
node.data-dir:数据目录的位置(文件系统路径)。openLooKeng将在这里存储日志和其他数据。
NOTE: 可以通过shell cat /proc/sys/kernel/random/uuid 获取一个uuid
[root@ocdp198 etc]# cat jvm.config
-server
-Xmx16G
-XX:-UseBiasedLocking
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+ExplicitGCInvokesConcurrent
-XX:+ExitOnOutOfMemoryError
-XX:+UseGCOverheadLimit
-XX:+HeapDumpOnOutOfMemoryError
-XX:ReservedCodeCacheSize=512M
-Djdk.attach.allowAttachSelf=true
-Djdk.nio.maxCachedBufferSize=2000000
[root@ocdp198 etc]# cat config.properties
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=9090
query.max-memory=5GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://10.1.236.198:9090
如果是多节点的情况,可以参考官网的安装配置:
协调器的最基本配置如下:
coordinator=true
node-scheduler.include-coordinator=false
http-server.http.port=8080
query.max-memory=50GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://example.net:8080
工作节点的最基本配置如下:
coordinator=false
http-server.http.port=8080
query.max-memory=50GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery.uri=http://example.net:8080
这些属性需要一些解释:
coordinator:允许此openLooKeng实例充当协调节点(接受来自客户端的查询并管理查询执行)。
*node-scheduler.include-coordinator:*允许在协调节点上调度工作。对于较大的集群,协调节点上的处理工作会影响查询性能,因为机器的资源不能用于调度、管理和监视查询执行的关键任务。
*http-server.http.port:*指定HTTP服务器的端口号。openLooKeng使用HTTP进行所有内部和外部通信。
*query.max-memory:*查询可能使用的最大分布式内存量。
*query.max-memory-per-node:*查询在任何一台机器上可能使用的最大用户内存量。
*query.max-total-memory-per-node:*一个查询在任意一台机器上可以使用的最大用户和系统内存量,其中系统内存是读取器、写入器和网络缓冲区等在执行期间使用的内存。
*discovery-server.enabled:*openLooKeng使用Discovery服务查找集群中的所有节点。每个openLooKeng实例在启动时都会将自己注册到Discovery服务。为了简化部署并避免运行额外的服务,openLooKeng协调节点可以运行Discovery服务的嵌入式版本。该版本与openLooKeng共用HTTP服务器,因此使用相同端口。
*discovery.uri:*Discovery服务器的URI。由于我们已经在openLooKeng协调节点中启用了Discovery的嵌入式版本,因此这应该是openLooKeng协调节点的URI。替换example.net:8080以匹配openLooKeng协调器的主机和端口。该URI不能以斜杠结尾。
可以设置以下属性:
*jmx.rmiregistry.port:*JMX RMI注册表端口。JMX客户端应该连接到此端口。
*jmx.rmiserver.port:*JMX RMI服务器端口。openLooKeng导出了许多对通过JMX进行监视的有用指标。
[root@ocdp198 etc]# cat log.properties
io.prestosql=DEBUG
mkdir catalog
touch hive.properties
[root@ocdp198 catalog]# cat hive.properties
connector.name=hive-hadoop2
hive.metastore.uri=thrift://10.1.236.70:9083
hive.config.resources=/etc/hadoop/3.1.0.0-78/0/core-site.xml,/etc/hadoop/3.1.0.0-78/0/hdfs-site.xml
scp root@10.1.236.69:/etc/hadoop/3.1.0.0-78/0/core-site.xml /etc/hadoop/3.1.0.0-78/0/
scp root@10.1.236.69:/etc/hadoop/3.1.0.0-78/0/hdfs-site.xml /etc/hadoop/3.1.0.0-78/0/
NOTE:core-site和hdfs-site中如果是主机名,那么需要在openlookeng的所以节点上配置/etc/hosts,不然在启动过程中会遇到UnknowHosts异常
守护进程的方式启动
bin/launcher start
前台运行
bin/launcher run
......
2020-12-03T15:53:42.984+0800 INFO main Bootstrap hive.security.sql-standard-imp
2020-12-03T15:53:43.034+0800 INFO main io.prestosql.plugin.hive.metastore.thrift.ThriftMetastoreModule Binding default implementation of MetastoreClientFactory.
2020-12-03T15:53:43.034+0800 INFO main io.prestosql.plugin.hive.metastore.thrift.ThriftMetastoreModule Binding default implementation of ThriftMetastore.
2020-12-03T15:53:44.781+0800 INFO main io.prestosql.metadata.StaticCatalogStore -- Added catalog hive using connector hive-hadoop2 --
2020-12-03T15:53:44.799+0800 INFO main io.prestosql.connector.ConnectorManager Announce connector ids, ACTIVE [hive, system], All [hive, system]
2020-12-03T15:53:44.799+0800 INFO main io.prestosql.metadata.DiscoveryNodeManager Dynamic catalog feature is disabled
2020-12-03T15:53:44.799+0800 INFO main io.prestosql.security.AccessControlManager -- Loading system access control --
2020-12-03T15:53:44.803+0800 INFO main io.prestosql.security.AccessControlManager -- Loaded system access control allow-all --
2020-12-03T15:53:44.804+0800 INFO main io.prestosql.statestore.LocalStateStoreProvider No configuration file found, skip loading state store client
2020-12-03T15:53:44.848+0800 INFO main io.prestosql.server.PrestoServer ======== SERVER STARTED ========
java -jar hetu-cli-1.0.1-executable.jar --server 10.1.236.198:9090
可以通过 java -jar hetu-cli-1.0.1-executable.jar --help 查看更多帮助信息
lk> select * from hive.prestotest.score2;
sno | cno | degree
-----+-------+--------
103 | 3-245 | 86
101 | 3-105 | 64
108 | 6-166 | 81
101 | 6-166 | 85
109 | 3-245 | 68
107 | 3-105 | 91
103 | 3-105 | 92
105 | 3-245 | 75
105 | 3-105 | 88
107 | 6-166 | 79
109 | 3-105 | 76
108 | 3-105 | 78
(12 rows)
Query 20201203_080323_00001_avyqp, FINISHED, 1 node
Splits: 28 total, 28 done (100.00%)
0:05 [12 rows, 156B] [2 rows/s, 33B/s]
lk>