1.第一天完成vmware15.0的安装和CentOs 8.x ios源的下载。
2.以下遇到不能重写的文件 一律在期目录下,
打开终端(root权限下)chmod 777 (文件名)修改完成后
如不是特别需要不需要改回去,改回去可以chmod 644(文件名)。

centos7 单用户 lvm 命令 centos 8 单用户_vim


3.开始配置

1)点击编辑

centos7 单用户 lvm 命令 centos 8 单用户_hadoop_02


2)点击虚拟网络编辑

centos7 单用户 lvm 命令 centos 8 单用户_hadoop_03


3)修改VMnet8最下方的子网IP和子网掩码。点击DHCP设置

centos7 单用户 lvm 命令 centos 8 单用户_hadoop_04


4)终端打开 输入su - 进入root权限,root权限下输入

vim /etc/sysconfig/network-script/ifcfg-(你的网卡名)

centos7 单用户 lvm 命令 centos 8 单用户_vim_05


centos7 单用户 lvm 命令 centos 8 单用户_JAVA_06


centos7 单用户 lvm 命令 centos 8 单用户_hadoop_07


centos7 单用户 lvm 命令 centos 8 单用户_centos7 单用户 lvm 命令_08

主要修改内容:
BOOTPROTO=static
ONBOOT=yes

IPADDR=192.168.65.101
NETMASK=255.255.255.0
GATEWAY=192.168.65.2

DNS1=114.114.114.114
DNS2=8.8.8.8
最后,输入括号内(Ese:wq! )退出

5)hostnamectl set-hostname (要修改的主机名)
Etc:hostnamectl set-hostname handoop100

6)关闭防火墙和自启动
systemctl status firewalld
systemctl stop firewalld
systemctl disable firewalld.service

7)检查网络配置
Ping -c 3 www.baidu.com # ping三次百度看看丢包率
Ping -c 3 192.168.65.131 # ping 三次 刚才配置的主机ip

8)将自己添加到root组(root 权限下执行)
vim /etc/sudoers

9)安装Java jdk和handoop
CentOs8 可以直接下载配置环境

注:一定要记住安装或者解压在哪个地方 实在忘了输入(whereis java 或者 whereis hadoop 然后输入pwd到处目录 当然 which java 或者 which hadoop也可)

环境配置参考地址
Handoop

环境配置参考地址

export JAVA_HOME= /usr/lib/jvm/java-1.8.0-openjdk
 export HADOOP_HOME= /opt/software/hadoop
 export PATH=HADOOP_HOME/sbin:$HADOOP_HOME/bin
 (terminal
 /usr/bin/gnome-terminal)克隆操作 克隆3-8个虚拟机 并且逐个修改IP地址
 cd /etc/udev/rules.d
 chmod 777 TAB
 su
 vim /etc/udev/rules.d/文件名
 将最后一行名字改为master主机的网卡名
 Etc:ens33 或者 enth1二.改ipaddr
 vim /etc/sysconfig/network-script/ifcfg-(你的网卡名)三.改名字
 vi /etc/sysconfig/network

测试连通性:ping -c 192.168.65.103~107,如下表示成功,互ping一下检测连通性。

我做的时候先克隆了一个并且将网卡名改为ens33 后续只需要修改ip 也就是第二步

centos7 单用户 lvm 命令 centos 8 单用户_vim_09

四.再创建新用户(避免大规模root权限导致的错误问题)

useradd atguigu

passwd atguigu

配置atguigu用户具有root权限,在这里需要修改配置文件 /etc/sudoers

vi /etc/sudoers

(大家后面可能会发现 会给atguigu root 权限这不是多余了吗?其实并不一样。)

centos7 单用户 lvm 命令 centos 8 单用户_centos7 单用户 lvm 命令_10

atguigu 用户下 检查java -version和hadoop

出现问题:java能出现版本 hadoop不可以在非root权限下实现

1.解决办法:1)查看vim ~/.bashrc

2)检查hadoop环境,参考上述环境配置

3)环境配置完成后一定要记得运行source ~/.bashrc 使之生效。

