当前位置: 首页 > news >正文

Hadoop环境快速搭建《简单无脑步骤版》

目录

一、初始准备:

二、环境搭建:

1.修改第二台和第三台主机的IP和主机名

2.用Xftp传入JDK和hadoop安装包,并安装

Ⅰ、先删除centos7上自带的openJDK:

Ⅱ、安装JDK并配置JAVA环境

Ⅲ、安装Hadoop并配置环境

Ⅳ、host文件配置,免密登入

Ⅴ、文件传输以及剩余两台机子的环境配置

Ⅵ、hadoop集群启动和HDFS,YARN集群的UI信息状态查询


一、初始准备:

1.linux虚拟机一台,克隆两台后修改hostname和ip地址再按下列步骤操作(或者创建三个虚拟机,在初始安装界面设置好ip地址和hostname,笔者这里采用第一种)。

2.linux联网,采用NAT模式,可以ping通。(不会安装和连不上网的自寻搜索)

3. ——》资源下载地址

二、环境搭建:

IP地址              主机名

192.168.1.111 bigdata111    #第一台主机
192.168.1.112 bigdata112   #第二台主机
192.168.1.113 bigdata113   #第三台主机

1.修改第二台和第三台主机的IP和主机名

创建好第一台bigdata111主机后,克隆出两个主机,然后都开启连接上网络并打开第二台主机的终端。

su root
hostname  查看主机名
vim /etc/hostname  修改主机名
ip addr/ifconfig  查看主机IP
cd /etc/sysconfig/network-scripts
vi ifcfg-ens33 修改网络配置文件:

将BOOTPROTO=dhcp改为static
ONBOOT=NO改为yes
IPADDR=192.168.1.112
NETMASK=255.255.255.0
GATEWAY=192.168.80.2  #到编辑里面打开虚拟网络编辑器然后找到NAT模式点击NAT设置就可以看到网关,这个需要和虚拟机的网关保持一致
DNS1=8.8.8.8

systemctl restart network
ip addr或者ifconfig  查看是否修改成功
同理在bigdata113主机上进行主机名和IP地址的修改

改IP地址后,Xshell连不上的原因是虚拟机的子网和改的IP不在同一频道上

2.用Xftp传入JDK和hadoop安装包,并安装

Ⅰ、先删除centos7上自带的openJDK:

方法一:
rpm -qa | grep java 查询java软件
sudo rpm -e 软件包  卸载不要的JDK
which java 查看JDK路径
rm -rf JDK路径  手动删除,最后把profile配置信息删除
方法二:
yum list installed | grep java  查看linux上自带的JDK
yum -y remove java-1.8.0-openjdk*   删除所有自带的JDK
yum -y remove tzdata-java.noarch

Ⅱ、安装JDK并配置JAVA环境

mkdir -p /export/data
mkdir -p /export/servers
mkdir -p /export/software

Xftp把上面的两个安装包传入到/export/software文件夹中
tar -zxvf /export/software/jdk-8u181-linux-x64.tar.gz -C /export/servers/
cd /export/servers
mv jdk1.8.0_181 jdk 

vi /etc/profile
#tip:在配置文件末尾追加
export JAVA_HOME=/export/servers/jdk
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
source /etc/profile
java -version

Ⅲ、安装Hadoop并配置环境

tar -zxvf /export/software/hadoop-2.7.2.tar.gz -C /export/servers/
vi /etc/profile    (shift+G快速到文件末尾)

#tip:在文件末尾追加
export HADOOP_HOME=/export/servers/hadoop-2.7.2
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

source /etc/profile
hadoop version
cd /export/servers/hadoop-2.7.2/etc/hadoop/


vi hadoop-env.sh
#tip:找到相应位置,添加这段话
export JAVA_HOME=/export/servers/jdk


