您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關windows下怎么部署hbase的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
根據hbase的官方wiki需要準備和配置如下幾個依賴項。
jre / jdk
cygwin & openssh
hbase
其中兩個在部署hadoop的時候已經搞過,只剩下openssh和hbase需要部署。
因為出了很多問題,沒能一一記下,如果有問題,可以留言共同探討。
微軟官方已經搞了windows平臺下的openssh,OpenSSH for PowerShell
博主直接下載了最新版本。 解壓,然后用管理員打開一個powershell。 直接運行 cd 到解壓目錄。 先生成 key。
.\ssh-keygen.exe -t rsa -f ssh_host_rsa_key .\ssh-keygen.exe -t dsa -f ssh_host_dsa_key .\ssh-keygen.exe -t ecdsa -f ssh_host_ecdsa_key .\ssh-keygen.exe -t ed25519 -f ssh_host_ed25519_key
后來看到教程說直接
.\ssh-keygen.exe -a
就可以,但是沒嘗試,大家可以先這么試一下。
然后運行 .\sshd.exe 如果不出其他問題,應該不會出什么提示。如果不放心,繼續輸入 netstat -ano 查看一下windows現在開放的端口,如果看到22,就說明sshd已經起來了。
這時候我們再運行
.\install-sshd.ps1
這個腳本會把sshd發布為windows服務,但是運行的時候可能會報一個 在此系統中禁止執行腳本 的提示。如果有,則繼續輸入權限命令:
set-executionpolicy
提示是不是Yes,點擊 Y 即可。
這時候,運行 ssh username@localhost 進行測試,應該會提示你輸入username的密碼,輸入即可。
然后,需要將該目錄加入 PATH ,以便在cmd中使用 ssh 。
(博主裝完之后sshd的log不知為何變成了101G,把盤占滿了,應該是個bug,因為沒有重現,所以現在博主暫時沒有管它,所以最好不要把ssh放在系統盤,爆盤了不知道系統會不會掛掉。。)
下載hbase的二進制包,我用的1.1.5穩定版。下載tar.gz壓縮包,博主解壓到了 P:\hbase-1.1.5
事實上我還做了一個操作,就是把上篇編譯的hadoop的相關jar包替換到 hbase-1.1.5/lib/hadoop-.jar 中,因為之前看到一篇教程說hbase中的jar包與自己hadoop的版本應該一致,但是實際上有沒有起到效果博主并不知曉,所以可以先不做這一步,后面出問題了再替換吧
其實博主很奇怪,hbase的發布包中提供了cmd的腳本,理論上可以不依賴cygwin,而在cygwin中,腳本運行的是 sh,而程序卻實際使用的是 .exe ,wiki中并沒有提到軟件包cmd的文件是干什么用的(也許cmd還在測試?),博主曾嘗試在windows cmd 中部署,但是失敗了,有條件的童鞋可以寫一個不用cygwin的教程 ^_^ (因為表面上看 sshd 的問題微軟已經解決了,腳本改用windows下的,應該是沒有問題的)
cygwin下面需要配置的東西主要是把 windows 下的路徑映射成linux的。所以就是要建幾個“快捷方式”
## 把jdk的路徑映射到linux中 ln -s /cygdrive/p/jdk7 /usr/local/jdk7 ## 把hbase的路徑映射到linux中 ln -s /cygdrive/p/hbase-1.1.5 /usr/local/hbase-1.1.5
查找 JAVA_HOME ,解注釋,并且把值設置為 /usr/local/jdk7
查找 HBASE_OPTS 添加 -Dhadoop.home.dir=P:/hado 既指定hadoop目錄。
另外有一個教程提到需要設置 export HBASE_CLASSPATH=/usr/local/hbase-???/lib/zookeeper-???.jar:/usr/local/hbase-???/lib/slf4j-api-???.jar:/usr/local/hbase-???/lib/slf4j-log4j12-???.jar (??? 代表版本號) 博主雖然進行了設置,但是感覺應該不需要...
在官方的wiki中提到一個叫 ./conf/hbase-default.xml 的文件,而這個文件在windows下是沒有的,經過搜索,得知這是hbase開發環境才使用的配置文件,而實際使用的是hbase-site.xml這個,所以該文件即可。 在文件中添加以下項目:
<configuration> <property> <name>hbase.rootdir</name> <value>hdfs://0.0.0.0:19000/hbase</value> <!-- 這部分進行了修改,現在使用本地搭建的hadoop作為文件系統 hdfs://0.0.0.0:19000 定義在hadoop/etc/hadoop/core-site.xml中 <value>file:///P:/hadoop/cygwin64/tmp/hbase</value> --> </property> <property> <name>hbase.tmp.dir</name> <value>P:/hadoop/cygwin64/tmp/hbase_tmp</value> </property> <property> <name>hbase.zookeeper.quorum</name> <value>127.0.0.1</value> </property> <property> <name>hbase.cluster.distributed</name> <value>false</value> </property> </configuration>
**然而,博主并不知道這些都是什么玩意 @_@ **
額... 先不管那些繁雜的配置了,先來啟動試一下。在cygwin中執行。
/usr/local/hbase-1.1.5/conf/hbase-env.sh /usr/local/hbase-1.1.5/bin/start-hbase.sh
如果不出什么意外,hbase會提示讓你輸入ssh的密碼,輸入之后就啟動成功了。這里hbase開啟的是后臺進程,也就是cygwin還是可以操作的,但是cygwin的窗口仍然不能關閉,會造成hbase進程停止。
繼續在cygwin中輸入
/usr/local/hbase-1.1.5/bin/hbase shell
開啟一個 hbase 的shell窗口。 然后就可以輸入命令啦。
create 'test', 'data' list put 'test', 'row1', 'data:1','value1' put 'test', 'row2', 'data:2','value2' put 'test', 'row3', 'data:3','value3'
測試結果大致如下:
感謝各位的閱讀!關于“windows下怎么部署hbase”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。