最近參觀了一下超圖的用戶大會,對於超圖的基於HBASE的快速非切片動態渲染技術,很是震撼,感嘆已經落伍了,耗費一週時間研究了一下centos7下geowave+geoserver+hbase+hadoop完全分佈式的部署,坑太多了,給大家參考吧
安裝版本:
- hadoop 2.7.3
- zookeeper 3.4.6
- hbase 1.4.12
- geowave 1.1.0
- geoserver 2.4.0
- Tomcat 8
- jdk openjdk8
***因爲版本問題折騰了好幾次,提醒各位各位同學一定要版本匹配,否則各種未知錯,尤其是JDK版本,最好用8,其他版本坑太多。
1 Hadoop分佈式安裝
採用了三個節點的hadoop分佈式安裝部署,master,node1,node2;
詳細安裝過程參考https://blog.csdn.net/china1987427/article/details/82057250不再重複;
***請各位一定注意安裝時如採用免密登錄,所有安裝部署操作均在免密登錄賬戶下,避免不必要的麻煩;
2 zookeeper與Hbase分佈式安裝
詳細安裝過程參考https://blog.csdn.net/hsg77/article/details/81037726不再重複;
***請各位一定注意zookeeper安裝過程中配置好本機的編號,否則啓動不了;
3 geowave安裝
geowave的官方推薦很多種安裝方式,建議大家採用geowave_unix_1_1_0-SNAPSHOT.sh的形式安裝,可以避免很多的坑,安裝完即可使用;
***geowave安裝後記得拷貝核心jar包至hbase的lib下,否則使用報錯,具體拷貝哪個庫請參考後面發出的已配置好的hbase;
3 geowave與geoserver集成
geowave安裝中提供了geoserver的jetty集成包,可以直接用geowave gs run腳本啓動,端口8080;
還是想嘗試一下geowave與geoserver的集成過程;
geoserver安裝不再叨叨,太簡單,集成步驟如下。
- 拷貝geowave插件jar包至geoserver的lib下。
- 拷貝geowave安裝目下geoserver中wpf相關java至geoserver的lib下。非常重要!!!!!
- 運行,解決問題
4、geowave錄入數據與geoserver發佈
geowave的版本變化較大,目前網上可以收到的基本都不行,請大家查詢所安裝版本的官方文檔。
具體實現過程如下:
1、創建hbase store:geowave store add -t hbase -z lcoalhost:2181 eea-store
2、創建索引:geowave index add -t spatial eea-store eea-spindex
3、Hbase錄入數據:geowave ingest localToGW -f geotools-vector /home/hadoop/geowave/lib/services/third-party/embedded-geoserver/geoserver/data/data/australia-latest-free.shp/gis_osm_places_a_free_1.shp eea-store eea-spindex(原諒我目錄太長);
4、geowave配置geoserver:geowave config geoserver -u admin -p geoserver http://192.168.10.102:8080/geoserver
5、geowave創建geoserver工作空間:geowave gs ws add geowave,重要!!!!!!
6、geowave添加geoserver Data Store:geowave gs ds add -ws geowave eea-store
7、在geoserver中發佈數據;
完事,目前尚未測試geoserver hbase分佈式部署與geoserver單機版效率差異(沒有硬件設備-哭死)