登录  | 加入社区

黑狼游客您好!登录后享受更多精彩

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

查看: 475|回复: 0

Hadoop3.1-端口变革及用户设置

[复制链接]

180

主题

180

帖子

0

现金

黑狼菜鸟

Rank: 1

积分
0
发表于 2018-12-24 14:43:33 | 显示全部楼层 |阅读模式 来自 香港
Hadoop3.x特性

根据官方change log先容,hadoop3.x的一些新的特性,部门如下:
1、最低支持JDK1.8。不再支持JDK1.7
2、Yarn Timeline版本升为2.0
3、高可靠支持凌驾2NameNode节点。假如设置3NameNode5JournalNode
4、默认端口变革,详细变革如下:
Namenode ports: 50470 --> 9871, 50070 --> 9870, 8020 --> 9820
Secondary NN ports: 50091 --> 9869, 50090 --> 9868
Datanode ports: 50020 --> 9867, 50010 --> 9866, 50475 --> 9865, 50075 --> 9864
更多变革,请拜见hadoop 3.x官方文档,地点为:
http://hadoop.apache.org/docs/r3.1.1/index.html


同时增长用户设置如下:
    
设置用户在hadoop3.0中必要指定用户

start-dfs.shstop-dfs.sh文件的头部增长:HDFS_NAMENODE_USER=root
HDFS_DATANODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_DATANODE_SECURE_USER=root
start-yarn.sh,stop-yarn.sh头部增长:
YARN_RESOURCEMANAGER_USER=root
YARN_NODEMANAGER_USER=root


详细过程:


Hadoop伪分布式安装与设置

Hadopp伪分布式,即在单机模式下运行Hadoop。在这种情况下,将运行一个NameNode历程和一个SecondaryNameNode历程,一个ResourceManager历程及一个NodeManager和一个DataNode历程。共5个历程。此中SecondaryNameNode用于资助NameNode举行日记和镜像文件的归并。ResourceManger用于处置惩罚MapReduce使命,它运行在yarn之上。NodeManager用于处置惩罚与DataNode的通讯和数据处置惩罚,DataNode用于存取数据。
伪分布式可以让读者快速的学习hdfs的下令及开辟Mapreduce应用。对于学习hadoop有很大的资助。
在安装之前,笔者有以下发起:
Ø 设置静态ip地点。固然是单机模式,但也发起设置静态的ip地点,这有助于以后设置集群情况时,养成精良的风俗。
Ø 修改主机名称serverXX,本机的ip地点为:192.168.56.51则可以修改本主机的名称为server51
Ø 由于启动hadoop的各个历程利用的是ssh。以是,必须要设置本机免暗码登录。本章背面的步调会讲到怎样设置ssh免暗码登录。
Ø 关闭防火墙。假如你的CentOS7没有安装防火墙,可以不消关闭了,假如已经安装了,请查抄防火墙的状态,假如是运行状态请关闭防火墙并禁用防火墙开机主动运行。
Ø 利用非root用户。笔者在写本书前看了许多其他的教程,这些教程大多以root用户做为操纵用户。但在真实的情况中,一样平常root用户只做一些特别的操纵。以是,笔者照旧发起利用非root用户。本书的作者为王健,以是,背面的操纵,都以weangjian做为操纵的用户。读者也可以本身创建一个用户。并将此用户添加到wheel组,以便于实行sudo下令。
1、设置静态IP地点

利用ssh登录CentOS7。然后利用ifconfig检察ip地点,假如没有ifconfig下令,可以利用sudo yum -y install net-tools安装ifconfig下令。实在在centOS7中,已经利用ip addr下令表现当前主机的ip地点。以是,你也可以不安装net-tools
$ ifconfig
enp0s3: flags=4163  mtu 1500
inet 10.0.2.15  netmask 255.255.255.0  broadcast 10.0.2.255
enp0s8: flags=4163  mtu 1500
inet 192.168.56.201  netmask 255.255.255.0  
上例表现为两块网卡,此中enp0s3ip地点为:10.0.2.15此网卡为NAT网络,用于上网。enp0s8ip地点为:192.168.56.51,此网卡为HostOnly网络,用于与宿主机举行通讯。我们要修改的就是enp0s8这个网卡,将它的ip地点设置为固定ip
ip设置生存在文件中,这个目次为:/etc/sysconfig/network-scripts/。利用cd下令,切换到这个目次下。利用ls表现这个目次下的全部文件,你大概只会发现:ifcfg-enp0s3这个文件,如今利用 cp下令将ifcfg-enp0s3拷贝一份为ifcfg-enp0s8
$ sudo cp ifcfg-enp0s3 ifcfg-enp0s8
利用vim下令修改为静态ip地点:
$ sudo vim ifcfg-enp0s8
将原来的dhcp修改成static即静态的地点,并设置详细的ip地点。此中,每一个网卡,都应该具有唯一的UUID,以是发起修改恣意的一个值,以便于与之前的enp0s3uuid差别。部门修改内容如下:
BOOTPROTO="static"
NAME="enp0s8"
UUID="d2a8bd92-cf0d-4471-8967-3c8aee78d101"
DEVICE="enp0s8"
IPADDR="192.168.56.51"
如今重新启动网络:
$ sudo systemctl restart network.service
由于重新启动网络,会修改ip地点,以是,在重新启动网络以后,必须要利用新的ip地点重新登录。(发起利用xshell长途登录)
ssh 192.168.56.51
2、修改主机名称

