Hadoop安装前准备环境

Hadoop版本信息

Hadoop是一款开源软件,并且开源社区比较活跃,所以Hadoop的版本也就比较多,主要三大版本:

  1. Apache Hadoop版本(社区版本)   迭代周期较短,更新较快,完全免费。

  2. Hortonworks数据平台  Hortonworks提供了高可用性支持、高性能的Hive ODBC驱动。

CDH信息 

  • DH (Cloudera's Distribution, including Apache Hadoop),是Hadoop众多分支中的一种,由Cloudera维护,基于稳定版本的Apache Hadoop构建,并集成了很多补丁,可直接用于生产环境。
  • Cloudera Manager则是为了便于在集群中进行Hadoop等大数据处理相关的服务安装和监控管理的组件,对集群中主机、Hadoop、Hive、Spark等服务的安装配置管理做了极大简化。
  • CDH版本hadoop的一个重要分支,这里测试使用hadoop-2.6.0-cdh5.13.0在单台CentOS配置hadoop伪分布式环境;

搭建环境

  1. 虚拟机操作系统: Centos7  64位
  2. JDK:1.8.0_65  64位
  3. hadoop-2.6.0-cdh5.13.0

基础环境配置

  1. 主机名:master.com
  2. IP地址:192.168.1.111
  3. 角色:NameNode、ResourceManager、SecondaryNameNode、DataNode、NodeManager
  4. 用户名:hadoop
  5. 密码:xxxxxxx

服务器安装准备

下载CentOS ISO文件:

http://mirrors.yun-idc.com/centos/7/isos/x86_64/CentOS-7-x86_64-Everything-1511.iso 

下载CDH-Hadoop文件:

http://archive.cloudera.com/cdh5/cdh/5/hadoop-2.6.0-cdh5.13.0.tar.gz

下载JDK包【tar】文件:

http://www.oracle.com/technetwork/java/javase/downloads/java-archive-javase8-2177648.html

下载MySQL文件:

Mysql rpm安装包:mysql-5.7.11-1.el7.x86_64.rpm-bundle.tar

http://dev.mysql.com/downloads/mysql/

Mysql驱动包:mysql-connector-java-5.1.38.zip 【存放/usr/share/java/

http://dev.mysql.com/downloads/file/?id=460363

普通用户添加root权限

  1. 使用root用户登录
  2. 进入到/etc目录
  3. 执行 chmod u+w /etc/sudoers 给sudoers文件增加write权限
  4. 执行vim sudoers 找到root ALL=(ALL) ALL                                                                                                                   这一行下面增加hadoop ALL=(ALL) ALL(注:hadoop为普通用户的用户名,中间的空格是Tab键)    
  5. 执行命令chmod u-w sudoers,撤销write权限。
  6. 登录hadoop用户,进行测试。                                                                                                                                      比如:sudo cd /root 如果成功进入 /root目录说明配置成功

修改主机名

注意:此处使用 hadoop 普通用户登录

临时修改主机名:

[hadoop@localhost ~]$ sudo hostname master.com

提示:当前生效,重启后失效。

永久修改主机名:

[hadoop@master ~]$ sudo vim /etc/sysconfig/network

添加内容:

NETWORKING=yes #使用网络 HOSTNAME=master.com #设置主机名

cdh 安装hadoop集群 cdh版本hadoop安装_CDH

配置静态IP

配置网络,使主机可以直接访问网络:

[hadoop@master ~]$ cd /etc/sysconfig/network-scripts/

cdh 安装hadoop集群 cdh版本hadoop安装_hadoop_02

修改:

BOOTPROTO=static #这里将dhcp换成ststic ONBOOT=yes #将no换成yes

添加:

IPADDR=192.168.1.111 #静态IP GATEWAY=192.168.1.1 #默认网关 NETMASK=255.255.255.0 #子网掩码

查看:

[hadoop@master network-scripts]$ sudo vim ifcfg-eno16777736

cdh 安装hadoop集群 cdh版本hadoop安装_CDH_03

重启网络服务:

[hadoop@master ~]$ service network restart

连接外网

首先确定已经连接上路由器,并且路由器能够访问外网,可以通过访问网关进行确定 

1、验证路由器是否连接外网【通过网关】

[hadoop@master network-scripts]$ ping 192.168.1.1

[hadoop@master network-scripts]$ ping 8.8.8.8

cdh 安装hadoop集群 cdh版本hadoop安装_Hadoop_04

2、验证是否设置了域名服务器

[hadoop@master ~]$ cat /etc/resolv.conf

cdh 安装hadoop集群 cdh版本hadoop安装_vim_05

3、将dns添加到该文件中

nameserver 202.98.96.68

nameserver 61.139.2.69

cdh 安装hadoop集群 cdh版本hadoop安装_hadoop_06

4、确保网关已设置

[hadoop@master ~]$ grep GATEWAY /etc/sysconfig/network-scripts/ifcfg*

cdh 安装hadoop集群 cdh版本hadoop安装_vim_07

5、确保可用dns解析 
[hadoop@master ~]$ grep hosts /etc/nsswitch.conf

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_08

6、测试

[hadoop@master ~]$ ping www.baidu.com

cdh 安装hadoop集群 cdh版本hadoop安装_Hadoop_09

添加主机名映射IP

1、配置Host

[hadoop@master network-scripts]$ sudo vim /etc/hosts

cdh 安装hadoop集群 cdh版本hadoop安装_vim_10

2、添加主机名对应的ip地址

192.168.1.111 master.com master

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_11

3、重启网络服务

[hadoop@master ~]$ service network restart

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_12

注意:通过ping 主机名可以返回对应的IP即可

cdh 安装hadoop集群 cdh版本hadoop安装_CDH_13

关闭防火墙&&Selinux

1、关闭防火墙

#  systemctl stop firewalld.service  #停止firewall

#  systemctl disable firewalld.service  #禁止firewall开机启动

#  firewall-cmd --state    #查看默认防火墙状态(关闭后显示not running,开启后显示running)

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_14

2、关闭selinux

#  vim /etc/selinux/config

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_15

修改:SELINUX=disabled

cdh 安装hadoop集群 cdh版本hadoop安装_vim_16

3、察看状态:

#  sestatus  

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_17

或     #   getenforce

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_18

配置无密码登录

1、检查是否安装 SSH

[hadoop@master .ssh]$ rpm -qa|grep ssh

cdh 安装hadoop集群 cdh版本hadoop安装_Hadoop_19

注意:如果返回的结果如上图所示,包含了 SSH client 跟 SSH server,则不需要再安装。

若需要安装,则可以通过 yum 进行安装(安装过程中会让你输入 [y/N],输入 y 即可):

[hadoop@master ~]$sudo yum install openssh-clients

[hadoop@master ~]$sudo yum install openssh-server

2、测试SSH安装是否可用

[hadoop@master ~]$ ssh master

cdh 安装hadoop集群 cdh版本hadoop安装_CDH_20

3、无密码登录

[hadoop@master ~]$ cd ~/.ssh

注意:若木有该目录,则先执行

[hadoop@master ~]$ ssh master

3.1 生成ssh秘钥:

[hadoop@master ~]$ ssh-keygen  -t  rsa  -P  ""

cdh 安装hadoop集群 cdh版本hadoop安装_vim_21

3.2 加入授权

[hadoop@master .ssh]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

3.3 修改权限

[hadoop@master .ssh]$ chmod 600 ~/.ssh/authorized_keys

3.4 验证

cdh 安装hadoop集群 cdh版本hadoop安装_hadoop_22

cdh 安装hadoop集群 cdh版本hadoop安装_vim_23

4、设置开启SSH服务

修改/etc/ssh/sshd_config,确保服务开启

vim /etc/ssh/sshd_config

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_24

去掉注释:

RSAAuthentication yes  # 启用 RSA 认证

PubkeyAuthentication yes  # 启用公钥私钥配对认证方式

AuthorizedKeysFile .ssh/authorized_keys  # 公钥文件路径(和上面生成的文件同)

cdh 安装hadoop集群 cdh版本hadoop安装_Hadoop_25

5、重启服务

#  /bin/systemctl restart  sshd.service

安装JDK

注意:使用普通用户 hadoop 登录

使用命令下载:

[hadoop@master ~]$ cd /home/hadoop

[hadoop@master ~]$ curl -o jdk-8u151-linux-x64.tar.gz http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz?AuthParam=1516091623_fa4174d4b1eed73f36aa38230498cd48

创建文件夹:

[hadoop@master ~]$ mkdir -p /home/hadoop/bigdater/softs

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_26

解压并创建链接:

[hadoop@master bigdater]$ tar -zxvf softs/jdk-8u65-linux-x64.gz

[hadoop@master bigdater]$ sudo ln -s /home/hadoop/bigdater/jdk1.8.0_65/ /usr/local/jdk

cdh 安装hadoop集群 cdh版本hadoop安装_CDH_27

配置相关环境变量 vim ~/.bash_profile

[hadoop@master ~]$ vim ~/.bash_profile

[hadoop@master ~]$ source ~/.bash_profile

添加:

#jdk export JAVA_HOME=/usr/local/jdk export CLASSPATH=.:$JAVA_HOME/lib export PATH=$JAVA_HOME/bin:$PATH

cdh 安装hadoop集群 cdh版本hadoop安装_cdh 安装hadoop集群_28

验证:

[hadoop@master ~]$ java -version

cdh 安装hadoop集群 cdh版本hadoop安装_CDH_29