搭建Hadoop高可用集群

搭建Hadoop高可用集群,第1张

搭建Hadoop高可用集群

Hadoop数据分析项目“环境搭建”
  • 环境要求
  • 搭建步骤
    • 打开vmvare,将一个主节点虚拟机,克隆两台从节点虚拟机
    • 点击Slave
    • **下载hadoop,jdk等
    • **将hadoop改名**
    • **更改环境配置**
    • **Master节点配置Hadoop信息**
    • 修改core-site.xml
    • 修改hdfs-site.xml
    • 修改文件mapred-site.xml
    • 修改文件 yarn-site.xml
    • Master主节点执行**
    • **Slave从节点执行如下命令**
    • 接着修改从节点环境变量
    • 可能有同学看了好多教程,好多没有配置从节点的环境变量 接下来我就来为大家解释与解答
    • **Master主节点格式化namenode**
    • 配置完成
    • 编写查看所有节点的脚本
    • **恭喜:成功~~**

环境要求
  1. centos7
  2. vmware
  3. Hadoop3.1.3
  4. jdk1.8.0_162
  5. 主节点ip地址192.168.74.10 (注意:ip地址要根据自己需求,本教程略)
  6. 从节点ip地址192.168.74.11
搭建步骤 打开vmvare,将一个主节点虚拟机,克隆两台从节点虚拟机

右键目标虚拟机---->管理---->克隆---->



点击完成

点击Slave


打开网络适配器---->点击高级---->

多点击几次生成,使之主从不同的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

**下载hadoop,jdk等

运用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:$PATH 
Master节点配置Hadoop信息

cd /usr/local/hadoop/etc/hadoop

workers配置内容为----------指定datanode

vim ./workers

最好把datanode和master不要配置一起,datanode配置Slave,提高集群高可用性
故次文件内容写Slave,若有其他从节点,写入即可

修改core-site.xml

vim ./core-site.xml


        
                fs.defaultFS
                hdfs://Master:9000
        
        
                hadoop.tmp.dir
                file:/usr/local/hadoop/tmp
                Abase for other temporary directories.
        

修改hdfs-site.xml

        
                dfs.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
           


修改文件mapred-site.xml

        
                mapreduce.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-site.xml

        
                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/hadoop
Slave从节点执行如下命令
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搭建完成后,经常会因为某些 *** 作会有主从节点不匹配的问题,但是,我们要求配置高可用的集群。这些问题网上好多方法就是格式化主节点,并不高效,并且繁琐。而我们可以运用更加简便的方法----------------------手动启动从节点
这也就是为什么我们要配置从节点的环境变量的原因

Master主节点格式化namenode

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

恭喜:成功~~

欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5690167.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-17

发表评论

登录后才能评论

评论列表(0条)

保存