大数据环境搭建(1)- cdh方式安装hadoop集群

 

一、前言

由于线下测试的需要,需要在公司线下(测试)环境搭建大数据集群。

那么CDH是什么?

hadoop是一个开源项目,所以很多公司再这个基础上进行商业化,不收费的hadoop版本主要有三个,分别是:

(1)Apache,最原始的版本,所有发行版均基于这个版本进行改进

缺点:版本部署混乱,部署过程繁杂,升级过程繁杂,兼容性差,安全性差

(2)CDH版本,在Apache基础上,进行了封装,处理了不同版本的兼容问题。有用户管理界面

(3)Hotnowork版本。

由于公司测试环境的内存有限(8G),cloudera manager需要大量的内存运行服务,所以这里我们选择cdh的tar包安装的方式

二、集群准备

 至少三台linux机器,我的配置是:

Linux软件版本:Red Hat Enterprise Linux Server release 6.8 (Santiago)

硬件配置:8核 8G内存120G磁盘空间

一下操作三台机器都需要

(1)所有的安装包都在普通用户下安装,所以要新增一个用户:

useradd hadoop

passwd hadoop

(2)设置普通用户hadoop的sudo权限(root用户)

chmod u+w /etc/sudoers

vi /etc/sudoers

(在首行加入)

hadoop ALL=(root)NOPASSWD:ALL

chmod u-w /etc/sudoers

(3)修改主机名(切换到普通hadoop用户)

sudo vi /etc/sysconfig/netword

(修改:)

HOSTNAME=hadoop001

(其他两台机器修改为hadoop002,hadoop003)

(4)Ip与主机名的映射

sudo vi /etc/hosts

(最末尾加入)

hadoop001 10.7.131.1

hadoop002 10.7.131.2

hadoop003 10.7.131.3

(5)关闭防火墙

sudo service iptables stop
sudo chkconfig iptables off
(6)禁用Ipv6
sudo vi /etc/sysconfig/selinux
(修改为其中的选项)
SELINUX=disabled
(7)设置文件打开数量和用户最大进程数
sudo vi /etc/security/limits.conf
(最末尾加上)
* soft nofile 65535
* hard nofile 65535
* soft nproc 32000
* hard nproc 32000
(8)配置机器和集群之间的无密码访问
在三台机器上生成密钥
ssh-keygen -t rsa
一路回车即可
 
cp ~/.ssh/id_rsa.pub ~/.ssh/authorized_keys
分别配置三台机器两两之间的无密码登录
在hadoop001上:
ssh-copy-id hadoop002
ssh-copy-id hadoop003
验证:
ssh hadoop002
ssh hadoop003
其他两台机器同理
(9)集群时间同步
选择hadoop001作为时间服务器
sudo vi /etc/ntp.conf

第一个红框处:

restrict 后面的变成机器的网段,比如目前的机器ip是10.7.131.1,那么就填入10.7.131.0

第二个红框处:

注释掉原来的

第三个红框处:

去掉两行注释

 

sudo vi /etc/sysconfig/ntpd

(首行加入)

SYNC_HWCLOCK=yes

启动ntpd服务

sudo service ntpd status

sudo service ntpd start

sudo chkconfig ntpd on

 

让hadoop001时间和国家授时中心保持同步(root用户)

 crontab -e
(加入)
0-59/5 * * * * sudo /usr/sbin/ntpdate -u ntp.api.bz
重启crond服务
service crond restart
 
最后,其他两台机器保持和hadoop001时间同步(root用户)
crontab -e
0-59/5 * * * * /usr/sbin/ntpdate hadoop001
 
(10)最后,重启三台机器
reboot
 

三、安装hadoop

1.目录准备

在hadoop用户目录下,规划好目录

app 应用软件安装的地方

software 应用软件包

shell 运行的脚本

data 所有的数据

 

1.下载hadoop 安装包

http://archive.cloudera.com/cdh5/cdh/5/

所有大数据组件都可以从这里下载到

打开,找到hadoop-2.6.0-cdh5.11.1.tar.gz,下载到本地,并上传到服务器上/home/hadoop/software下

2.解压

tar -zxvf /home/hadoop/software/hadoop-2.6.0-cdh5.11.1.tar.gz -C /home/hadoop/app/

mv /home/hadoop/software/hadoop-2.6.0-cdh5.11.1.tar.gz hadoop

3.hadoop各组件规划

4.配置

1.创建hadoop临时目录

mkdir -p /home/hadoop/app/hadoop/tmp

2.修改hadoop-env.sh

export JAVA_HOME=/home/hadoop/app/jdk

3.修改core-site.xml(/home/hadoop/app/hadoop/etc/hadoop)

<configuration>
  <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hadoop001:8020</value>
    </property>
  <property>
    <name>hadoop.tmp.dir</name>
    <value>/home/hadoop/app/hadoop/tmp</value>
    </property>
  <property>
    <name>fs.trash.interval</name>
    <value>4320</value>
    </property>
  <property>
	  <name>hadoop.proxyuser.hue.hosts</name>
	  <value>*</value>
  </property>
  <property>
    <name>hadoop.proxyuser.hue.groups</name>
    <value>*</value>
</property>
</configuration>

 3.修改hdfs-site.xml

<configuration>
  <property>
    <name>dfs.replication</name>
    <value>1</value>
  </property>
  <property>
    <name>dfs.namenode.secondary.http-address</name>
    <value>hadoop002:50090</value> </property> </configuration>

4.修改mapred-env.sh

同样是修改jdk

export JAVA_HOME=/home/hadoop/app/jdk

5.修改mapred-site.xml

<configuration>
  <property>
    <name>mapreduce.framework.name</name>
    <value>yarn</value>
  </property>
  <property>
    <name>mapreduce.jobhistory.address</name>
    <value>hadoop002:10020</value>
  </property>
  <property>
    <name>mapreduce.jobhistory.webapp.address</name>
    <value>hadoop002:19888</value>
</property> </configuration>

6.修改yarn-env.sh

if [ "$JAVA_HOME" != "" ]; then
  #echo "run java in $JAVA_HOME"
  JAVA_HOME=/home/hadoop/app/jdk
fi

7.修改yarn-site.xml

<configuration>
  <property>
    <name>yarn.resourcemanager.hostname</name>
    <value>hadoop002</value>
  </property>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>4096</value>
  </property>
  <property>
    <name>yarn.nodemanager.resource.cpu-vcores</name>
    <value>4</value>
  </property>
  <!--下面两个配置使日志聚集功能,使日志上传到hdfs上-->
  <property>
    <name>yarn.log-aggregation-enable</name>
    <value>true</value>
  </property>
  <property>
    <name>yarn.log-aggregation.retain-seconds</name>
    <value>640800</value>
  </property>
</configuration>

8.格式化hdfs文件系统

bin/hdfs namenode -format

9.启动hdfs

sbin/start-dfs.sh

10.验证

jps

11.启动yarn

sbin/start-yarn.sh

12.启动jobhistoryserver,运行oozie任务的时候,需要

sbin/mr-jobhistory-daemon.sh start historyserver

12.hdfs web界面访问

hadoop001:50070

13.yarn web界面访问

hadoop002:8088

  

  

  

猜你喜欢

转载自www.cnblogs.com/nicekk/p/9028341.html