zoukankan      html  css  js  c++  java
  • presto的升级

    最近对presto进行了升级,目前最新版本是0.233,我们用的是0.177。

    升级之前参考了一下别人的博客,在官网没有找到关于升级的消息

    其中博客主要参考是:https://www.jianshu.com/p/caf14b656107

    思路是采取的这个,但是方法不是这样的

    1.准备包(三个节点上都要有)

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

    wget https://repo1.maven.org/maven2/com/facebook/presto/presto-cli/0.233.1/presto-cli-0.233.1-executable.jar
    wget https://repo1.maven.org/maven2/com/facebook/presto/presto-jdbc/0.233.1/presto-jdbc-0.233.1.jar

    2.找到原来版本的安装目录(标红处就是安装目录,这里是我升级以后的 ,你在升级前查看的话应该是0.177版本)

    ps -ef |grep presto
    [admin@test29 bin]$ ps -ef |grep presto
    admin 3835 12654 0 15:36 pts/0 00:00:00 grep --color=auto presto
    admin 31362 1 39 15:29 ? 00:02:37 java -cp /home/admin/program/presto-server-0.233.1/lib/* -server -Xmx5G -XX:+UseG1GC -XX:G1HeapRegionSize=32M -XX:+UseGCOverheadLimit -XX:+ExplicitGCInvokesConcurrent -XX:+HeapDumpOnOutOfMemoryError -XX:OnOutOfMemoryError=kill -9 %p -Dlog.output-file=/ccdata/presto/data/var/log/server.log -Dnode.data-dir=/ccdata/presto/data/ -Dnode.id=hadoop-dev20 -Dnode.environment=caocao_presto -Dlog.enable-console=false -Dlog.levels-file=/home/admin/program/presto-server-0.233.1/etc/log.properties -Dconfig=/home/admin/program/presto-server-0.233.1/etc/config.properties com.facebook.presto.server.PrestoServer

    3.将presto-server-0.233.1.tar.gz压缩包解压到/home/admin/program/目录下与原来的目录保持并行(因为你不知道之前有多少脚本写的时候就是用的这个目录,你如果修改了目录,好多脚本都得改,如果改不到  就会出现报错,所以目录不要变)

    tar -zxvf presto-server-0.233.1.tar.gz  -C /home/admin/program/

    4.将原来目录下的(/home/admin/program/presto-server-0.177/)etc文件夹考到新解压的目录下

     cp -r /home/admin/program/presto-server-0.177/etc  /home/admin/program/presto-server-0.233.1/

      然后如果有其他脚本就一起拷到相应目录下,最好不要改变位置。

    5.你要查看一下自己的jdk的版本,因为0.233版本需要jdk是150以上的,也就是至少要是15几的版本(以1.8版本为准的150哈)

    [admin@test29 bin]$ java -version
    java version "1.8.0_152"
    Java(TM) SE Runtime Environment (build 1.8.0_152-b16)
    Java HotSpot(TM) 64-Bit Server VM (build 25.152-b16, mixed mode)

    如果你的版本大于150,那就没有问题,如果小于150,那么需要自行下载一个版本大于150的jdk

    当然你不必去把你整个环境的jdk给换掉,风险太大,你只需要查看一下你原来的vim /home/admin/program/presto-server-0.177/bin/launch,看一下配置的jdk的目录是啥,你就把你新下载的jdk丢到那个目录下就可以了,下图的红框框的就是你需要配置的

    export PATH=/home/admin/program/jdk1.8.0_152/bin:$PATH

     6.参数变更

    因为版本的迭代,有一些参数可能发生变化,如果发生变化就会导致启动失败,所以需要对参数进行整改,具体怎么整改我还没有找到官网的参考位置,只是在相关博客中参考了一下,但是好像不太理想,启动的时候还是各种报错,所以此处建议若果找不到具体的参照,那就直接启动,因为报错内容会告诉你那个参数是不需要的,那个参数是错的。

    启动报错截图找不到了 ,总之就是某个参数can‘t used 或者   can‘t configured这个样子的基本上就是不需要了  ,你注释掉就好。直到出现这个就算是启动成功了

     这是主节点的配置

    7.启动前准备

      1)启动之前你要先把原来的停掉

    /home/admin/program/presto/bin/launcher stop

       2)为了避免升级的过程中需要更改脚本,所以需要将presto-server-0.233.1目录和presto建立软连接,在之前的版本可能已经建立过软连接,比如

    lrwxrwxrwx 1 admin admin 19 2019-08-22 11:10:56 presto -> presto-server-0.177

    我们要把这个软连接给它换成新的版本的

    lrwxrwxrwx  1 admin admin        21 2020-03-28 11:13:17 presto -> presto-server-0.233.1

    原来的你可以给他换一下名字

    mv  presto  presto.177
    lrwxrwxrwx 1 admin admin 19 2019-08-22 11:10:56 presto.177 -> presto-server-0.177

    7.其他的work节点跟主节点的升级步骤差不多,启动跟主节点也是一样启动。

    每个个节点单独启动坑内比较麻烦,你可以写一个启动脚本。

    ssh -p 15388 test31 /home/admin/program/presto/bin/launcher start
    ssh -p 15388 dev30 /home/admin/program/presto/bin/launcher start
    /home/admin/program/presto/bin/launcher start

    然后查看web(红框中可以看到,升级已经成功)

     总的来说这个过程还是比较简单的

    最后还有两个jar包的作用

    presto-cli-0.233.1-executable.jar是用来连接

    [admin@test29 presto]$ /home/admin/program/presto/presto --server 10.27.228.64:9999 --user analyst  --catalog hive --schema default
    presto:default> show tables;
                                                 Table                                              
    ------------------------------------------------------------------------------------------------
     carbon_table                                                                                   
     customers                                                                                      
     dc_driver_loginlong_bak1                                                                       
     dc_driver_loginlong_test11                                                                     
     dc_driver_loginlong_test12                                                                     
     dc_driver_loginlong_test13                                                                     
     dc_driver_loginlong_test14                                                                     
     dc_driver_loginlong_test16                                                                     
     dc_driver_loginlong_test17                                                                     
     dc_driver_loginlong_test18                                                                     
     dc_driver_loginlong_test19                                                        
    presto-jdbc-0.233.1.jar配置到java的classpath目录下,这个我不知道怎么配置,还在研究中
  • 相关阅读:
    Windows环境安装tesseract-ocr 4.00并配置环境变量
    python问题集
    使用CefSharp在.Net程序中嵌入Chrome浏览器(八)——Cookie
    python虛擬環境和工具
    pycharm使用(持续更新)
    醒过来的都市
    下一个十年计划6-作品
    下一个十年计划5-方向选择
    下一个十年计划4-反向选择
    负逻辑的实际应用
  • 原文地址:https://www.cnblogs.com/xuziyu/p/12599527.html
Copyright © 2011-2022 走看看