赞
踩
右键目标虚拟机---->管理---->克隆---->
点击完成
打开网络适配器---->点击高级---->
多点击几次生成,使之主从不同的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 节 点
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
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:$PATH
cd /usr/local/hadoop/etc/hadoop
workers配置内容为----------指定datanode
vim ./workers
最好把datanode和master不要配置一起,datanode配置Slave,提高集群高可用性
故次文件内容写Slave,若有其他从节点,写入即可
vim ./core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://Master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>file:/usr/local/hadoop/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
</configuration>
<configuration> <property> <name>dfs.namenode.secondary.http-address</name> <value>Master:50090</value> </property> <property> <name>dfs.replication</name> <value>2</value> </property> <property> <name>dfs.namenode.name.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/name</value> </property> <property> <name>dfs.datanode.data.dir</name> <value>file:/usr/local/hadoop/tmp/dfs/data</value> </property> <property> <name>dfs.namenode.http-address</name> <value>Master:50070</value> </property> </configuration>
<configuration> <property> <name>mapreduce.framework.name</name> <value>yarn</value> </property> <property> <name>mapreduce.jobhistory.address</name> <value>Master:10020</value> </property> <property> <name>mapreduce.jobhistory.webapp.address</name> <value>Master:19888</value> </property> <property> <name>yarn.app.mapreduce.am.env</name> <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value> </property> <property> <name>mapreduce.map.env</name> <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value> </property> <property> <name>mapreduce.reduce.env</name> <value>HADOOP_MAPRED_HOME=/usr/local/hadoop</value> </property> </configuration>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>Master</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
**配置好上述后接下来---------------谨慎操作
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/hadoop
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
Copyright © 2003-2013 www.wpsshop.cn 版权所有,并保留所有权利。