利用hostname下令,查抄当前主机的名称:
$ hostname
localhost
利用hostnamectl下令,修改主机的名称:
$ sudo hostnamectl set-hostname server51
重新查抄主机名称,可以发现,已经修改成了server51
3、设置hosts文件

hosts文件是当地DNS剖析文件。设置此文件,可以根据主机名找到对应的ip地点。
利用vi下令,打开这个文件,并在文件中追加以下设置:
$ sudo vim /etc/hosts
192.168.56.51server51
3、关闭防火墙

CentOS7默认环境下,没有安装防火墙。你你以通过下令sudo firewall-cmd --state 查抄防火墙的状态,假如表现 command not found一样平常为没有安装防火墙,此步可以忽略。以下下令查抄防火墙的状态:
#firewall-cmd --state
running
running表现,防火墙正在运行。以下下令用于制止和禁用防火墙:
#systemctl stop firewalld.service
#systemctl disable firewalld.service
4、设置当前用户免暗码登录本身

利用ssh登录另一台主机,必须要输入暗码,纵然登录当前主机也必须要输入暗码,查抄登录当前主机是否输入暗码:
# ssh server51
wangjian@server51's password:
正如上面表现的,假如提示输入暗码,则没有ssh免暗码登录。可以利用ssh-keygen下令天生公钥和私钥文件,并将公钥文件拷贝到被ssh登录的主机上。以下是ssh-keygen下令,输入以后直接按两次回车即可以天生公钥和私钥文件:
#ssh-keygen -t rsa
天生的公钥和私钥文件,将被放到~/.ssh/目次下。此中id_rsa文件为私钥文件,rd_rsa.pub为公钥文件。如今我们再利用ssh-copy-id将公钥文件发送到目的主机。由于是登录本机,以是,直接输入本本的名称即可:
#ssh-copy-id server51
此下令实行以后,会在~/.ssh目次下,多出一个用于认证的文件,此中生存了某个主机可以登录的公钥信息,这个文件为:~/.ssh/authorized_keys。假如读者感爱好,可以利用cat下令检察这个文件中的内容。
如今再利用ssh server51登录本机,你将发现,不消再输入暗码,即可以直接登录乐成。
5、安装和设置hadoop

hadoop的压缩包上传到目次/opt
解压到这个目次,利用tar下令:
#tar -zxvf /opt/hadoop-3.x.tar.gz -C /opt/
设置hadoop-env.sh文件

设置JAVA_HOME,在设置文件hadoop-env.sh文件中设置:
export JAVA_HOME=/usr/local/java/jdk1.8
设置core-site.xml文件

留意hadoop3.0以后hdfs的端标语发起为:9820

    
        fs.defaultFS
        hdfs://server51:9820
    
    
        hadoop.tmp.dir
        /opt/datas/tmp
    

设置hdfs-site.xml文件


    
        dfs.namenode.name.dir
        /opt/datas/dfs/nn
    
    
       dfs.datanode.data.dir
       /opt/datas/dfs/dn
    
    
       dfs.replication
       1
    
    
      dfs.namenode.checkpoint.dir
      /opt/datas/dfs/snn
    
    
        dfs.permissions.enabled
        false
    

设置mapred-site.xml文件

$ vim mapred-site.xml

    
        mapreduce.cluster.local.dir
        /opt/datas/mapred/local
    
    
        mapreduce.framework.name
        yarn
    

设置yarn-site.xml文件:


    
        yarn.resourcemanager.hostname
        server51
    
    
        yarn.nodemanager.local-dirs
        /opt/datas/nm-local-dir
    
    
        yarn.nodemanager.aux-services
        mapreduce_shuffle
    

