Hadoop入门系列(三) Centos7的基本配置

前言准备

这些基本配置是每台虚拟机刚下完都要检查的,不仅仅是为了安装hadoop而做准备,用于其他方面也一样

1.VMware Tools的安装

VMware Tools的安装配置

2. 共享文件夹

虚拟机>设置

centos7怎么安装systemd centos7怎么安装hadoop_java


选项下的共享文件夹,改成总是启用,并添加一个文件夹

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_02


centos7怎么安装systemd centos7怎么安装hadoop_java_03


完成后就可以了,下面我们在虚拟机中找到它

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_04


就在mmt当中

centos7怎么安装systemd centos7怎么安装hadoop_centos_05

centos7怎么安装systemd centos7怎么安装hadoop_java_06


如果消失了就用这个命令

sudo vmhgfs-fuse /mnt/hgfs/

3. 赋予hadoop用户sudo权限

[hadoop@HadoopMaster ~]$ su
密码:
[root@HadoopMaster hadoop]# gedit /etc/sudoers

在打开的文件中找到下面这行,把自己创建的用户加入
这里我创建的用户是hadoop, 所以我就加了一行hadoop ALL=(ALL) ALL

下面显示的格式是sh ,可以在gedit打开文件后自行修改显示样式,默认的是matlab形式

centos7怎么安装systemd centos7怎么安装hadoop_java_07


保存并退出即可

4. 配置主机名与ip映射

[hadoop@HadoopMaster ~]$ sudo vim /etc/hosts

这里建议注释上面两行,在下面加上一行
格式是自己虚拟机的ip 与 虚拟机的主机名

centos7怎么安装systemd centos7怎么安装hadoop_centos_08


可以自己测试一下能不能ping通

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_09

基本配置

完成了之前的几步操作,接下来就可以进行CentOS的其他配置了

网络环境配置

1.关闭防火墙与SELinux

在Hadoop安装过程中需要关闭防火墙和SELinux,否则会出现异常。防火墙是隔离内
外网、过滤非法数据的有力屏障,正确使用防火墙可以确保系统的网络安全。然而在Hadoop
安装过程中需要关闭防火墙和SELinux,否则会出现异常。以hadoop用户身份登录进行系统,在终端中执行以下命令关闭SELinux和防火墙

sudo  systemctl  stop  firewalld      #停止防火墙服务
sudo  systemctl  disable firewalld     #关闭防火墙开机自动启动
sudo  sed  -i  's/SELINUX=enforcing/SELINUX=disabled/'  /etc/selinux/config #关闭SELinux
grep  SELINUX=disabled  /etc/selinux/config     #检查配置是否已修改
sudo  setenforce  0                           #停止SELinux
firewall-cmd --state 		# 查看默认防火墙状态

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_10


centos7怎么安装systemd centos7怎么安装hadoop_大数据_11

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_12

2.jdk安装与环境配置

首先移除系统自带的jdk

rpm -qa | grep java
sudo yum remove java-1.*

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_13

然后把事先准备好的文件上传到虚拟机中
/mnt/hgfs/emjoy这里我就用到了虚拟文件夹

cd /mnt/hgfs/emjoy
sudo  rpm  -ivh  ~/jdk-8u172-linux-x64.rpm  #安装JDK1.8

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_14


配置环境变量

cat << EOF | sudo tee  /etc/profile.d/jdk.sh > /dev/null

以上命令执行后出现">"提示后,输入的文件内容

export JAVA_HOME=/usr/java/default
export JRE_HOME=${JAVA_HOME}/jre
export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib 
export PATH=${PATH}:${JAVA_HOME}/bin
EOF
source  /etc/profile.d/jdk.sh  #使配置立即生效

输入java -version查看是否成功,如下,输入下面的信息,就说明java的安装成功

centos7怎么安装systemd centos7怎么安装hadoop_centos_15

3.ssh无密码验证配置

Hadoop是通过SSH来启动和管理各个DataNode上的各种守护进程的,节点之间不需
要输入密码就可以执行指令,故我们需要配置SSH无密码公钥验证。

ssh-keygen  -t  rsa  -P ''  -f  ~/.ssh/id_rsa

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_16

centos7怎么安装systemd centos7怎么安装hadoop_java_17


使用下面的命令导入hadoop用户公钥

ssh-copy-id  hadoop@localhost

该命令的作用是将本地用户通过sshkeygen创建的公钥写入将要登录的远程系统上hadoop
用户的授权文件”~/.authorized_keys”中。凡是在拥有此授权文件中的一个公钥的
用户都可以以hadoop用户的身份无密码远程ssh登录系统。用下列命令可以查看授权文件
中的公钥信息。

验证无密钥登录

ssh  hadoop@localhost
或者
ssh localhost

不许要输入密码 就说明成功了
退出ssh 使用 exit命令或者快捷键CTRL+D

如果SSH无密码验证配置过程中有操作错误,可以执行以下命令删除与ssh密钥相关
的所有文件,然后再重新配置。

rm -rf ~/.ssh
4. 安装hadoop2.8.3系统
下载
cd  ~
curl   -O  \
http://mirrors.shu.edu.cn/apache/hadoop/common/hadoop-2.8.3/hadoop-2.8.3.tar.gz

centos7怎么安装systemd centos7怎么安装hadoop_大数据_18

