CentOS 安装 hadoop hbase 使用 cloudera 版本。(一)

简介: 使用Virtualbox安装系统和 hadoop ,hbase   参考安装: cloudera 的hadoop 只支持 64bit的版本.而要用虚拟机安装 64bit 的要满足 4个条件.     1, 64bit的cpu 3, 64bit的操作系统 3, 64bit的VirtualBox 4, 必须允许硬件虚拟化(需要到 bios 里面打开virtua

使用Virtualbox安装系统和 hadoop ,hbase

 

参考安装:

cloudera 的hadoop 只支持 64bit的版本.而要用虚拟机安装 64bit 的要满足 4个条件.

 

 

1, 64bit的cpu


3, 64bit的操作系统


3, 64bit的VirtualBox


4, 必须允许硬件虚拟化(需要到 bios 里面打开virtualization的一项)

 

Debian 64bit install VirtualBox.

 

#修改apt source 权限。

sudo chmod +w /etc/apt/sources.list

添加一行。

 

sudo vi /etc/apt/sources.list

 

 

#virtual box.

deb http://download.virtualbox.org/virtualbox/debian squeeze contrib non-free

#再把权限修改回去。

sudo chmod -w /etc/apt/sources.list

 

 

#添加key

wget -q http://download.virtualbox.org/virtualbox/debian/oracle_vbox.asc -O- | sudo apt-key add -

sudo apt-get install virtualbox-4.1 

 

创建一个许虚拟机。然后安装 64bit的 CentOS 系统。

 

 安装过程略。可参考前面的文章:

 

http://toeo.iteye.com/admin/blogs/1233372

 

只不过这里是安装 64bit的CentOS .

 

http://mirrors.163.com/centos/6.0/isos/x86_64/CentOS-6.0-x86_64-minimal.iso

 

安装系统。

 




 

然后就可以安装 64bit 的CentOS了.

 

 

 

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

 

首先安装源.

 

wget http://archive.cloudera.com/redhat/6/x86_64/cdh/cdh3-repository-1.0-1.noarch.rpm


rpm -ivh cdh3-repository-1.0-1.noarch.rpm

 

cd /etc/yum.repos.d/

 

wget http://archive.cloudera.com/redhat/6/x86_64/cdh/cloudera-cdh3.repo


yum search hadoop

yum install hadoop

然后就可以安装了。



 
总共大小 45MB。


安装 hbase。

 sudo yum install hadoop-hbase


 

配置启动 hadoop


要启动hadoop hbase 这样还不行。


yum 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
#如果可以登录说明配置好了。



 


同时安装包修改了主机名。也要修改 hosts文件
添加一个 127.0.0.1 的别名 bogon 
vi /etc/hosts


 

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

su hdfs

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

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



 
在启动前一点要格式化 namenode

hadoop namenode -format



 

#然后启动 hadoop。

sh start-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


同样的道理。还使用 hdfs的用户启动 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>

修改配置文件。hbase的根目录指向 hadoop的 hdfs 文件系统。


 



启动 hbase。使用 hdfs 用户

这里要注意下。发现没有 hbase 用户。所以用的 hdfs 用户。

需要修改下 /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

其他的就自己去练习吧。

可以用root 在 hdfs的主目录 创建 两个 启动停止的脚本:

--start_hadoop_hbase.sh

sh /usr/lib/hadoop-0.20/bin/start-all.sh
sh /usr/lib/hbase/bin/start-hbase.sh

--stop_hadoop_hbase.sh

sh /usr/lib/hadoop-0.20/bin/stop-all.sh
sh /usr/lib/hbase/bin/stop-hbase.sh
 

总结:

在linux的服务器一般 用的都是 redhat 或 centos。没有使用 apache的 hadoop 而是用的 cloudera 的版本。

cloudera 的版本很简单。也很方便。比自己配置问题少很多。并且有专门的公司维护这个。yum 安装更新也很方便。

 

这次是 安装使用 hadoop 遇到问题比较少的一次。。接下来要研究 集群。和使用 java 联系 hadoop hbase。

同样也是在 虚拟机上面。但是虚拟机比真实的要慢很多。

持续更新中。

相关实践学习
lindorm多模间数据无缝流转
展现了Lindorm多模融合能力——用kafka API写入,无缝流转在各引擎内进行数据存储和计算的实验。
云数据库HBase版使用教程
&nbsp; 相关的阿里云产品:云数据库 HBase 版 面向大数据领域的一站式NoSQL服务,100%兼容开源HBase并深度扩展,支持海量数据下的实时存储、高并发吞吐、轻SQL分析、全文检索、时序时空查询等能力,是风控、推荐、广告、物联网、车联网、Feeds流、数据大屏等场景首选数据库,是为淘宝、支付宝、菜鸟等众多阿里核心业务提供关键支撑的数据库。 了解产品详情:&nbsp;https://cn.aliyun.com/product/hbase &nbsp; ------------------------------------------------------------------------- 阿里云数据库体验:数据库上云实战 开发者云会免费提供一台带自建MySQL的源数据库&nbsp;ECS 实例和一台目标数据库&nbsp;RDS实例。跟着指引,您可以一步步实现将ECS自建数据库迁移到目标数据库RDS。 点击下方链接,领取免费ECS&amp;RDS资源,30分钟完成数据库上云实战!https://developer.aliyun.com/adc/scenario/51eefbd1894e42f6bb9acacadd3f9121?spm=a2c6h.13788135.J_3257954370.9.4ba85f24utseFl
目录
相关文章
|
4月前
|
消息中间件 Linux API
centos7 安装rabbitmq自定义版本及配置
centos7 安装rabbitmq自定义版本及配置
|
2月前
|
Linux 编译器 测试技术
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
187 64
|
2月前
|
Linux 编译器 测试技术
【C++】CentOS环境搭建-快速升级G++版本
通过上述任一方法,您都可以在CentOS环境中高效地升级G++至所需的最新版本,进而利用C++的新特性,提升开发效率和代码质量。
234 63
|
2月前
|
SQL 分布式计算 Hadoop
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
Hadoop-12-Hive 基本介绍 下载安装配置 MariaDB安装 3台云服务Hadoop集群 架构图 对比SQL HQL
81 3
|
2月前
|
Kubernetes Linux 开发工具
centos7通过kubeadm安装k8s 1.27.1版本
centos7通过kubeadm安装k8s 1.27.1版本
|
2月前
|
安全 Linux 编译器
Centos 7.9如何使用源码编译安装curl最新版本
通过上述步骤,您就能在CentOS 7.9上成功地从源代码编译并安装curl的最新版本。这种方法不仅提供了灵活性,允许您定制编译选项,还确保了软件的最新功能和安全更新得到应用。
93 1
|
4月前
|
分布式计算 资源调度 Hadoop
centos7二进制安装Hadoop3
centos7二进制安装Hadoop3
|
4月前
|
Linux PHP
Linux CentOS 宝塔 Suhosin禁用php5.6版本eval函数详细图文教程
【8月更文挑战第27天】本文介绍两种禁用PHP执行的方法:使用`PHP_diseval_extension`禁用和通过`suhosin`禁用。由于`suhosin`不支持PHP8,仅适用于PHP7及以下版本,若服务器安装了PHP5.6,则需对应安装`suhosin-0.9.38`版本。文章提供了详细的安装步骤,并强调了宝塔环境下与普通环境下的PHP路径差异。安装完成后,在`php.ini`中添加`suhosin.so`扩展并设置`executor.disable_eval = on`以禁用执行功能。最后通过测试代码验证是否成功禁用,并重启`php-fpm`服务生效。
57 2
|
4月前
|
分布式计算 Ubuntu Hadoop
在Ubuntu 16.04上如何在独立模式下安装Hadoop
在Ubuntu 16.04上如何在独立模式下安装Hadoop
41 1
|
5月前
|
消息中间件 Linux 数据库
OpenStack Centos7 T版本搭建
OpenStack Centos7 T版本搭建
264 15
下一篇
DataWorks