vi core-site.xml
#tip:下图中乱码部分为注释代码,可以删掉,不影响
<configuration>
    <!--用于设置Hadoop的文件系统,由URI指定-->
    <property>
        <name>fs.defaultFS</name>
        <!--用于指定namenode地址在hadoop01机器上-->
        <value>hdfs://bigdata111:9000</value>
    </property>
    <!--配置Hadoop的临时目录,默认/tem/hadoop-${user.name}-->
    <property>
        <name>hadoop.tmp.dir</name>
        <value>/export/servers/hadoop-2.7.2/tmp</value>
    </property>
</configuration>


vi hdfs-site.xml
<configuration>
    <!--指定HDFS的数量-->
    <property>
        <name>dfs.replication</name>
        <value>3</value>
    </property>
    <!--secondary namenode 所在主机的IP和端口-->
    <property>
        <name>dfs.namenode.secondary.http-address</name>
        <value>bigdata112:50090</value>
    </property>
</configuration>
cp mapred-site.xml.template mapred-site.xml
vi mapred-site.xml
<configuration>
    <!--指定MapReduce运行时的框架,这里指定在YARN上,默认在local-->
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>


vi yarn-site.xml
<configuration>
    <!--指定YARN集群的管理者(ResourceManager)的地址-->
    <property>
        <name>yarn.resourcemanager.hostname</name>
        <value>bigdata111</value>
    </property>
    <property>
        <name>yarn.nodemanager.aux-services</name>
        <value>mapreduce_shuffle</value>
    </property>
</configuration>


#tip:将文件中的localhost删除,添加主节点和子节点的主机名称
#tip:如主节点bigdata111,bigdata1112和bigdata113
vi slaves
bigdata111
bigdata112
bigdata113

Ⅳ、host文件配置,免密登入

配置host文件,每个主机都要
vi /etc/hosts

192.168.1.111 bigdata111
192.168.1.112 bigdata112
192.168.1.113 bigdata113

scp /etc/hosts bigdata112:/etc/hosts
scp /etc/hosts bigdata113:/etc/hosts

在windows下打开C:\Windows\System32\drivers\etc\host,在桌面创建一个host文件不带后缀,然后把原本windows下的host文件复制到桌面的hosts文件里在最后加上上面/etc/hosts写入的,最后覆盖时候会提示文件重复,管理员权限继续覆盖即可。

免密登入(这个过程每次主机都要完整执行一次,共三次)
ssh-keygen -t rsa
cd /root
ll -a
cd .ssh/
ssh-copy-id bigdata111
ssh-copy-id bigdata112
ssh-copy-id bigdata113

ssh bigdata112/ssh bigdata111 看看是否能互通

Ⅴ、文件传输以及剩余两台机子的环境配置

在bigdata111上传输两个安装包给112和113    
scp /export/software/jdk-8u181-linux-x64.tar.gz bigdata112:/export/software/
scp /export/software/jdk-8u181-linux-x64.tar.gz bigdata113:/export/software/
scp /export/software/hadoop-2.7.2.tar.gz bigdata112:/export/software/
scp /export/software/hadoop-2.7.2.tar.gz bigdata113:/export/software/

分别在112和113上安装两个包
tar -zxvf /export/software/jdk-8u181-linux-x64.tar.gz -C /export/servers/
tar -zxvf /export/software/hadoop-2.7.2.tar.gz -C /export/servers/

传输111的环境变量文件给112和113
scp /etc/profile bigdata112:/etc/profile
scp /etc/profile bigdata113:/etc/profile
scp -r /export/ bigdata112:/
scp -r /export/ bigdata113:/

#tip:返回bigdata112和bigdata113节点执行下面命令,使环境变量生效
source /etc/profile
然后在112和113上java -version和hadoop version查看是否安装成功

Ⅵ、hadoop集群启动和HDFS,YARN集群的UI信息状态查询

hdfs namenode -format
start-dfs.sh
start-yarn.sh
jps(只能查java编写的进程)
systemctl stop firewalld.service    #关闭防火墙
systemctl disable firewalld.service  #关闭防火墙开机启动