安装
tar  xvf  ~/hadoop-2.8.3.tar.gz  -C  ~ #将安装包解包到主目录
sudo  mv  ~/hadoop-2.8.3  /usr/local/hadoop2  
mkdir  -p  /usr/local/hadoop2/tmp/dfs/{name,data}

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_19

环境变量

执行下列命令在/etc/profile.d目录下建立hadoop的环境变量配置文件hadoop2.sh 执行
第2条命令后,核对一下文件内容是否正确正确后再执行后续命令。

echo  'export HADOOP_HOME=/usr/local/hadoop2
export PATH=$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin
export HADOOP_MAPRED_HOME=${HADOOP_HOME}
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
export HADOOP_COMMON_HOME=${HADOOP_HOME}
export HADOOP_HDFS_HOME=${HADOOP_HOME}
export YARN_HOME=${HADOOP_HOME}
export HADOOP_COMMON_LIB_NATIVE_DIR=${HADOOP_HOME}/lib/native
export HADOOP_OPTS="-Djava.library.path=$HADOOP_HOME/lib"'  >  ~/hadoop2.sh
cat  ~/hadoop2.sh
sudo  mv  ~/hadoop2.sh  /etc/profile.d/
sudo  chown  root:root  /etc/profile.d/hadoop2.sh
source  /etc/profile.d/hadoop2.sh

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_20

检查安装是否成功**
hadoop  version

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_21

安装本地库

hadoop使用Java语言开发,但是一些需求和操作并不适合使用java语言处理,为了提
高性能就引入了本地库(c/编写的。安装本地库可以提高系统性能,但不安装系统也可以
正常工作,差别仅是性能稍低。执行以下命令安装本地库。

sudo yum install zlib snappy lz4 bzip2 openssl-libs openssl-devel  #安装本地库
cp  $HADOOP_HOME/lib/native/*  $HADOOP_HOME/lib/ #复制hadoop库到库目录下
hadoop  checknative  #检查本地库状态

若第3条命令的执行结果如下,既所有本地库的状态均显示为”说明本地库安装
成功。

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_22

5.配置 Hadoop2.8.3 伪分布式系统

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_23

tar -xvf ./hadoop2configfiles.tar -C /usr/local/hadoop2/etc/hadoop/

方法二是直接修改配置文件,请按以下方法修改

修改hadoop-env.sh文件
sed  -i  's/# export JAVA_HOME=/export JAVA_HOME=\/usr\/java\/default/g'  \
/usr/local/hadoop2/etc/hadoop/hadoop-env.sh

centos7怎么安装systemd centos7怎么安装hadoop_centos_24

修改core-site.xml文件

centos7怎么安装systemd centos7怎么安装hadoop_centos_25

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
    <property>
        <name>hadoop.tmp.dir</name>
        <value>file:/usr/local/hadoop2/tmp</value>
    </property>
</configuration>
修改hdfs-site.xml文件
<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>   
       <name>dfs.namenode.name.dir</name>   
       <value>file:/usr/local/hadoop2/tmp/dfs/name</value>   
    </property>   
    <property>   
       <name>dfs.datanode.data.dir</name>   
       <value>file:/usr/local/hadoop2/tmp/dfs/data</value>   
    </property>  
</configuration>

centos7怎么安装systemd centos7怎么安装hadoop_大数据_26

修改mapred-site.xml文件

centos7怎么安装systemd centos7怎么安装hadoop_java_27

<configuration>
    <property>     
       <name>mapreduce.framework.name</name>   
       <value>yarn</value>      
    </property> 
    <property>     
       <name>mapreduce.application.classpath</name>   
       <value>/usr/local/hadoop2/share/hadoop/mapreduce/*, /usr/lib/hadoop2/share/hadoop/mapreduce/lib/*</value>
    </property> 
</configuration>
修改yarn-site.xml文件
<configuration>
   <property>  
       <name>yarn.nodemanager.aux-services</name>  
       <value>mapreduce_shuffle</value>  
   </property>  
   <property>  
       <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name>  
       <value>org.apache.hadoop.mapred.ShuffleHandler</value>  
   </property> 
</configuration>

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_28

6.HDFS文件系统格式化和系统启动
格式化

执行以下命令进行格式化

cd  $HADOOP_HOME
bin/hdfs  namenode  -format

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_29

启动hadoop

执行以下命令启动系统

cd  $HADOOP_HOME
sbin/start-dfs.sh
sbin/start-yarn.sh

结果如下

centos7怎么安装systemd centos7怎么安装hadoop_hadoop_30


centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_31

查看结果

当输入jps后输出以下六个进程,就说明启动成功了

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_32

浏览器查看

进入虚拟机桌面,打开浏览器在地址栏输入“http://localhost:50070”后,如果能打开下
图NameNode的Web管理网页说明成功启动了Hadoop的NameNode,通过这个页面可以
查看Hadoop的HDFS文件系统的目录结构、存储的文件、系统日志及当前状态。

centos7怎么安装systemd centos7怎么安装hadoop_centos7怎么安装systemd_33


http://localhost:50070

centos7怎么安装systemd centos7怎么安装hadoop_大数据_34


http://localhost:8088

centos7怎么安装systemd centos7怎么安装hadoop_大数据_35

7.Hadoop系统的关闭

执行以下两条命令就可以关闭系统

cd  $HADOOP_HOME
sbin/stop-yarn.sh
sbin/stop-dfs.sh

特别提醒:如果启动了Hadoop,请在CentOS6操作系统关闭前务必关闭Hadoop系统,否则会损坏HDFS文件系统。