Hadoop HBase 伪分布式安装 配置
2013-04-25 09:52
375 查看
最近需要配置一个 HDFS 和 HBase 环境,看了网上别人写的博客内容之后发现。很多人写的根本不对,少了步骤,或者根本就是错的,或者配置文件根本写的不对。导致我自己不断出现问题无法搭建出稳定的 HDFS 环境。由于采用伪分布式安装,按照网上的教程安装之后,启动HDFS,有时候Namenode未启动,有时候Datanode未启动,运行HBase后,有时候HMaster未启动,有时候根本进了HBase Shell之后任何命令都报错。非常郁闷。所以必须自己写一篇安装教程。
如果你安装了Hadoop与HBase之后可以正常运行,但是重启电脑之后,出现以下几种状况: 1) Hadoop的Namenode没有运行 2) Hadoop的Datanode没有运行 3) HBase的HMaster没有运行 4) 电脑重启后HBase Shell任何命令都会报错, 那么你的Hadoop和HBase一定存在配置问题。
对于Hadoop与HBase,正常的效果应当是,HBase将数据内容保存在HDFS上(也可以保存在本地),重启电脑之后任然可以取得之前存储的数据(前几天我安装的HBase连这点都做不到....)
1. Hadoop配置
安装的具体细节就不说了。无非就是下载tar包,拷贝至/usr/local/目录,更改文件所有者。ssh-keygen产生公钥密钥,这些都不说了。
配置 hadoop-env.sh , 将
配置 core-site.xml, 这一步非常重要,尤其是hadoop.tmp.dir变量,最好配置在本地/home/username/路径下,如果不对其配置,重启电脑后,HDFS上存放的数据将会丢失。hadoop.tmp.dir属性
配置 hdfs-site.xml, 这个文件用来设置冗余块的数量,由于是伪分布式安装,设为1就可以了,全分布式的情况下设为3比较合理。
配置 mapred-site.xml,
这样就算配置好了。可以在hadoop目录下使用 ./bin/hadoop namenode -format 命令格式化文件系统了。之后使用 ./bin/start-all.sh 启动HDFS文件系统。访问 http://localhost:50070 如果看到了网页,那么HDFS就算安装完成了。
2. HBase配置
一样的,下载tar包,拷贝至/usr/local/目录,更改文件所有者。
配置 hbase-env.sh, 将
这一句添加上去。路径根据个人情况设置。
配置 hbase-site.xml, 这里将 hbase.rootdir 存放在 HDFS 上,这里端口号一定要和之前设置的 HDFS的 fs.default.name的端口号一致。
HBase这样就配置好了。
3. 注意点
由于这样的配置,HBase是依赖与HDFS的文件系统的。所以应当先启动HDFS,之后启动HBase。之前出现过几次情况,在未启动HDFS的情况下,先启动了HBase,结果HBase可以正常启动,却无法正常退出,并且所有HBase Shell指令都会报错(由于访问不到HDFS上的HBase文件)。
不知道在不使用 ./bin/stop-all.sh 和 ./bin/stop-hbase.sh 的情况下,直接关闭系统,重启电脑,是否会对文件系统造成破坏。
所以,切记,一定要先启动Hadoop,并且可以通过 http://localhost:50070/dfshealth.jsp 查看HDFS并且可以浏览文件之后再启动HBase。否则 HBase也会出现一切问题,如启动时间过长,Master一直在初始化等等。
如果你安装了Hadoop与HBase之后可以正常运行,但是重启电脑之后,出现以下几种状况: 1) Hadoop的Namenode没有运行 2) Hadoop的Datanode没有运行 3) HBase的HMaster没有运行 4) 电脑重启后HBase Shell任何命令都会报错, 那么你的Hadoop和HBase一定存在配置问题。
对于Hadoop与HBase,正常的效果应当是,HBase将数据内容保存在HDFS上(也可以保存在本地),重启电脑之后任然可以取得之前存储的数据(前几天我安装的HBase连这点都做不到....)
1. Hadoop配置
安装的具体细节就不说了。无非就是下载tar包,拷贝至/usr/local/目录,更改文件所有者。ssh-keygen产生公钥密钥,这些都不说了。
配置 hadoop-env.sh , 将
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_21这一句添加上去。路径根据个人情况设置。
配置 core-site.xml, 这一步非常重要,尤其是hadoop.tmp.dir变量,最好配置在本地/home/username/路径下,如果不对其配置,重启电脑后,HDFS上存放的数据将会丢失。hadoop.tmp.dir属性
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>fs.default.name</name> <value>hdfs://localhost:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/hduser/tmp</value> </property> </configuration>
配置 hdfs-site.xml, 这个文件用来设置冗余块的数量,由于是伪分布式安装,设为1就可以了,全分布式的情况下设为3比较合理。
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>dfs.replication</name> <value>1</value> </property> </configuration>
配置 mapred-site.xml,
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <!-- Put site-specific property overrides in this file. --> <configuration> <property> <name>mapred.job.tracker</name> <value>localhost:9001</value> </property> </configuration>
这样就算配置好了。可以在hadoop目录下使用 ./bin/hadoop namenode -format 命令格式化文件系统了。之后使用 ./bin/start-all.sh 启动HDFS文件系统。访问 http://localhost:50070 如果看到了网页,那么HDFS就算安装完成了。
2. HBase配置
一样的,下载tar包,拷贝至/usr/local/目录,更改文件所有者。
配置 hbase-env.sh, 将
export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_21
这一句添加上去。路径根据个人情况设置。
配置 hbase-site.xml, 这里将 hbase.rootdir 存放在 HDFS 上,这里端口号一定要和之前设置的 HDFS的 fs.default.name的端口号一致。
<?xml version="1.0"?> <?xml-stylesheet type="text/xsl" href="configuration.xsl"?> <configuration> <property> <name>hbase.rootdir</name> <value>hdfs://127.0.0.1:9000/hbase</value> </property> </configuration>
HBase这样就配置好了。
3. 注意点
由于这样的配置,HBase是依赖与HDFS的文件系统的。所以应当先启动HDFS,之后启动HBase。之前出现过几次情况,在未启动HDFS的情况下,先启动了HBase,结果HBase可以正常启动,却无法正常退出,并且所有HBase Shell指令都会报错(由于访问不到HDFS上的HBase文件)。
不知道在不使用 ./bin/stop-all.sh 和 ./bin/stop-hbase.sh 的情况下,直接关闭系统,重启电脑,是否会对文件系统造成破坏。
所以,切记,一定要先启动Hadoop,并且可以通过 http://localhost:50070/dfshealth.jsp 查看HDFS并且可以浏览文件之后再启动HBase。否则 HBase也会出现一切问题,如启动时间过长,Master一直在初始化等等。
相关文章推荐
- 伪分布式安装Hadoop + zookeeper + hbase安装配置
- hadoop学习(8):HBase-1.2伪分布式安装配置
- 【心血之作】linux虚拟机下安装配置Hadoop(完全分布式)生态环境(hadoop2.2.0,HBase0.98,Hive0.13(连接oracle),sqoop1.4.4(连接oracle)
- hbase 分布式 安装配置 整合到hadoop
- Hbase完全分布式集群安装配置(Hbase1.0.0,Hadoop2.6.0)
- Hadoop HBase 伪分布式安装 配置
- Hbase完全分布式集群安装配置(Hbase1.0.0,Hadoop2.6.0)
- hbase单机和分布式安装配置并整合到hadoop集群上
- Hbase完全分布式集群安装配置(Hbase1.0.0,Hadoop2.6.0)
- Hadoop伪分布式-----HBase的安装和配置
- 伪分布式环境搭建之hadoop、Hbase的安装与配置
- Ubuntu16.04下伪分布式环境搭建之hadoop2.6.0、jdk1.7、Hbase0.98的安装与配置
- 在Ubuntu中安装配置Hadoop的伪分布式
- Hadoop安装教程_单机/伪分布式配置_Hadoop2.7.3/Ubuntu16.04
- hbase安装配置(整合到hadoop)
- Ubuntu16.4-Hadoop2.7.5分布式集群搭建(三)--- Hbase的安装与配置
- Hadoop2.6.2完全分布式集群HA模式安装配置详解
- Hbase0.98版本的安装部署配置管理(Hadoop2.3、Hbase0.98、Hive0.13整合)
- Hadoop2.2.0安装配置手册!完全分布式Hadoop集群搭建过程~(心血之作啊~~) .
- Hadoop集群之Hbase安装配置