基於hdp2.5升級phoenix版本為4.8


  hdp2.5自帶的phoenix是4.7的,而客戶的駕駛艙項目跑在4.7的phoenix上是有問題的,如:如果表中沒有數據,執行select count(*) from 表,返回的是空,這時導致駕駛艙項目報錯誤。所以決定升級phoenix版本為4.8,過程如下

1、在ambari中關閉Hbase、Ambari Metrics

2、備份原來的phoenix

       mv phoenix phoenixbak

     

3、上傳phoenix安裝包apache-phoenix-4.8.2-HBase-1.2-bin.tar

    

4、解壓tar -zxvf apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz

    

5、刪除apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz

      rm -rf apache-phoenix-4.8.2-HBase-1.2-bin.tar.gz

    

6、修改apache-phoenix-4.8.2-HBase-1.2-bin目錄名為phoenix

    mv apache-phoenix-4.8.2-HBase-1.2-bin/ phoenix

     

7、修改phoenix目錄的所有人、所有組為root:root

    chown -R root:root phoenix

    

8、進入phoenix目錄,創建doc目錄,並將example目錄移動到doc目錄下

    cd phoenix

    mkdir doc

    mv examples/ doc/

    

9、創建phoenix-pherf目錄,並將bin/config目錄移動到phoenix-pherf目錄下

    mkdir phoenix-pherf

    mv bin/config/ phoenix-pherf

    

10、復制phoenixbak/lib目錄到當前目錄

    cp -r ../phoenixbak/lib/ .

    

11、進到lib目錄下,刪除以phoenix開頭的jar包

    cd lib/

    rm -rf phoenix-*.jar

    

12、將上級目錄的以phoenix-core開頭的jar包拷貝到當前目錄

    cp ../phoenix-core-4.8.2-HBase-1.2*.jar .

    

13、將上級目錄的以phoenix-flume開頭的jar包拷貝到當前目錄

    cp ../phoenix-flume-4.8.2-HBase-1.2*.jar .

    

14、將上級目錄以phoenix-hive開頭的jar包拷貝到當前目錄

    cp ../phoenix-hive-4.8.2-HBase-1.2*.jar .

    

15、將上級目錄以phoenix-pherf-4.8.2-HBase-1.1開頭的jar包拷貝到當前目錄

    cp ../phoenix-pherf-4.8.2-HBase-1.2*.jar .

    

16、將上級目錄以phoenix-pig開頭的jar包拷貝到當前目錄

    cp ../phoenix-pig-4.8.2-HBase-1.2*.jar .

    

17、將上級目錄以phoenix-queryserver-開頭的jar包拷貝到當前目錄

    cp ../phoenix-queryserver-*.jar .

    

18、將上級目錄以phoenix-spark開頭的jar包拷貝到當前目錄

    cp ../phoenix-spark-4.8.2-HBase-1.2*.jar .

    

19、為phoenix/bin目錄下所有py文件增加執行權限

    chmod +x *.py

    

20、修改queryserver.py文件內容

    將%s-queryserver 改為phoenix-%s-server,如下

    

21、返回上級,執行如下代碼

    rm -rf phoenix-core-4.8.2-HBase-1.2*.jar

    rm -rf phoenix-flume-4.8.2-HBase-1.2*.jar

    rm -rf phoenix-hive-4.8.2-HBase-1.2*.jar

    rm -rf phoenix-pherf-4.8.2-HBase-1.2*.jar

    rm -rf phoenix-pig-4.8.2-HBase-1.2*.jar

    rm -rf phoenix-queryserver-*.jar

    rm -rf phoenix-spark-4.8.2-HBase-1.2*.jar

    執行后,效果如下

    

22、備份所有節點上的phoenix

    

23、將修改后的/usr/hdp/2.5.0.0-1245/phoenix拷貝到其他所有節點中/usr/hdp/2.5.0.0-1245目錄下

    

24、在安裝Metrics Collector節點上替換/usr/lib/ams-hbase/lib下的phoenix包

    cd /usr/lib/ams-hbase/lib  

    rm -rf phoenix-*.jar

    拷貝

    cp /usr/hdp/2.5.0.0-1245/phoenix/lib/phoenix-core-4.8.2-HBase-1.2.jar .

    cp /usr/hdp/2.5.0.0-1245/phoenix/phoenix-4.8.2-HBase-1.2-server.jar .

25、在安裝Metrics Collector節點上替換/usr/lib/ambari-metrics-collector下的phoenix包

    cd /usr/lib/ambari-metrics-collector

    rm -rf phoenix-*.jar

    拷貝

    cp /usr/hdp/2.5.0.0-1245/phoenix/lib/phoenix-core-4.8.2-HBase-1.2.jar .

    cp /usr/hdp/2.5.0.0-1245/phoenix/phoenix-4.8.2-HBase-1.2-server.jar .

26、在替換phoenix的每個節點的/usr/hdp/2.5.0.0-1245/phoenix中,創建軟件連接

    cd /usr/hdp/2.5.0.0-1245/phoenix

    

    ln -s phoenix-4.8.2-HBase-1.2-client.jar phoenix-client.jar

    ln -s phoenix-4.8.2-HBase-1.2-hive.jar phoenix-hive.jar

    ln -s phoenix-4.8.2-HBase-1.2-pig.jar phoenix-pig.jar

    ln -s phoenix-4.8.2-HBase-1.2-server.jar phoenix-server.jar

    ln -s phoenix-4.8.2-HBase-1.2-thin-client.jar phoenix-thin-client.jar

    

27、啟動Hbase、Ambari Metrics

28、通過shell訪問(phoenix-sqlline localhost:2181:/hbase-unsecure)

    

 

如果,您認為閱讀這篇博客讓您有些收獲,不妨點擊一下右下角的【推薦】。
如果,您希望更容易地發現我的新博客,不妨點擊一下左下角的【關注我】。
如果,您對我的博客所講述的內容有興趣,請繼續關注我的后續博客,我是【劉超★ljc】。

本文版權歸作者,禁止轉載,否則保留追究法律責任的權利。


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM