參考文檔:https://prestodb.io/docs/current/installation/deployment.html
部署
1、下載安裝包
去presto官網 https://prestodb.io/ 下載tar包,然後傳到服務器上解壓
2、配置相應配置文件
在presto安裝目錄下面創建etc目錄,進入etc目錄下,創建一下配置文件
- 1、node.properties
node.environment=production
node.id=ffffffff-ffff-ffff-ffff-ffffffffffff
node.data-dir=/var/presto/data
node.environment 環境名稱。羣集中的所有Presto節點必須具有相同的環境名稱。
node.id 唯一的標識符 每個節點的node.id 需要不一樣
node.data-dir 數據目錄的位置。Presto將在此處存儲日誌和其他數據。
- 2、jvm.config
用於啓動Java虛擬機的命令行選項列表。文件的格式是選項列表,每行一個,這塊我直接複製官網的示例,沒啥好講這一塊
-server
-Xmx16G
-XX:+UseG1GC
-XX:G1HeapRegionSize=32M
-XX:+UseGCOverheadLimit
-XX:+ExplicitGCInvokesConcurrent
-XX:+HeapDumpOnOutOfMemoryError
-XX:+ExitOnOutOfMemoryError
- 3、config.properties
Presto服務器的配置。每臺Presto服務器都可以充當協調器和工作器。但是專用於一臺計算機僅執行協調工作的服務器可以在較大的羣集上提供最佳性能。
coordinator相關配置
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
worker的相關配置
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 ,也可以充當worker,使用一下配置
coordinator=true
node-scheduler.include-coordinator=true
http-server.http.port=8080
query.max-memory=5GB
query.max-memory-per-node=1GB
query.max-total-memory-per-node=2GB
discovery-server.enabled=true
discovery.uri=http://example.net:8080
(這些配置都是在官網直接配置得來,這個配置下就可以,也不難)
- 4、catalog目錄,目錄下propeties文件(每個connector的配置),這個後續講
啓動
其實這裏還有各種connector需要講解,畢竟你需要連接source 源才能進行計算等操作,這一塊後續分出來講
測試模式
一開始我用的測試模式,直接修改下上述的配置 然後
bin/launcher run
啓動即可,這塊講一下 bin/launcher run 和 bin/launcher start 的區別
bin/launcher start 作爲守護進程,其實也相當於放到了後臺,
bin/launcher run 則是將日誌寫到了控制檯
集羣模式
集羣模式的時候,注意的點就是node.id 不要相同 。node.environment的值相同。
然後再啓動的時候,是先啓動coordinator,然後再分別啓動worker,原理一想也應該是coordinator啓動後暴露服務,然後worker啓動後註冊這樣的機制。
當時在這裏耽誤了些時間,以爲只要啓動coordinator就好了。其實不是,worker節點也都需要啓動。
驗證
怎麼驗證是否啓動起來呢 presto有自帶的頁面 使用 discovery.uri 的配置即可看到相應的頁面,上面有啓動的一些基本信息以及活躍的節點信息等。如下圖所示