新 手 版 Centos7 下 安 装 Hadoop2.7.6 单 机
本人刚开始安装的时候,看了很多篇的博客,跟着一步步做结果还是出现很多问题,主要是有的步骤、配置他们都没有解释清楚,这对于刚接触Linux系统的新手、小白来说,简直就是个巨坑。所有我特意在这里整理了一篇比较全面的博客,希望可以帮助没有多少基础的小伙伴快速地安装上Hadoop。
温馨提示: 再开始前,请确保,你的网络是连通的,否则在后面发现,就会变得麻烦。关于网络不通的问题
由于许多操作都需要root权限,最好用su命令提前进入root用户,或者在需要权限的操作前加上sudo
安装环境
#1 、Centos7
#2 、jdk1.8.0
#3 、Hadoop-2.7.6
#4 、SSH
一、安装jdk
由于centos7在安装的时候,默认安装了jdk,因此为方便,先卸载系统自带的jdk版,安装自己所需的jdk版本。
- 查看系统中的java版本;
[root@master ~]# java -version
结果如下
- 查看已安装的openjdk版本 ,用下面两条命令之一进行查看;
[root@master ~]# rpm -qa | grep java
[root@master ~]# rpm -qa | grep jdk
结果如下图
- 卸载系统自带的openjdk ,其中java-1.8.0-openjdk-devel是所卸载的文件名的唯一前缀,只需能和其他的文件名区别开就行;
[root@master ~]# rpm -e --nodeps java-1.8.0-openjdk-devel
注:
有的博客提到不带箭头的不要删掉,不过我在安装的过程中,没有遇到所说的带箭头的,我直接把列出来的文件都卸载了;
- 下载jdk压缩包,在这里总结了三种方法;
首先在根目录下创建一个文件夹,用于存放文件。
[root@master ~]# mkdir /opt
4.1、通过通过挂载命令mount,实现Linux和Windows文件互通, 共享文件夹,提取Windows系统中的文件;
由于篇幅有限,过段时间会在此处补上,或者给出相关的连接。
相关连接 此连接无效,后期补上,若是急需可在下方留言,望能略尽绵薄之力。
4.2、通过系统自带的 yum 工具进行安装;
由于篇幅有限,过段时间会在此处补上,或者给出相关的连接。
相关连接 此连接无效,后期补上,若是急需可在下方留言,望能略尽绵薄之力。
4.3、通过Linux安装好的图形化界面中的Firefox浏览器,下载到本地文件夹。
JDKl下载连接在以上四个中,根据自己的情况进行下载,我下的是Linux系统64位的(X86代表32位系统,X64为64位系统)。
将下载好的压缩包文件移到opt目录下
进入jdk压缩包所在的下载目录
[demo@demo ~]$ cd 下载
将jdk压缩包移到opt目录下
[demo@demo 下载]$ sudo mv jdk-8u211-linux-x64.tar.gz /opt
将jdk安装到opt目录下
[demo@demo ~]$ cd /opt/
[demo@demo opt]$ sudo rpm -ivh --prefix=/opt jdk-8u211-linux-x64.rpm
安装成功后会出现下图方框中的文件夹
- 配置java环境变量 ,;
修改系统配置文件profile;
[demo@demo opt]$ sudo vi /etc/profile
在文件末尾添加或修改为以下内容
说明1:/opt/jdk1.8.0_211-amd64 为jdk安装解压路径
说明2:export PATH=PATH 为必要设置, 不必更改
export JAVA_HOME=/opt/jdk1.8.0_211-amd64
export PATH=$JAVA_HOME/bin:$PATH
结果如下图设置成功后,输入下列命令,是配置文件生效。
[demo@demo opt]$ source /etc/profile
- 进行验证
输入下列命令之一查看是否有内容
[demo@demo opt]$ java -version
如图所示
二、关闭防火墙
此操作也可于第一步做
- 关闭防护墙,;
[demo@demo opt]$ systemctl stop firewalld.service
- 禁止防火墙开机启动,;
[demo@demo opt]$ Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service.
[demo@demo opt]$ Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service.
三、安装Hadoop
- 下载Hadoop压缩包,;
步骤同,jdk压缩包下载,此处省略具体步骤
将其解压到/opt目录下
[demo@demo opt]$ tar -zxvf hadoop-2.7.6.tar.gz -C /opt/
解压后得到如下图所示文件夹
- 在根目录下创建文件夹,用于存放Hadoop的压缩包和解压后文件;
[demo@demo opt]$ mkdir software
- 修改Hadoop环境变量,;
修改profile文件
[demo@demo opt]$ vim /etc/profile
修改或添加以下内容:
export HADOOP_HOME=/opt/hadoop-2.7.6
export PATH=$PATH:$HADOOP_HOME/bin
使配置文件生效
[demo@demo opt]$ source /etc/profile
- 修改Hadoop配置文件,;
配置文件所在目录的绝对路径为:/opt/hadoop-2.7.6/etc/hadoop/
- <1>、-配置hadoop-env.sh,;
[demo@demo opt]$ sudo vim /opt/hadoop-2.7.6/etc/hadoop/hadoop-env.sh
在# The java implementation to use.下面添加或修改为:
export JAVA_HOME=/opt/jdk1.8.0_45
<2>、-配置core-site.xml,;
其中,192.168.162.131为虚拟机ip,不能设置为localhost,如果用localhost,后面在windows上用saprk连接服务器(虚拟机)上的hive会报异常(win读取的配置也是localhost,这样localhost就为win本地ip了~也可以给ip加个映射,不过因为单机的我就没加)。
[demo@demo opt]$ sudo vim /opt/hadoop-2.7.5/etc/hadoop/core-site.xml
将其中内容修改为:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>file:///opt/hadoop-2.7.6</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.162.131:8888</value>
</property>
</configuration>
<3>、-配置hdfs-site.xml,;
[demo@demo opt]$ sudo vim /opt/hadoop-2.7.5/etc/hadoop/hdfs-site.xml
将其中内容修改为:
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.namenode.name.dir</name>
<value>file:///opt/hadoop-2.7.6/tmp/dfs/name</value>
</property>
<property>
<name>dfs.datanode.data.dir</name>
<value>file:///opt/hadoop-2.7.6/tmp/dfs/data</value>
</property>
</configuration>
四、SSH免密登录
此过程需要open所示安装包
- 安装openssh,系统自带可自行跳过;
[demo@demo opt]$ sudo yum install openssh -y
- 生成ssh密码对,;
<1>、为了使生成的文件在root目录下,先进入root用户
[demo@demo opt]$ su
<2>、进行秘密对生成
[root@demo opt]$ ssh-keygen -t rsa -P ""
注:输入后,一直回车,直至秘密对生成即可;
- 将id_dsa.pub追加到授权的key中,;
[root@demo opt]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
- 设置授权key权限,参数0600或600;
[root@demo opt]$ chmod 0600 ~/.ssh/authorized_keys
- 测试ssh连接,首次测试会进行询问,输入yes即可;
[root@demo opt]$ ssh localhost
退出登录
启动
[root@demo opt]$ exit
再次登录,输入命令后直接登录成功
[root@demo opt]$ ssh localhost
五、测试
- 格式化hdfs,;
[root@demo opt]$ cd /opt/hadoop-2.7.6
[root@demo opt]$ ./bin/hdfs namenode -format
出现询问,输入yes即可
启动
[root@demo opt]$ ./sbin/start-dfs.sh
在浏览器中输入http://192.168.162.131:50070 进行验证
结果如下图停止
[root@demo opt]$ ./sbin/stop-dfs.sh