4)最后chown -R atguigu /opt/software/hadoop/*

再检查,成功。

sudo nautilus

centos7 单用户 lvm 命令 centos 8 单用户_JAVA_11


centos7 单用户 lvm 命令 centos 8 单用户_hadoop_12

**#!/bin/bash 
#1 获取输入参数个数,如果没有参数,直接退出 
pcount=$# 
if((pcount==0)); then 
echo no args; 
exit; 
fi
#2 获取文件名称 
p1=$1 
fname=`basename $p1` 
echo fname=$fname 
#3 获取上级目录到绝对路径 
pdir=`cd -P $(dirname $p1); pwd` 
echo pdir=$pdir 
#4 获取当前用户名称 
user=`whoami` 
#5 循环,注意修改100 和 103的区间,根据自己的集群机器名来修改 
for((host=100; host<103; host++)); do 
echo ------------------- hadoop$host -------------- 
rsync -rvl $pdir/$fname $user@hadoop$host:$pdir 
Done**
[atguigu@hadoop100 bin]$ chmod 777 xsync 
[atguigu@hadoop100 bin]$ xsync /home/atguigu /bin # 测试脚本能不能成功运行

centos7 单用户 lvm 命令 centos 8 单用户_centos7 单用户 lvm 命令_13


centos7 单用户 lvm 命令 centos 8 单用户_hadoop_14


centos7 单用户 lvm 命令 centos 8 单用户_centos7 单用户 lvm 命令_15


Tips:可以在Master上编辑在用xsync将配置分发。

# core-site.xml
<property>
	<name>fs.defaultFS</name> 
	<value>hdfs://hadoop100:9000</value> 
</property> 

<!-- 指定Hadoop运行时产生文件的存储目录 --> 
	<property><name>hadoop.tmp.dir</name> 
	<value>/opt/module/hadoop/data/tmp</value> 
</property>

然后编辑hadoop-env.sh,添加JAVA路径

export JAVA_HOME=/opt/module/jdk1.8.0_144

然后编辑hdfs-site.sh

<property>
	<name>dfs.replication</name> 
	<value>3</value> 
</property> 

<!-- 指定Hadoop辅助名称节点主机配置 --> 
	<property> 
	<name>dfs.namenode.secondary.http-address</name> 
	<value>hadoop102:50090</value> 
</property>

然后编辑yarn-env.sh,添加JAVA路径

export JAVA_HOME=/opt/module/jdk1.8.0_144

然后编辑yarn-site.sh

<!-- Reducer获取数据的方式 --> 
	<property>
		<name>yarn.nodemanager.aux-services</name> 
		<value>mapreduce_shuffle</value> 
	</property> 
<!-- 指定YARN的ResourceManager的地址 --> 
	<property>
		<name>yarn.resourcemanager.hostname</name> 
		<value>hadoop101</value> 
	</property>

然后编辑mapered-env.sh,添加JAVA路径

export JAVA_HOME=/opt/module/jdk1.8.0_144

然后编辑mapered-site.xml

# 命令行输入
	 cp mapred-site.xml.template mapred-site.xml
	 vi mapred-site.xml
<!-- 指定MR运行在Yarn上 --> 
	<property>
		<name>mapreduce.framework.name</name> 
		<value>yarn</value> 
	</property>

单点集群:

第一步,检查vim /etc/hosts 每个机器都配好了主节点和各个分节点

centos7 单用户 lvm 命令 centos 8 单用户_hadoop_16


第二部:格式化主机hdfs namenode -format

第三步:主机进入hadoop目录 输入 hadoop-daemon.sh start namenode

第四步:在各机器上输入hadoop-daemon.sh start datanode

最后,访问:http://hadoop100:50070/dfshealth.html#tab-datanode

进行检查,出现下图成功。

centos7 单用户 lvm 命令 centos 8 单用户_JAVA_17


群起集群:

centos7 单用户 lvm 命令 centos 8 单用户_centos7 单用户 lvm 命令_18

[atguigu@hadoop100 hadoop-2.7.2]$ start-dfs.sh

centos7 单用户 lvm 命令 centos 8 单用户_centos7 单用户 lvm 命令_19


[atguigu@hadoop101 hadoop]$ start-yarn.sh

centos7 单用户 lvm 命令 centos 8 单用户_vim_20


通过访问http://hadoop100:50070/检查一下hdfs是否成功启用

centos7 单用户 lvm 命令 centos 8 单用户_vim_21


通过访问http://hadoop103:8088/检查Yarn(如果你的resource 是其他就要改101为你的resource)

三.云平台的应用
模拟终端通过udp传输数据到hadoop进行本地保存,以及对文本数据的统计。
我放在github了,需要自行下载。先运行server端,在运行另一个。