大数据hadoop集群的搭建及配置(三台)

Hadoop知识点

配置集群前的规划(提前写在记事本上)

  1. 确定三台的ip

  2. 找到三台虚拟机的MAC地址

  3. 给三台虚拟机起什么名字

  4. 最好在根目录下(/)建一个目录export,里面建立两个目录(servers存放解压后的软件,software存放从windows传来的压缩包)

    在这里插入图片描述

网络配置

配置各个服务器的网络,相互之间能ping通,而且外网也可以ping通

  1. 主机名的修改,默认都是localhost,把HOSTNAME改一下,三台可以分别改为hadoop01、hadoop02、hadoop03,注意:三台都要改(改后重启才会生效)

    vim /etc/sysconfig/network
    

在这里插入图片描述

  1. 配置IP映射(三台都要配置,ip在虚拟机DHCP设置里找)

    vi /etc/hosts
    

    在这里插入图片描述

  2. 修改虚拟网卡配置文件,配置网卡设备的MAC地址(删除多余的网卡 name改为eth0 MAC地址要对应)(三台机子都要改)

    vi /etc/udev/rules.d/70-persistent-net.rules
    
  3. 修改IP地址文件,设置静态IP(三台机子都要改)

    vim /etc/sysconfig/network-scripts/ifcfg-eth0
    

    在这里插入图片描述

  4. 几个名词的解释:

    ONBOOT=yes 表示启动这块网卡

    BOOTPROTO=static 表示静态路由协议,可以保持IP固定

    HWADDR 表示虚拟机MAC地址,需要与当前虚拟机MAC地址一致

    IPADDR 表示虚拟机的IP地址,这里设置的IP地址要与前面IP映射配置时的IP地址一致,否则无法通过主机名找到对应IP

    GATEWAY 表示虚拟机网关,通常都是255.255.255.0

    NETMASK 表示虚拟机子网掩码,通常都是255.255.255.0

    DNS1 表示域名解析器,此处采用谷歌提供的免费DNS服务器8.8.8.8(也可设置为PC端电脑对应的DNS)

  5. 最后重启

  6. 然后自己可以试一下机子与机子之间能不能ping通,外网能不能ping通,如果都可以的话,那表示你就成功了

一.免密配置

生成秘钥

ssh-keygen -t rsa  

分享秘钥给三个虚拟机,自己也要分享,注意三台虚拟机要分别和其他还有自身分享秘钥,秘钥都要生成

ssh-copy-id hadoop01
ssh-copy-id hadoop02
ssh-copy-id hadoop03

二.jdk和hadoop的安装以及环境变量的配置

针对SecureCRTPortable,xshell这款软件可安装rz来进行windows和虚拟机之间文件的传输,当然xftp也可以

//安装传输软件指令
yum install lrzsz -y
//安装完成后可使用rz指令弹出传输页面
rz

传输java的jdk后

解压缩到servers
tar -zxvf jdk-8u161-linux-x64.tar.gz -C /export/servers/

把名字改为jdk

mv jdk1.8.0_161/ jdk  

配置环境变量

第一步

//用vi编辑器进入etc/profile
vi /etc/profile

第二步

在这里插入图片描述

第三步

//生效环境配置
source /etc/profile

第四步验证

在这里插入图片描述

传输hadoop后

解压缩到servers
tar -zxvf hadoop-2.7.4.tar.gz -C /export/servers/

三.配置hadoop环境变量

第一步

//用vi编辑器进入etc/profile
vi /etc/profile

第二步 在最下面添加如下图,后面hadoop-2.7.4是我的hadoop版本,你要根据你自己的hadoop名字添加哦!!

在这里插入图片描述

第三步

//生效环境配置
source /etc/profile

第四步验证

在这里插入图片描述

修改配置文件

四.6个文件 : 2个小的 4个大的(/export/servers/hadoop-2.7.4/etc/hadoop)

注:这六个文件都在解压安装后hadoop下

