1. 使用CDH部署hadoop环境
1.1. 什么是hadoop?
Hadoop是一个由Apache基金会所开发的分布式系统基础架构。
用户可以在不了解分布式底层细节的情况下,开发分布式程序。充分利用集群的威力进行高速运算和存储。
Hadoop实现了一个分布式文件系统(Hadoop Distributed File System),简称HDFS。HDFS有高容错性的特点,并且设计用来部署在低廉的(low-cost)硬件上;而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序。HDFS放宽了(relax)POSIX的要求,可以以流的形式访问(streaming access)文件系统中的数据。
Hadoop的框架最核心的设计就是:HDFS和MapReduce。HDFS为海量的数据提供了存储,则MapReduce为海量的数据提供了计算。
1.2. 什么是CDH(Cloudera's Distribution, including Apache Hadoop)?
现如今,企业和大型机构在寻求解决棘手的大数据问题时,往往会使用开源软件基础架构Hadoop的服务。由于Hadoop深受客户欢迎,许多公司都推出了各自版本的Hadoop,也有一些公司则围绕Hadoop开发产品。在Hadoop生态系统中,规模最大、知名度最高的公司则是Cloudera。
1. CDH的优点
版本划分清晰 版本更新速度快 支持Kerberos安全认证 文档清晰 支持多种安装方式(Cloudera Manager方式)
2. CDH安装方式
Cloudera Manager Yum Rpm Tarball
3. 本次安装使用的是5.4.3版本,CDH下载地址
CDH5.4 http://archive.cloudera.com/cdh5/ Cloudera Manager5.4.3: http://www.cloudera.com/downloads/manager/5-4-3.html
下载cdh parcel,三个文件如下图:
下载CDH管理包cloudera-manager-el6-cm5.4.3_x86_64.tar.gz如下图:
1.3. 环境准备
1) 首先创建四台虚拟机,要求硬盘15G,hadoop001内存3G以上,其他的1G以内。
2) 系统设置:配置ip,dns,主机名,hosts,swappiness,关闭 SELINUX,关闭防火墙,调整时区,开启ntp服务,安装jdk,配置环境变量reboot重启机器。
修改/etc/hosts:
192.168.153.171 hadoop001
192.168.153.172 hadoop002
192.168.153.173 hadoop003
192.168.153.174 hadoop004
修改/proc/sys/vm/swappiness
echo 10 >/proc/sys/vm/swappiness
关闭防火墙
设置时区
开启ntp并校正时间。
安装配置jdk
修改/etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_80
export PATH=$JAVA_HOME/bin:$PATH
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
说明:swappiness,Linux内核参数,控制换出运行时内存的相对权重。swappiness参数值可设置范围在0到100之间。 低参数值会让内核尽量少用交换,更高参数值会使内核更多的去使用交换空间。默认值为60(参考网络资料:当剩余物理内存低于40%(40=100-60)时,开始使用交换空间)。对于大多数操作系统,设置为100可能会影响整体性能,而设置为更低值(甚至为0)则可能减少响应延迟。
vi /etc/sysconfig/network
vi /etc/sysconfig/network-scripts/ifcfg-eth0
删除网卡配置文件
rm -rf /etc/udev/rules.d/70-persistent-net.rules
重启服务器
3) 配置ssh免密码登录
ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
scp /root/.ssh/id_dsa.pub root@192.168.153.172:/root/.ssh/
scp /root/.ssh/id_dsa.pub root@192.168.153.173:/root/.ssh/
scp /root/.ssh/id_dsa.pub root@192.168.153.174:/root/.ssh/
三台机器分别
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
测试
4) 在hadoop001上安装mysql,并启动,配置开机自启,配置用户名密码。
设置root用户的密码为chenjian
必须在mysql数据库下
use mysql;
update user set password=passworD("chenjian") where user='root';
让所有hadoop001能访问mysql使用密码chenjian
grant all privileges on *.* to 'root'@'hadoop001' identified by 'chenjian' with grant option;
让所有的机器能访问mysql使用密码chenjian
grant all privileges on *.* to 'root'@'%' identified by 'chenjian' with grant option;
flush privileges;
5) 下载安装依赖包(hadoop001)
yum -y install chkconfig python bind-utils psmisc libxslt zlib sqlite cyrus-sasl-plain cyrus-sasl-gssapi fuse portmap fuse-libs redhat-lsb
至此,我们的CDH安装的第一步,安装环境算是配置成功了,下一步就是开始安装,敬请期待!
本文暂时没有评论,来添加一个吧(●'◡'●)