您好,登錄后才能下訂單哦!
hbase 數(shù)據(jù)存儲有三種跑法,跑在本地磁盤上、跑在偽分布式上、跑在完全分布式上--------
額。。。官網(wǎng)的文檔挺坑爹的,結(jié)合官網(wǎng)、百度、谷歌的各種文檔看,只要理解原理,搭建也不算難(當(dāng)然照的官網(wǎng)文檔個看就比較坑爹了)
單機(jī)模式 ------->> 這個最簡單,免寫了,下了包直接解壓配置個路徑就可以啟動了,zk 和 hbase 都是起在同一個 jvm 中的,數(shù)據(jù)落到本地磁盤。
偽分布式部署方式 ------->> 先部署 hdfs , 再部署 hbase ,它們的各個進(jìn)程跑在不同的 jvm 中 , hbase只是將數(shù)據(jù)落到了 hdfs 上。
完全分布式 ------->> 完全分布式用大白話來說,我理解的就是個 偽分布式的 升級款,只是把偽分布式的一臺服務(wù)器變成了 n 臺。。。
完全分布式一定要部署在 物理機(jī)上
上邊蛋扯的差不多了,下面直接入正題,開始部署
下載什么版本的包自己解決,要想下載最輕松的全部安裝包,直接到 cdh 上去下載,百度搜索 cdh ,你懂的、、、然后配置文件每個版本的基本上差不多,沒有太大的出入
下面是以 hadoop-2.7.2 、 hbase-1.1.2 為例
一、新系統(tǒng)的話,自己先處理一下系統(tǒng),這個習(xí)慣相信所有運(yùn)維同行的哥哥們都是有這習(xí)慣的。。。關(guān)閉不用的防火墻、最大文件打開數(shù)、jdk全局變量、dns、主機(jī)名解析
建議配置時用 ip 的最后用內(nèi)網(wǎng)的域名,這樣的話,開發(fā)的代碼也好接入做好的 hbase,用主機(jī)名的話,開發(fā)的還得自己的 hosts ,我這里用的 內(nèi)網(wǎng)的 dns 域名。
包傳到 服務(wù)器上,解壓
hadoop-2.7.2.tar.gz
tar xvf hadoop-2.7.2.tar.gz -C /home
cd /home/hadoop-2.7.2
vim etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_72
配置HDFS 之 core-site.xml
mkdir data
vim etc/hadoop/core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://pretend.hdfs.gag.cn:9000</value>
<!--這里設(shè)置 hdfs 文件系統(tǒng)接口-->
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/hadoop-2.7.2/data/tmp</value>
<!--這里為 hdfs 數(shù)據(jù)存儲路徑-->
</property>
</configuration>
配置HDFS 之 hdfs-site.xml
vim etc/hadoop/hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
<!--指定創(chuàng)建的副本數(shù)-->
</property>
</configuration>
配置HDFS 之 YARN, 這原配置文件里什么也沒有,都是注釋內(nèi)容,直接改名就行
mv etc/hadoop/mapred-site.xml.template etc/hadoop/mapred-site.xml
vim etc/hadoop/mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
<!--使用yarn運(yùn)行mapreduce程序-->
</property>
</configuration>
配置HDFS 之 yarn-site.xml
vim etc/hadoop/yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
<!--NodeManager上運(yùn)行的附屬服務(wù)。需配置成mapreduce_shuffle,才可運(yùn)行MapReduce程序-->
</property>
</configuration>
啟動 hdfs
初次啟動 hdfs 先要初始化文件系統(tǒng),也可以說是格式化文件系統(tǒng)
bin/hdfs namenode -format
格式化完畢,啟動NameNod和DataNode進(jìn)程
啟動之前如果修改 jvm 參數(shù)的話,在 vim etc/hadoop/hadoop-env.sh 修改 HADOOP_HEAPSIZE 這一項(xiàng)就可以了,默認(rèn)應(yīng)該是 1024M
sbin/start-dfs.sh
啟動以后,有這里顯示有 三個配置文件,是 out 后綴的,看日志的話,看 log 后綴的,看有沒有 error 級別的報(bào)錯
啟動YARN
sbin/start-yarn.sh
同樣是去看這兩個的 log 后綴的日志
這里了 hdfs 就算啟動完畢了,這時再 jps 命令可以看到除 jps 進(jìn)程外有 5 個
查看端口已經(jīng)有這么多了, 50070 是 hdfs 的 web 端口,以后輸入 ip:port 或者 域名:port 來查看 web 頁面
======================================================================
以上 hdfs 啟動沒問題后,就可以啟動 hbase 了
tar xvf hbase-1.1.2-bin.tar.gz -C /home/
cd /home/hbase-1.1.2/
vim conf/hbase-env.sh
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_72
配置Hbase
mkdir data
vim conf/hbase-site.xml
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://pretend.hdfs.gag.cn:9000/hbase</value>
<!--使用 hdfs 文件系統(tǒng),端口為上面配置的 hdfs 接口-->
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hbase-1.1.2/data</value>
<!--zookeeper數(shù)據(jù)存儲路徑,用hbase自帶的zookeeper-->
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
<!--設(shè)置hbase模式為集群模式-->
</property>
</configuration>
hbase 集群內(nèi)的服務(wù)器,如果是啟動完全分布式,這里要填寫hbase所有的服務(wù)器域名或者 ip 或者 主機(jī)名,順便說一下,hbase和 hadoop 集群全部是已 ssh 遠(yuǎn)程 調(diào)用命令的方式啟動其他節(jié)點(diǎn)的
vim conf/regionservers
pretend.hbase.gag.cn
這里的話,我把內(nèi)存調(diào)整了一下,因?yàn)殚_發(fā)那邊要用,服務(wù)器是 8G 的
vim conf/hbase-env.sh
export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=512m -XX:MaxPermSize=512m"
export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=512m -XX:MaxPermSize=512m"
啟動Hbase
先啟動 zookeeper,如果是完全分布式的話,所有的 hbase節(jié)點(diǎn)會以臨時節(jié)點(diǎn)的方式注冊在 zk 里,偽分布式也一樣,只不過zk 里只有一個節(jié)點(diǎn),zk 也只有一個節(jié)點(diǎn)
bin/hbase-daemon.sh start zookeeper 啟動后查看日志
bin/hbase-daemon.sh start master 啟動后查看日志
bin/hbase-daemon.sh start regionserver 啟動后查看日志
此時的 jps 可以查看到除 jps 外 8 個進(jìn)程
hbase 的 web 頁面端口是 16010
如果要加 開機(jī)啟動的話,最好加上sleep等待,我是這樣加的
正常停止方式:
一定要按照順序停止
停止 hbase、zookeeper、hdfs
免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場,如果涉及侵權(quán)請聯(lián)系站長郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。