linux系统下hadoop的安装

目录

1.环境准备

2.linux中java环境的配置

3.hadoop的安装

3.1关闭防火墙

3.2配置主机名

3.3修改hosts文件

3.4配置免密登录

3.5配置hadoop

3.5.1解压hadoop

 3.5.2修改配置文件

3.5.3启动hadoop

3.5.4通过浏览器访问hadoop


hadoop简介:Hadoop是Apache提供的开源的海量数据离线处理框架,是最知名的大数据框架之一。最初来源Google的的三篇论文GFS、MapReduce、BigTable,设计者是Doug Cutting,当初hadoop设计的初衷是为了解决Nutch的海量数据存储和处理的需求,可以解决大数据场景下的数据存储和处理的问题。

话不多说,下面开始上菜

1.环境准备

linux系统,我的是阿里云CentOS7.3

jdk,我使用的是jdk-8u65-linux-x64,网盘下载地址:https://pan.baidu.com/s/1m2fnzBTx2Vradd-npOuDzg

hadoop包,我使用的是hadoop2.7,网盘下载地址:https://pan.baidu.com/s/1KyF5aVtf3KJ9EBxp7GFd_w

2.linux中java环境的配置

在linux系统的根目录下创建一个目录software(命令:mkdir /software),将jdk和hadoop上传到这个目录下

解压jdk,tar -zxvf jdk-8u65-linux-x64.tar.gz   然后使用mv命令将解压后的文件重命名为jdk1.8

输入 vim /etc/profile 打开文件

vim /etc/profile

在文件的最下方输入下面两条命令

export JAVA_HOME=/software/jdk1.8

export PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME=/software/jdk1.8
export PATH=$JAVA_HOME/bin:$PATH

按esc保存,按shift加冒号,之后输入!wq,保存退出

输入source /etc/profile使修改生效

source /etc/profile

然后输入java -version看有没有jdk版本信息,如果有的话,恭喜你java环境配置成功,如果没有,需要你重新配置一遍了

[root@aliyun01 ~]# java -version
java version "1.8.0_65"
Java(TM) SE Runtime Environment (build 1.8.0_65-b17)
Java HotSpot(TM) 64-Bit Server VM (build 25.65-b01, mixed mode)

3.hadoop的安装

首先上传hadoop到software文件目录下,

3.1关闭防火墙

阿里云防火墙默认是关闭的,

可以使用firewall-cmd --state 查看防火墙状态,若果没有关闭,使用systemctl stop firewall.service关闭防火墙

3.2配置主机名

为了操作方便,习惯配一下主机名

hostnamectl set-hostname 主机名

3.3修改hosts文件

127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6
172.16.41.97 aliyun01

上面ip和主机名改成你们自己的主机和ip

3.4配置免密登录

生成自己的公钥和私钥

输入ssh-keygen一路回车

[root@aliyun01 ~]# ssh-keygen
Generating public/private rsa key pair.
Enter file in which to save the key (/root/.ssh/id_rsa): 
/root/.ssh/id_rsa already exists.
Overwrite (y/n)? yes
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /root/.ssh/id_rsa.
Your public key has been saved in /root/.ssh/id_rsa.pub.
The key fingerprint is:
bb:2a:5f:2b:9f:44:ce:68:ab:ae:cf:4d:c5:e6:81:b5 root@aliyun01
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|        .        |
|       + .       |
|      . E        |
|       O o       |
|      + B        |
|   ..+.+ +       |
|  .+=+=+=        |
+-----------------+

将公钥拷贝到远程机器,$ ssh-copy-id [user]@[host]

[root@aliyun01 ~]# ssh-copy-id root@aliyun01
The authenticity of host 'aliyun01 (172.16.41.97)' can't be established.
ECDSA key fingerprint is 7a:57:4b:32:d8:ab:2b:c4:95:f4:67:c6:fd:4b:eb:6d.
Are you sure you want to continue connecting (yes/no)? yes
/usr/bin/ssh-copy-id: INFO: attempting to log in with the new key(s), to filter out any that are already installed
/usr/bin/ssh-copy-id: INFO: 1 key(s) remain to be installed -- if you are prompted now it is to install the new keys
root@aliyun01's password: 

Number of key(s) added: 1

Now try logging into the machine, with:   "ssh 'root@aliyun01'"
and check to make sure that only the key(s) you wanted were added.

3.5配置hadoop

3.5.1解压hadoop

tar -zxvf hadoop-2.7.1_64bit.tar.gz

 3.5.2修改配置文件

进入到hadoop的配置文件目录 hadoop2.7.1->etc->hadoop

(1)修改hadoop-env.sh

使用 vim hadoop-env.sh打开文件主要修改java_home的路径

在文件的25行 将export JAVA_HOME=${JAVA_HOME}修改成具体的路径

(2)修改core-site.xml

vim core-site.xml打开文件

配置namenode地址个,文件储存的位置

在configuration标签下添加如下配置


     
     fs.defaultFS
     hdfs://aliyun01:9000



     
     hadoop.tmp.dir
     /software/hadoop-2.7.1/tmp

注意:别忘了创建存放文件的tmp文件

(3)修改hdfs-site.xml

vim hdfs-site.xml 打开配置文件

因为配的是单机为分布式,所以要把副本数量改为1

添加如下配置


    
        
        
        dfs.replication                 
        1
    

(4)修改mapred-site.xml

复制目录下的mapred-site.xml.template

cp mapred-site.xml.template mapred-site.xml

配置mapreduce运行在yarn上,yarn是一种资源调度框架

vim mapred-site.xml打开文件


    
        
        mapreduce.framework.name
        yarn
    

(5)修改yarn-site.xml

指定yarn的老大resourcemanager的地址和NodeManager获取数据的方式

vim yarm-site.xml打开配置文件


    
        
        yarn.resourcemanager.hostname
        aliyun01
    
    
        
        yarn.nodemanager.aux-services
        mapreduce_shuffle
    

(6)修改slaves

将localhost改成你的主机名

(7)配置hadoop的环境变量

将HADOOP_HMOE=/software/hadoop-2.7.1  PATH=$PATH:$HADOOP_HOME/bin写入profile文件中

vim /etc/profile
export HADOOP_HOME=/software/hadoop-2.7.1
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
source /etc/profile

(8)格式化namenode

hdfs namenode -format

如果有输出Storage directory /tmp/hadoop-root/dfs/name has been successfully formatted就成功了
  

3.5.3启动hadoop

进入到sbin目录下

start-all.sh

如果有问题的话可以试着重启一下linux系统

启动后使用jps命令查看是不是有五个守护线程,分别是NameNode,DataNode,ResourceManager,Application,NodeManager,
SecondaryNameNode

3.5.4通过浏览器访问hadoop

hadoop启动成功后可以通过浏览器访问hadoop

http://[server_ip]:50070访问hadoop

如果访问不了,可能是服务器的50070端口被关闭了,通过sudo firewall-cmd --zone=public --add-port=50070/tcp --permanent打开

你可能感兴趣的:(hadoop)