- 环境要求
- 搭建步骤
- 打开vmvare,将一个主节点虚拟机,克隆两台从节点虚拟机
- 点击Slave
- **下载hadoop,jdk等
- **将hadoop改名**
- **更改环境配置**
- **Master节点配置Hadoop信息**
- 修改core-site.xml
- 修改hdfs-site.xml
- 修改文件mapred-site.xml
- 修改文件 yarn-site.xml
- Master主节点执行**
- **Slave从节点执行如下命令**
- 接着修改从节点环境变量
- 可能有同学看了好多教程,好多没有配置从节点的环境变量 接下来我就来为大家解释与解答
- **Master主节点格式化namenode**
- 配置完成
- 编写查看所有节点的脚本
- **恭喜:成功~~**
- centos7
- vmware
- Hadoop3.1.3
- jdk1.8.0_162
- 主节点ip地址192.168.74.10 (注意:ip地址要根据自己需求,本教程略)
- 从节点ip地址192.168.74.11
右键目标虚拟机---->管理---->克隆---->
点击完成
打开网络适配器---->点击高级---->
多点击几次生成,使之主从不同的mac地址
注:本次讲解的是net网络模式,非网桥网络模式
打开Slave,Master同时打开
更改从节点的网络配置
注:本次主节点ip设置192.168.74.10
从节点ip设置192.168.74.11
开始配置从节点
vim /etc/sysconfig/network-scripts/ifcfg-ens33
1.注释掉uuid
2.修改IPADDR如下
重启网络
service network restart
如果报错网络重启false时,尝试如下 *** 作 输入service NetworkManager stop 再service network restart 根据提示到相应目录开启 如果上述方式为解决:请返回上一步。尝试注释掉主从节点的uuid。
主从节点分别创建Hadoop用户
user hadoop
passwd hadoop 根据提示输入密码
切换用户 su - hadoop
注意 不加 “ -
”可能无法切换环境变量(切换用户失败,env命令查看当前user),切换用户尽可能加-
主节点hadoop设置权限
sudo vim /etc/sudoers
vi/vim查看文本快捷键
到底部快捷键 G
到达底部将root一行的下面对应添加一个hadoop
从节点同理
:wq!保存退出
增加主从节点的映射–主节点输入
sudo vim /etc/hosts
修改配置如下,主节点和从节点一样 *** 作,对应映射ip地址,直接在打开文件的下方加入信息,其他信息不用动,两个节点内容要保持一致
:wq! 保存退出
修改主机名–和上一步对应,主节点设置Slave,从节点设置Master
sudo vim /etc/hostname
删除文档内容,然后定义Master,Slave
要和ip地址对应
重启虚拟机即可看到用户
此时如果
ping Slave -c 3
ping Master -c 3
如果输入命令都可以ping通就没有问题,继续进行下面步骤
设置免密登陆
master节点执行如下
cd ~/.ssh
ssh localhost rm ./id_rsa* #如果搭建过删除之前公钥
ssh-keygen -t rsa #一直按回车即可
cat ./id_rsa.pub >> ./authorized_keys
完成后可以执行命令“ssh Master”来验证一下,可能会遇到提示信息,只要输入yes即可,测试成功后,请执行“exit”命令返回原来的终端。
接下来,在Master节点将上公匙传输到Slave1节点:
scp ~/.ssh/id_rsa.pub hadoop@Slave:/home/hadoop/
===============================================
接下来Slave节点执行命令如下
mkdir ~/.ssh
cat ~/id_rsa.pub >> ~/.ssh/authorized_keys
rm ~/id_rsa.pub
上述 *** 作一定要细心,很容易出错,且重复配置容易出错
上述步骤执行完,验证是否成功,master节点执行
ssh Slave
效果如下
exit退出
Master节点
ssh Master
Slave 节 点
**下载hadoop,jdk等ssh Slave
运用xshell,将其包导入/software**
由于,百度云链接容易下架,小伙伴如果没有资源,请私信我。
解压包到/usr/local下
tar -zxvf hadoop-3.1.3.tar.gz -C /usr/local/ tar -zxvf
jdk-8u162-linux-x64.tar.gz -C /usr/local
进入/usr/local
将hadoop改名cd /usr/local
更改环境配置mv ./hadoop/ hadoop
sudo vim ~/.bashrc
下述 *** 作注意路径匹配,错一点就会出问题
空白位置写下
export JAVA_HOME=/usr/local/jdk1.8.0_162 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin export PATH=$HADOOP_HOME/bin:$SPARK_HOME/bin:$PATHMaster节点配置Hadoop信息
cd /usr/local/hadoop/etc/hadoop
workers配置内容为----------指定datanode
vim ./workers
最好把datanode和master不要配置一起,datanode配置Slave,提高集群高可用性
故次文件内容写Slave,若有其他从节点,写入即可
vim ./core-site.xml
修改hdfs-site.xmlfs.defaultFS hdfs://Master:9000 hadoop.tmp.dir file:/usr/local/hadoop/tmp Abase for other temporary directories.
修改文件mapred-site.xmldfs.namenode.secondary.http-address Master:50090 dfs.replication 2 dfs.namenode.name.dir file:/usr/local/hadoop/tmp/dfs/name dfs.datanode.data.dir file:/usr/local/hadoop/tmp/dfs/data dfs.namenode.http-address Master:50070
修改文件 yarn-site.xmlmapreduce.framework.name yarn mapreduce.jobhistory.address Master:10020 mapreduce.jobhistory.webapp.address Master:19888 yarn.app.mapreduce.am.env HADOOP_MAPRED_HOME=/usr/local/hadoop mapreduce.map.env HADOOP_MAPRED_HOME=/usr/local/hadoop mapreduce.reduce.env HADOOP_MAPRED_HOME=/usr/local/hadoop
yarn.resourcemanager.hostname Master yarn.nodemanager.aux-services mapreduce_shuffle
**配置好上述后接下来---------------谨慎 *** 作
Master主节点执行**cd /usr/local sudo rm -r ./hadoop/tmp # 删除 Hadoop 临时文件 sudo rm -r ./hadoop/logs/* # 删除日志文件 tar -zcf ~/hadoop.master.tar.gz ./hadoop # 先压缩再复制 tar -zcf ~/jdk.master.tar.gz ./jdk1.8.0_162 cd ~ scp ./hadoop.master.tar.gz Slave:/home/hadoop scp ./jdk.master.tar.gz Slave:/home/hadoopSlave从节点执行如下命令
sudo rm -r /usr/local/hadoop # 删掉旧的(如果存在) sudo rm -r /usr/local/jdk1.8.0_162 sudo tar -zxf ~/hadoop.master.tar.gz -C /usr/local sudo tar -zxf ~/jdk.master.tar.gz -C /usr/local sudo chown -R hadoop /usr/local/hadoop sudo chown -R hadoop /usr/local/jdk1.8.0_162接着修改从节点环境变量
vim ~/.bashrc
空白位置输入
export JAVA_HOME=/usr/local/jdk1.8.0_162 export JRE_HOME=${JAVA_HOME}/jre export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib export PATH=${JAVA_HOME}/bin:$PATH export PATH=$PATH:/usr/local/hadoop/bin:/usr/local/hadoop/sbin可能有同学看了好多教程,好多没有配置从节点的环境变量 接下来我就来为大家解释与解答
当我们的Hadoop搭建完成后,经常会因为某些 *** 作会有主从节点不匹配的问题,但是,我们要求配置高可用的集群。这些问题网上好多方法就是格式化主节点,并不高效,并且繁琐。而我们可以运用更加简便的方法----------------------手动启动从节点
这也就是为什么我们要配置从节点的环境变量的原因
配置完成hdfs namenode -format
开启集群
start-dfs.sh
主节点和从节点分别输入jps如下
cd /usr/bin
vim jpsall
输入如下内容
#!/bin/bash # 执行jps命令查询每台服务器上的节点状态 echo ======================集群节点状态==================== for i in Master Slave do echo ====================== $i ==================== ssh hadoop@$i '/usr/local/jdk1.8.0_162/bin/jps' done echo ======================执行完毕====================
:wq!保存后下一步
sudo chmod 777 jpsall
接着输入jpsall
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)