通过UI界面查看Hadoop运行状态,在Windows系统下,访问http://bigdata111:50070,查看HDFS集群状态,在Windows系统下,访问http://bigdata111:8088,查看Yarn集群状态

在JPS中找到DataNode的PID,然后kill -9 PID(DataNode),因为集群的心跳机制,10分钟后可以看到HDFS上面出现一个Dead Nodes 死亡节点,即可达到验证。

 

 

 

 

 

 

相关文章:

  • TypeScript 高级类型
  • vulnhub BTRSys: v2.1
  • mysql使用小记--group_concat()、sum()
  • SpringBoot学习笔记(五)IOC
  • 微信、QQ防撤回
  • RKMPP库快速上手--(三)MPP解码入门
  • torch.nn.interpolate—torch上采样和下采样操作
  • DBCO-PEG-OPSS/OPSS-PEG-DBCO/二苯并环辛炔聚乙二醇修饰邻吡啶二硫
  • SpringCloud与SpringCloudAlibaba的比较
  • PostgreSQL修炼之道笔记之准备篇(四)
  • Springboot整合Redis集群实战详解
  • 聚乙烯亚胺偶联乳清白蛋白/肌白蛋白/豆清白蛋白/蓖麻蛋白/豌豆白蛋白1b ( PA1b)科研试剂
  • (附源码)流浪动物保护平台的设计与实现 毕业设计 161154
  • springBoot整合SqlSessionTemplate使用
  • jieba—第三方中文分词函数库
  • [分享]iOS开发-关于在xcode中引用文件夹右边出现问号的解决办法
  • 230. Kth Smallest Element in a BST
  • CSS 提示工具(Tooltip)
  • JAVA_NIO系列——Channel和Buffer详解
  • k个最大的数及变种小结
  • magento 货币换算
  • Spring Security中异常上抛机制及对于转型处理的一些感悟
  • Vue小说阅读器(仿追书神器)
  • Vue学习第二天
  • vue自定义指令实现v-tap插件
  • Webpack4 学习笔记 - 01:webpack的安装和简单配置
  • 从0搭建SpringBoot的HelloWorld -- Java版本
  • 第三十一到第三十三天:我是精明的小卖家(一)
  • 使用agvtool更改app version/build
  • 怎么将电脑中的声音录制成WAV格式
  • Spark2.4.0源码分析之WorldCount 默认shuffling并行度为200(九) ...
  • 宾利慕尚创始人典藏版国内首秀,2025年前实现全系车型电动化 | 2019上海车展 ...
  • (javascript)再说document.body.scrollTop的使用问题
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (附源码)spring boot基于小程序酒店疫情系统 毕业设计 091931
  • (四)docker:为mysql和java jar运行环境创建同一网络,容器互联
  • (算法)前K大的和
  • (五) 一起学 Unix 环境高级编程 (APUE) 之 进程环境
  • (小白学Java)Java简介和基本配置
  • (译) 理解 Elixir 中的宏 Macro, 第四部分:深入化
  • (转)IOS中获取各种文件的目录路径的方法
  • (转)程序员技术练级攻略
  • ../depcomp: line 571: exec: g++: not found
  • .【机器学习】隐马尔可夫模型(Hidden Markov Model,HMM)
  • .net on S60 ---- Net60 1.1发布 支持VS2008以及新的特性
  • .NET 自定义中间件 判断是否存在 AllowAnonymousAttribute 特性 来判断是否需要身份验证
  • .NET/C# 的字符串暂存池
  • .net流程开发平台的一些难点(1)
  • /etc/skel 目录作用
  • ??eclipse的安装配置问题!??
  • @Mapper作用
  • @SuppressWarnings注解
  • @WebService和@WebMethod注解的用法
  • [ 常用工具篇 ] POC-bomber 漏洞检测工具安装及使用详解
  • [.NET 即时通信SignalR] 认识SignalR (一)