通过hadoop classpath下令获取全部classpath的目次,然后设置到上述文件中:
利用hadoop classpath即可获取全部classpath
 

      yarn.application.classpath               

/opt/hadoop-3.x/etc/hadoop:/opt/hadoop-3.x/share/hadoop/common/lib/*:/opt/hadoop-3.x/share/hadoop/common/*:/opt/hadoop-3.x/share/hadoop/hdfs:/opt/hadoop-3.x/share/hadoop/hdfs/lib/*:/opt/hadoop-3.x/share/hadoop/hdfs/*:/opt/hadoop-3.x/share/hadoop/mapreduce/lib/*:/opt/hadoop-3.x/share/hadoop/mapreduce/*:/opt/hadoop-3.x/share/hadoop/yarn:/opt/hadoop-3.x/share/hadoop/yarn/lib/*:/opt/hadoop-3.x/share/hadoop/yarn/*

 
 
设置workers文件

这个文件在之前的版本叫做slaves,但功能一样。重要用于在启动时启动DataNodeNodeManager
server51
 
设置用户在hadoop3.0中必要指定用户

start-dfs.shstop-dfs.sh文件的头部增长:HDFS_NAMENODE_USER=root
HDFS_DATANODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root
HDFS_DATANODE_SECURE_USER=root
start-yarn.sh,stop-yarn.sh头部增长:
YARN_RESOURCEMANAGER_USER=root
YARN_NODEMANAGER_USER=root
 
 
6、设置hadoop情况变量

可以以独立的方式设置情况变量,只必要在/etc/profile.d/目次下创建一个sh文件即可。如许做的利益是文件相对比力独立。
$ sudo vim /etc/profile.d/hadoop.sh
并在内里添加以下内容:
#!/bin/sh
export HADOOP_HOME=/opt/hadoop-3.x
export PATH=.:$PATH:$HADOOP_HOME/bin
利用 source下令,让情况变量见效:
$source /etc/profile
然后利用hdfs version检察下令情况变量是否见效,假如设置乐成,则会表现hadoop的版本:
[wangjian@weric101 weric]$ hdfs version
Hadoop 3.x
7、初始化hadoop的文件体系

hadoop在利用之前,必须要先初始化hdfs文件体系,初始化的文件体系将会天生为hadoop.tmp.dir设置的目次下,即上面设置的/opt/hadoop_tmp_dir目次下。
$hdfs namenode -format
在实行下令完成以后,请在输出的日记中,找到:
Storage directory /opt/hadoop_tmp_dir/dfs/name has been successfully formatted.
这句话,即为初始化乐成。
8、启动hdfs和yarn

启动和制止hdfsyarne的脚本在$HADOOP_HOME/sbin目次下。此中start-dfs.sh为启动hdfs的脚本,start-yarn.sh为启动ResourceManager的脚本 。以下分另启动dfsyarn:
$ hadoop-3.x/sbin/start-dfs.sh
$ hadoop-3.x/sbin/start-yarn.sh
启动完成以后,通过jps来检察java历程快照,你会发现有五个历程正在运行:
$ jps
2608 NameNode
2737 DataNode
3505 Jps
2898 SecondaryNameNode
3156 NodeManager
3055 ResourceManager
此中:NameNodeSecondaryNameNodeDataNode是通过start-dfs.sh脚本启动的。ResourceManagerNodeManagerstart-yarn.sh脚本启动的。
在启动乐成以后,也可以通过 http://server51:9870检察namenode的信息,如图2.3.1示:
YWK2g16tPD70kOtC.jpg

 

2.3.1

可以通过http://192.168.56.101:8088检察mapreduce的信息,如图2.3.2所示:

kqbiwQEvs6pp6b00.jpg

 

2.3.2

至此,hadoop单机即伪分布式模式安装和设置乐成。但是万里长征,我们这才是小小的一步。以下将通过hadoophdfs下令,操纵hadoophdfs文件体系。





上一篇:在centos上安装go
下一篇:linuxcentos搭建javaweb
您需要登录后才可以回帖 登录 | 加入社区

本版积分规则

 

QQ|申请友链|小黑屋|手机版|Hlshell Inc. ( 豫ICP备16002110号-5 )

GMT+8, 2024-5-17 21:54 , Processed in 0.078530 second(s), 47 queries .

HLShell有权修改版权声明内容,如有任何爭議,HLShell將保留最終決定權!

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表