1.两个小的:
  1. 设置hadoop运行环境(修改hadoop-env.sh,如下图)
    地址:/export/servers/hadoop-2.7.4/etc/hadoop(但这是我的,要根据你的实际情况)
    在这里插入图片描述

  2. 配置slaves

    vi /export/servers/hadoop-2.7.4/etc/hadoop/slaves
    

    在这里插入图片描述

    注意: 这相当于是一份对于DN的白名单,只有在白名单里面的主机才能被NN识别。
    配置了这个之后,就能排除阿猫阿狗的DN了。
    其实slaves文件里不一定要写主机名,最终的都是通过IP来判断,完全可以写一个IP就行。

    ​ hadoop3.0以后slaves更名为workers了

2.四个大的
  1. core-site.xml

    改文件是Hadoop的核心配置文件,其目的是配置HDFS地址、端口号,以及临时文件目录。

    <configuration>
    	<!--用于设置Hadoop的文件系统,有URL指定-->
    	<property>
    		<name>fs.defaultFS</name>
    		<!--用于指定namenode地址在hadoop01机器上-->
    		<value>hdfs://hadoop01:9000</value>
    	</property>
    	<!--配置Hadoop的临时目录,默认/tmp/hadoop-${user.name}-->
    	<property>
    		<name>hadoop.tmp.dir</name>
    		<value>/export/servers/hadoop-2.7.4/tmp</value>
    	</property>
    </configuration>
    
  2. hdfs-site.xml

    <configuration>
    	<!--指定HDFS副本的数量-->
    	<property>
    		<name>dfs.replication</name>
    		<value>3</value>
    	</property>
    	<!--secondary namenode所在主机的IP和端口-->
    	<property>
    		<name>dfs.namenode.secondary.http-address</name>
    		<value>hadoop02:50090</value>
    	</property>
    </configuration>
    
  3. mapred-site.xml

    <configuration>
    	<!--指定MapReduce运行时框架,这里指定在YARN上,默认是local-->
    	<property>
    		<name>mapreduce.framework.name</name>
    		<value>yarn</value>
    	</property>
    </configuration>
    
  4. yarn-site.xml

    <configuration>
    	<!-- Site specific YARN configuration properties -->
    	<!--指定YARN集群的管理者(ResourceManager)的地址-->
    	<property>
    		<name>yarn.resourcemanager.hostname</name>
    		<value>hadoop01</value>
    	</property>
    	<property>
    		<name>yarn.nodemanager.aux-services</name>
    		<value>mapreduce_shuffle</value>
    	</property>
    	
    	<property>
        	<!--定义NodeManager上要提供正在运行的容器的全部可用资源大小-->
    		<name>yarn.nodemanager.resource.memory-mb</name>
    		<value>2048</value>
    	</property>
    	
    	<property>
        	<!--资源管理器中分配给每个容器请求的最小内存限制-->
    		<name>yarn.scheduler.minimum-allocation-mb</name>
    		<value>2048</value>
    	</property>
    	
    	<property>
    		<!--NodeManager可以分配的CPU核数-->
    		<name>yarn.nodemanager.resource.cpu-vcores</name>
    		<value>1</value>
    	</property>
    </configuration>
    

    **注意:**在后面Hadoop集群的配置和启动时,可能会出现如NodeManager进程无法启动或者启动后自动结束的情况,此时可以查看Hadoop解压包目录中logs下的日志文件,主要原因是因为系统内存和资源分配不足。(添加在yarn-site.xml的13~30行)

五.启动和测试hadoop

1. hdfs namenode-format
2. start-dfs.sh
3. start-yarn.sh
//查看进程
    jps
//问题:格式化失败时,需要删除三台机子的临时文件
    1.先关闭hadoop  stop-dfs.sh   stop-yarn.sh
	2.进入到/export/servers/hadoop-2.7.4/tmp
	3.执行rm -rf *

六.每台机子的进程

hadoop01hadoop02hadoop03
NodeManagerJpsDataNode
DataNodeDataNodeNodeManager
ResourceManagerSecondaryNameNodeJps
JpsNodeManager
NameNode

感谢看完,我还是一个小菜鸟,如果有错误和瑕疵的地方,欢迎来交流学习哦!!!

评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值