进入系统后先配置网关与静态IP
使用命令来到网关配置文件地址来更改地址
cd /etc/sysconfig/network-network-scripts/ifcfg-ens33
不懂密令的直接上图:
继续下一层
继续
现在来到网关配置文件---使用vi ifcfg-ens33打开
设置完之后 EXC----shift+: 输入wq退出
退出后ping外网看是否ping通
之后在ping一下自己的本机IP查看是否ping内网通
恭喜成功完成静态IP
开始Hadoop搭建
设置每台主机名:hostnamectl set-hostname Hadoop1你想设置的主机名称
有几台搞几台,改成自己熟悉的名字方便区分集群
全部改完之后进入配置 vi /etc/hosts
添加集群地址及名字:
完成这一步后来生成ssh公钥: ssh-keygen
生成公钥后复制到hadoop2这台机器。达到免密操作
cd ~/.ssh可查看生成的ssh密钥。在.ssh目录执行ls命令会看到id_rsa和id-rsa.pub两个文件,第一个是私钥,第二个是公钥
然后操作ssh-copy-id -i ~/.ssh/id_rsa.pub 192.168.23.155
配置好后批量发给其他集群,对克隆的其他计算机都要发送hosts文件
完成之后,那么可以ping 计算机名称了
scp /etc/hosts root@hadoop2:/etc/hosts
写道这里就基本完成了。
JDK安装:
版本查看:getconf LONG_BIT
查看完版本建议直接去官网下载JDK我这里用到的是jdk8
我放在了自己的文件夹下。
直接解压tar -zxvf jdk-8u35.tar.gz
开始配置环境变量:cd /etc 到这个目录下看到这个文件夹用vi打开配置Java环境
vi profile进入之后在最下面开始配置
export JAVA_HOME=/home/Java/jdk1.8.0_351 #JAVA的安装路径
export JRE_HOME=$JAVA_HOME/jre
export PATH=$JAVA_HOME/bin:$PATH #命令搜索路径
export CLASSPATH=$JAVA_HOME/lib:$JRE_HOME/lib #类搜索路径
写完后保存退出
然后刷新文件夹source /etc/profile
之后输入:java -version查看版本
成功:
在做这一步的时候会报错
我这边查找是因为cenos7缺一个依赖导致只需要执行: sudo yum install glibc.i686
等他安装完毕就在执行Java -version就可以了到此JDK就完成配置了。
之后用ssh命令把配置好的Java环境同步到集群scp -r /home/Java/jdk1.8.0 192.168.23.4:/home/Java
切记配置好的配置文件也要传到hadoop2虚拟机里面
正式开始Hadoop:
官网下载Hadoop包之后放在自己的目录下直接解压
https://www.apache.org/dyn/closer.cgi/hadoop/common/hadoop-3.2.4/hadoop-3.2.4.tar.gz
配置一下hadoop环境变量
export HADOOP_HOME=/home/Hadoop/hadoop-3.2.4
export PATH=$PATH:$HADOOP_HOME/bin
export PATH=$PATH:$HADOOP_HOME/sbin
验证hadoop是否成功hadoop version
解压之后进入自己的hadoop包中注意路径哦!
cd /home/Hadoop/hadoop-3.2.4/etc/hadoop
进入之后需要编辑
先来编辑hadoop-env.sh
2. 配置core-site.xml
<configuration> <property> <name>fs.default.name</name> <value>hdfs://hadoop1:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/Hadoop/hadoop-3.2.4</value> </property> </configuration>
配置:hdfs-site.xml
<configuration> <property> <name>dfs.replication</name> <value>2</value>#数据副本数量,默认是3个 </property> <property> <name>dfs.namenode.http.address</name> <value>hadoop1:50070</value>#web地址 </property> <property> <name>dfs.permissions</name> <value>false</value> </property> </configuration>
配置:mapred-site.xml
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>hadoop1:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>hadoop1:19888</value> </property> </configuration>
配置:yarn-site.xml
<configuration> <!-- Site specific YARN configuration properties --> <property> <name>yarn.nodemanager.aux-services</name> <value>mapreduce_shuffle</value> </property> <property> <name>yarn.nodemanager.aux-services.mapreduce.shuffle.class</name> <value>org.apache.hadoop.mapred.ShuffleHandler</value> </property> <property> <name>yarn.resourcemanager.address</name> <value>hadoop1:8032</value> </property> <property> <name>yarn.resourcemanager.scheduler.address</name> <value>hadoop1:8030</value> </property> <property> <name>yarn.resourcemanager.resource-tracker.address</name> <value>hadoop1:8031</value> </property> <property> <name>yarn.resourcemanager.admin.address</name> <value>hadoop1:8033</value> </property> <property> <name>yarn.resourcemanager.webapp.address</name> <value>hadoop1:8088</value> </property> </configuration>
配置:slaves
配置:vi /etc/selinux/config
完成后同样直接同步到集群之后用ssh命令把配置好的Hadoop环境同步到集群scp -r /home/Hadoop/ 192.168.23.4:/home/Hadoop
配置文件同样。
做完以上步骤:初始化hadoop: hdfs namenode -format
初始化成功
如果初始化失败请一定要看报错,一般错误都是配置文件出现问题。
完成配置后一定要所有集群同步哦!
激动人心的时候来了:兄弟们群群!群起!群起!
进入 hadoop-3.2.4目录下的sbin来操作群起
啊奥!群起失败
这里需要修改四个配置文件
将start-dfs.sh,stop-dfs.sh两个文件顶部添加以下参数
HDFS_DATANODE_USER=root HADOOP_SECURE_DN_USER=hdfs HDFS_NAMENODE_USER=root HDFS_SECONDARYNAMENODE_USER=root
还有,start-yarn.sh,stop-yarn.sh顶部也需添加以下:
YARN_RESOURCEMANAGER_USER=root HADOOP_SECURE_DN_USER=yarn YARN_NODEMANAGER_USER=root
配置完之后宝贝:群起啦!
全部启动sbin/start-all.sh
也可以分开sbin/start-dfs.sh、sbin/start-yarn.sh
终止服务器:sbin/stop-all.sh
输入命令jps,可以看到相关信息
本机上用浏览器访问
(1)关闭防火墙systemctl stop firewalld.service
(2)浏览器打开http://192.168.23.155:8088/
(3)浏览器打开http://192.168.23.155:9870/
避免踩坑:注意3.0之前版本的hadoop的版本端口都是50070、只有3.0之后的版本才是9870
校验集群:文件测试
用第二台集群操作。 hdfs dfs -ls/
然后创建初始文件 :hdfs dfs -mkdir /hello_word
然后就可以看到
避坑