`

debian 系统安装 hadoop 和hbase 环境。

 
阅读更多

由于 自己使用的电脑 是debian 系统。所以 也想在自己的电脑上面安装一个 hbase 的环境。

 

笔记本 是64 bit 的但好像不可以,虚拟 64bit的系统。

 

所以干脆 装一个 环境算了。。

 

参考文档:

 

https://ccp.cloudera.com/display/CDHDOC/CDH3+Installation


 

https://ccp.cloudera.com/display/DOC/Documentation

 

1,下载 all.deb 安装包

 

wget http://archive.cloudera.com/one-click-install/squeeze/cdh3-repository_1.0_all.deb

 

sudo dpkg -i cdh3-repository_1.0_all.deb

 

2,增加 一个 source 源

 

sudo vi /etc/apt/sources.list.d/cloudera.list 

添加如下内容:

 

deb http://archive.cloudera.com/debian <RELEASE>-cdh3 contrib
deb-src http://archive.cloudera.com/debian <RELEASE>-cdh3 contrib

 

3,增加源的 key

 

curl -s http://archive.cloudera.com/debian/archive.key | sudo apt-key add -

 

返回 OK 说明添加成功

 

4,安装 hadoop , hbase

 

 sudo apt-get install hadoop-0.20

 

sudo apt-get  install hadoop-hbase

 

5,配置 hadoop ,hbase 

 

sudo apt-get install rsync

 

 

 

使用 cloudera 的hadoop 安装的完成 ,其实 hadoop的目录是在 /usr/lib/hadoop/

修改配置文件:

conf/core-site.xml:

<configuration>
  <property>
    <name>fs.default.name</name>
    <value>hdfs://localhost:9000</value>
  </property>
</configuration>

conf/hdfs-site.xml:

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>

conf/mapred-site.xml:

<configuration>
  <property>
    <name>mapred.job.tracker</name>
    <value>localhost:9001</value>
  </property>
</configuration>

说明下。 rpm 安装包安装之后 将会创建一个 hdfs的用户。并且将用户的根目录设置在 /usr/lib/hadoop/下。
但是这个目录可以访问但不能创建文件夹。所以要用户root 创建一个 .ssh的文件夹。并将所有着给hdfs。

配置ssh

#root 操作
mkdir /usr/lib/hadoop/.ssh
#修改所有者。
chown hdfs:hdfs /usr/lib/hadoop/.ssh -R

#切换用户
su hdfs

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa 

cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys

#测试
ssh localhost
#如果可以登录说明配置好了。


然后就可以测试是否可以启动。停止了。

在启动前一点要格式化 namenode

hadoop namenode -format


su hdfs

cd /usr/lib/hadoop/bin
#启动
sh start-all.sh
#停止
sh stop-all.sh


然后就可以运行下 官方的测试了。


官方的例子是统计一个文章里面的字符出现的频率。(很经典的例子)

这里直接把Hadoop 目录下的 README.txt 拷贝到文件系统上。

#上传到hadoop的文件系统.
hadoop fs -put /usr/lib/hadoop/README.txt /tmp/input 
#执行example 例子。
hadoop jar hadoop-examples.jar wordcount /tmp/input /output

运行结果如下:





如果没有报错误。就说明都配置对了。并且可以正常启动关闭。


配置 hbase:

首先要修改 配置文件hbase-site.xml。目录在/usr/lib/hbase/conf/。 

vi /usr/lib/hbase/conf/hbase-site.xml

<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://localhost:9000/hbase</value>
  </property>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
</configuration>


需要修改下 /var/log/hbase/ 这个文件夹的权限。否则在启动的时候会报文件没有创建。

#root 用户修改

chmod 777 /var/log/hbase/

修改hbase-env.sh 文件。在里面设置JAVA_HOME,需要重新设置下。

vi /usr/lib/hbase/conf/hbase-env.sh

java 默认安装 在 /usr/java/default/ 目录下。



 



#使用hdfs 用户启动 hbase。
su hdfs

sh /usr/lib/hbase/bin/start-hbase.sh

正常启动。



 

进入 hbase 命令行。

hbase shell

这个时候可以进入 shell 但是报错:



 

ERROR: org.apache.hadoop.hbase.ZooKeeperConnectionException: HBase is able to connect to
ZooKeeper but the connection closes immediately. This could be a sign that the server has too many
connections (30 is the default).

需要修改 limits.conf

vi /etc/security/limits.conf

在最后添加两行:

hdfs  -       nofile  32768
hbase  -       nofile  32768



 

重启下 hbase 就可以创建表查询表了。。




 

都没有报错。


hbase(main):003:0> create 'test', 'cf'
0 row(s) in 1.2200 seconds
hbase(main):003:0> list 'table'
test
1 row(s) in 0.0550 seconds
hbase(main):004:0> put 'test', 'row1', 'cf:a', 'value1'
0 row(s) in 0.0560 seconds
hbase(main):005:0> put 'test', 'row2', 'cf:b', 'value2'
0 row(s) in 0.0370 seconds

其他的就自己去练习吧。

 

 

0
0
分享到:
评论

相关推荐

    thumbor_hbase:用于Thumbor(https的hbase存储

    Hadoop / HBase安装用于Thumbor的HBase存储模块最初是在Debian系统上的Cloudera CDH3 Hadoop上开发和测试的。在Ubuntu / Debian系统上安装您可以遵循适用于Ubuntu / Debian Systems Systems的,并安装以下软件包: ...

    Ambari部署Hadoop集群.doc

    Hadoop生态圈包含了众多组件,如HDFS(分布式文件系统)、MapReduce(分布式计算框架)、HBase(NoSQL数据库)、Hive(数据仓库工具)、Pig(数据分析工具)、Flume(日志收集系统)、Sqoop(数据导入导出工具)和...

    linux中自用hadoop-2.7.5.zip

    1. **环境准备**:确保系统安装了Java开发套件(JDK),因为Hadoop依赖Java运行环境。你可以使用`java -version`命令检查是否已安装,并通过`sudo apt-get install default-jdk`(Ubuntu/Debian)或`yum install ...

    Linux_JDK1.8.zip

    5. **Hadoop生态**:除了核心组件,Hadoop还有丰富的生态系统,如HBase(分布式NoSQL数据库)、Spark(大数据处理框架)、Hive(数据仓库工具)等,它们也依赖于JDK,因此安装JDK 1.8对于整个Hadoop生态系统是基础性...

    英特尔Hadoop发行版 2.2 新手指南

    其中,Hadoop集群包含了Zookeeper、HDFS、MapReduce、HBase和Hive等多个组件,这些组件通常需要部署在多台服务器上才能充分发挥其功能。 - **管理节点**:负责监控和管理整个Hadoop集群及客户端,提供高级别的控制...

    allkeys+RPM-GPG_KEY-cloudera.rar

    在大数据领域,CDH是一个流行的开源数据平台,它包含了Hadoop、HBase、Spark等组件,为企业提供了数据存储、处理、分析和管理的工具。RPM-GPG-KEY-cloudera和allkeys.asc是公钥文件,它们用于验证从Cloudera官方源...

    SUSELinux下CDH5安装

    9. **Zypper包管理器**:在SUSE Linux中,Zypper是默认的包管理系统,类似于Debian的apt和Red Hat的yum,用于安装、更新和管理软件包。 10. **Java开发套件(JDK)**:JDK是安装Cloudera Manager和CDH5的必备组件,...

    Dockerfiles:用于Docker和Kubernetes的50多个DockerHub公共映像-Hadoop,Kafka,ZooKeeper,HBase,Cassandra,Solr,SolrCloud,Presto,Apache Drill,Nifi,Spark,Consul,Riak,TeamCity和DevOps工具建立在主要Linux发行版上: Alpine,CentOS,Debian,Fedora,Ubuntu

    Dockerfiles:用于Docker和Kubernetes的50多个DockerHub公共映像-Hadoop,Kafka,ZooKeeper,HBase,Cassandra,Solr,SolrCloud,Presto,Apache Drill,Nifi,Spark,Consul,Riak,TeamCity和DevOps工具建立在...

    大数据Linux基础学习笔记

    在Linux中,常用包管理器如apt(Ubuntu/Debian)和yum(CentOS/RHEL)来安装、更新和卸载软件。理解这些工具的使用方法,能帮助快速部署大数据相关软件。 七、大数据环境搭建 Linux是Hadoop、Spark、Hive、HBase等...

    企业大数据分析平台建设方案.docx

    构建这样一个平台涉及多个层面和技术选型,主要包括操作系统选择、Hadoop集群的搭建、数据接入与预处理工具的选择,以及数据存储方案。 首先,操作系统的选择通常是基于大数据处理工具的兼容性。开源的Linux发行版...

    CDH5与CDH6对比.pdf

    操作系统支持方面,CDH6继续支持RHEL/CentOS/OL、Oracle Linux、SLES和Ubuntu等多个主流Linux发行版,但对Debian的支持被取消。操作系统版本的要求也有所更新,如RHEL/CentOS要求更高级别的内核版本。 在元数据库...

    CDH软硬件配置建议

    CDH(Cloudera's Distribution including Apache Hadoop)是由Cloudera公司推出的Hadoop发行版本,它包含了Hadoop生态系统中多个重要组件,并对它们进行了集成和优化。在部署CDH时,选择合适的软硬件配置对于保证...

    impala学习总结.doc

    Impala还依赖于外部系统,如HDFS和HBase用于数据读取,HDFS NameNode检查数据位置,Hive MetaStore提供元数据访问。客户端可以是Python CLI、JDBC/ODBC或Hue,它们通过Thrift协议连接到Impalad的21000端口。 ...

    大数据采集技术-Flume监控端口实验手册.pdf

    - 安装 netcat:`apt-get install netcat`(对于基于 Debian 的系统)或 `yum install netcat`(对于基于 Red Hat 的系统) - 使用 netcat 发送数据到 Flume 监听的端口,例如:`echo "Hello, World!" | nc -lk ...

Global site tag (gtag.js) - Google Analytics