hadoop分布式集群搭建,包含网络配置-hadoop3环境
先准备三台或者五台虚拟机(我这里写三台,实际我用的五台)
在安装centos时可以在选择(最小安装还是图形化界面处)有配置网络的,把网络先配置好,这样就不需要在重新配置了
先配置一台主机,后两台克隆即可,我这里搭建的主机用的图形化界面,从节点用的最小安装
ip和主机名
ip | 主机名 |
---|---|
192.168.228.138 | chun1 |
192.168.228.139 | chun2 |
192.168.228.140 | chun3 |
把 ip 主机名 写到/etc/hosts里,这里是映射,用来关联你的另外的机器。
ip与主机名根据自己情况定义,下面会讲ip地址怎么
echo '192.168.228.138 chun1' >>/etc/hosts
echo '192.168.228.139 chun2' >>/etc/hosts
echo '192.168.228.140 chun2' >>/etc/hosts
把每台对应的ip和主机名改掉
1- 改ip 进入
[root@chun1 /]# cd /etc/sysconfig/network-scripts/
1.1 ls查看目录
可以看到 ifcig-ens33文件,centos6与7不同,有的是ifcfig-etho,配置是一样的。vi编译此文件,来修改主机ip地址
BOOTPROTO=static
NAME=ens33
DEVICE=ens33
ONBOOT=yes
IPADDR=192.168.228.138 //这是你的主机ip
NETMASK=255.255.255.0 //这是你的子网掩码
GATEWAY=192.168.228.3 //这是你的网关
DNS1=192.168.228.3 //第一个DNS1与网关相同
DNS2=114.114.114.114 //第二个用114.114.114
然后讲怎么配置ip,子网掩码,网关。
到VMware界面
到此网络基本配置好了
1.2-更改主机名
分别在对应IP的主机中修改主机名:vi /etc/hostname
把localhost改成你的主机名
2配置ssh免密登录:
原理很简单,先在每台机器上生成秘钥,ssh-keygen -t rsa
,三次回车即可。然后把从节点/root/.ssh/id_rsa.pub发给主机,并改名,要不然会被覆盖
在chun2上执行:scp /root/.ssh/id_rsa.pub root@chun1:/root/.ssh/id_rsa.pub002
在chun3上执行:scp /root/.ssh/id rsa.pub root@chun1:/root/.ssh/id_rsa.pub003
然后在chun1中把三个id_rsa.pub加入到authorized_keys里
cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
cat /root/.ssh/id_rsa.pub002 >> /root/.ssh/authorized_keys
cat /root/.ssh/id_rsa.pub003 >> /root/.ssh/authorized_keys
然后把authorized_keys发给chun2,chun3,就可以实现三台互通
scp /root/.ssh/authorized_keys root@chun2:/root/.ssh/authorized_keys
scp /root/.ssh/authorized_keys root@chun3:/root/.ssh/authorized_keys
测试 --退出用exit
以下安装都是在master(chun1)上安装之后在发送
3.安装JDK
下载jdk1.8.0,官网下载即可,下载后解压,配置环境变量就行。(下载解压就不讲了)
我这里放在了/usr/local/java下java目录自己创建的
mkdir /usr/local/java
配置环境变量
vi /etc/profile
#在最后加上#JAVA
JAVA_HOME=/usr/local/java/jdk1.8.0_221 #解压后的jdk目录名称
JRE_JOME=/usr/local/java/jdk1.8.0_221/jre
CLASS_PATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar:$JRE_HOME/lib
PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin
export JAVA_HOME JRE_JOME CLASS_PATH PATH
刷新环境变量
source /etc/profile
测试输入java -version,java,javac分别查看,出来很多内容即是成功
[root@chun1 ~]# java -version
openjdk version "1.8.0_181"
OpenJDK Runtime Environment (build 1.8.0_181-b13)
OpenJDK 64-Bit Server VM (build 25.181-b13, mixed mode)
4.安装hadoop 这里用的2.7.7 ,暂时别用3和2.8.5,后面配置hbase会出现不兼容问题。详情见我的hbase搭建。
我这里官方下载的2.7.7下载bin类型。下载后解压到/usr/loacl/hadoop
hadoop为自己创建的文件夹
tar -zxf hadoop-2.7.7.tar.gz -C /usr/local/hadoop/
配置环境变量
#HADOOP
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.7
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
#zookeeper
export ZOOKEEPER_PREFIX=/usr/local/zookeeper/zookeeper-3.4.6
export PATH=$PATH:$ZOOKEEPER_PREFIX/bin
刷新环境变量
source /etc/profile
进行测试是否成功
[root@chun1 ~]# hadoop version
Hadoop 2.7.7
Subversion Unknown -r c1aad84bd27cd79c3d1a7dd58202a8c3ee1ed3ac
Compiled by stevel on 2018-07-18T22:47Z
Compiled with protoc 2.5.0
From source with checksum 792e15d20b12c74bd6f19a1fb886490
This command was run using /usr/local/hadoop/hadoop-2.7.7/share/hadoop/common/hadoop-common-2.7.7.jar
5.配置Hadoop
创建目录
#在/usr/local/hadoop目录下创建目录
cd /usr/local/hadoop/
mkdir tmp
mkdir var
mkdir dfs
mkdir dfs/name
mkdir dfs/data
修改配置文件
进入hadoop-2.7.7/etc/hadoop下
cd /usr/local/hadoop/hadoop-3.7.7/etc/hadoop
(1) hadoop-env.sh
在# JAVA_HOME=/usr/java/testing hdfs dfs -ls一行下面添加如下代码
export JAVA_HOME=/usr/local/java/jdk1.8.0_221
export HADOOP_HOME=/usr/local/hadoop/hadoop-2.7.7
export HDFS_NAMENODE_USER=root
export HDFS_DATANODE_USER=root
export HDFS_SECONDARYNAMENODE_USER=root
export YARN_RESOURCEMANAGER_USER=root
export YARN_NODEMANAGER_USER=root
(2)修改slaves,把从节点名字写进去,删除localhost,hadoop3是修改workers。
chun2
chun3
下面在各个文件的< configuration> < /configuration>中添加
(3)修改core-site.xml
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://192.168.228.138:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/tmp</value>
</property>
</configuration>
(4)hdfs-site.xml
<property><name>dfs.name.dir</name><value>/usr/local/hadoop/dfs/name</value><description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
</property>
<property><name>dfs.data.dir</name><value>/usr/local/hadoop/dfs/data</value><description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.namenode.http-address</name>
<value>192.168.228.138:50070</value>
</property>
<property>
<name>dfs.namenode.secondary.http-address</name>
<value>192.168.228.138:50090</value>
</property>
<property><name>dfs.replication</name><value>4</value>
</property>
<property><name>dfs.permissions</name><value>false</value><description>need not permissions</description>
</property>
(5)mapred-site.xml
<property><name>mapred.job.tracker</name><value>chun1:49001</value>
</property>
<property><name>mapred.local.dir</name><value>/usr/local/hadoop/var</value>
</property>
<property><name>mapreduce.framework.name</name><value>yarn</value>
</property>
(6) yarn-site.xml
在命令行输入 hadoop classpath,把得到的内容复制到下面
[root@chun1 ~]# hadoop classpath
/usr/local/hadoop/hadoop-2.7.7/etc/hadoop:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/common/lib/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/common/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/hdfs:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/hdfs/lib/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/hdfs/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/yarn/lib/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/yarn/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/mapreduce/lib/*:/usr/local/hadoop/hadoop-2.7.7/share/hadoop/mapreduce/*:/usr/local/hadoop/hadoop-2.7.7/contrib/capacity-scheduler/*.jar
<property>
<name>yarn.resourcemanager.hostname</name>
<value>node1</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.application.classpath</name>
<value>输入刚才返回的Hadoop classpath路径</value> //这里借鉴了别人的
</property>
到此配置基本结束,然后同步给另外两台虚拟机
scp -r /usr/local/java chun2:/usr/local/java
scp -r /usr/local/hadoop chun2:/usr/local/hadoop
scp -r /etc/profile chun2:/etc/scp -r /usr/local/java chun3:/usr/local/java
scp -r /usr/local/hadoop chun3:/usr/local/hadoop
scp -r /etc/profile chun3:/etc/
这里有个问题就是如果你的另外虚拟机local下有hadoop文件夹和java文件夹,他会放到你的java或者hadoop下,导致你的目录会又多了一层。可以这样解决,或者简单粗暴直接删除原来的文件夹:
进入到local下 使用命令scp hadoop/ chun2:$PWD
这样进行传输,会覆盖掉。PWD表示当前你所进入的目录
然后刷新两个从节点环境变量
ssh chun2
source /etc/profilessh chun3
source /etc/profile
格式化节点
在主节点上执行
hdfs namenode -format
运行之后不报错,并在倒数第五六行有successfully即为格式化节点成功
启动hadoop集群的服务
start-all.sh
输入jps可以查看进程
chun1上会有namenode
chun2、chun3上有datanode
在浏览器上访问192.168.228.138:50070 查看hdfs的web界面(前面是主节点的ip后面是端口)
查看yarn的web端
hadoop分布式集群搭建,包含网络配置-hadoop3环境相关推荐
- Hadoop分布式集群搭建以及案例运行-fs操作
Hadoop分布式集群搭建案例步骤(也可以叫分布式文件系统) 一:创建分布式集群环境 二:设置静态ip以及主机名与映射关系 三:创建用户.配置SSH无密登录 四:子机dn操作 五:配置主机jdk.ha ...
- hadoop分布式集群搭建
hadoop集群搭建前的准备(一定要读):https://blog.51cto.com/14048416/2341450 hadoop分布式集群搭建: 1. 集群规划: 2.具体步骤: (1)上传安装 ...
- Hadoop分布式集群搭建完全详细教程
Hadoop分布式集群环境搭建步骤如下 实验环境: 系统:win7 内存:8G(因要开虚拟机,内存建议不低于8G) 硬盘:建议固态 虚拟机:VMware 12 Linux:Centos 7 jdk1. ...
- Hadoop分布式集群搭建完全教程
Hadoop分布式集群环境搭建步骤如下 实验环境: 系统:win7 内存:8G(因要开虚拟机,内存建议不低于8G) 硬盘:建议固态 虚拟机:VMware 12 Linux:Centos 7 jdk1. ...
- 【转】Hadoop分布式集群搭建hadoop2.6+Ubuntu16.04
https://www.cnblogs.com/caiyisen/p/7373512.html 前段时间搭建Hadoop分布式集群,踩了不少坑,网上很多资料都写得不够详细,对于新手来说搭建起来会遇到很 ...
- Hadoop分布式集群搭建hadoop2.6+Ubuntu16.04
前段时间搭建Hadoop分布式集群,踩了不少坑,网上很多资料都写得不够详细,对于新手来说搭建起来会遇到很多问题.以下是自己根据搭建Hadoop分布式集群的经验希望给新手一些帮助.当然,建议先把HDFS ...
- Hadoop分布式集群搭建(完整版)
一.前期准备工作 VMware和Centos7下载安装教程: https://blog.csdn.net/m0_59209350/article/details/117793482 XShell和Xf ...
- Hadoop分布式集群搭建详细过程
1. 首先用五台机器搭建分布式,一个为master,剩下四个分别为slave01.slave02.slave03, slave04. 2. 修改机器名 五台机器分别都执行sudo vim /etc/h ...
- Hadoop 分布式集群搭建步骤
实现各个节点间的免密登录 将hadoop安装包拷贝到其他节点 删除00节点hadoop的运行数据(若有运行) 在00节点的slaves文件中配置其他节点信息 此时在00节点启动hdfs 会在各个节点中 ...
最新文章
- 彻底理解js中this的指向
- 如何准备数学建模竞赛!
- 【算法入门漫画】:“排序算法” 大总结
- one thread one loop
- MySQL8 重置改root密码及开放远程访问
- oracle 如何筛选重复,求sql--筛选A字段相同,B字段不同且不重复的记录
- 【CodeForces - 892C 】Pride (数学,思维构造,gcd)
- opencv 人脸识别_python基于openCV人脸识别18行代码实现
- Windows PsExec 0day 漏洞获免费微补丁,但仅适用于最新版本
- 电脑wifi热点软件_手机WiFi信号太差怎么办?掌握这些方法,轻松解决这个问题...
- ArcGIS设置默认金字塔弹出框
- 年金计算机在线,年金终值复利计算器在线(企业年金计算方法)
- windows7配置java环境变量
- windows反馈中心服务器,Windows 管理中心入门
- Python数据分析与机器学习27-拼写纠正实例
- java基于t-io框架实现区块链中的p2p网络构建模拟区块信息同步
- 《Python编程-从入门到实践》
- Linux下线程池概念详解以及代码演示
- 我就喜欢那种认认真真和我吵架的
- 2019年下半年软件设计师考试上午题的英语部分原文。
热门文章
- [剑指offer]面试题第[2]题[JAVA][替换空格][函数][字符串]
- 计算机服务哪些不能关闭,Win7系统下哪些系统服务不能关闭
- linux虚拟服务器新增磁盘怎么挂载,如何在vmware虚拟机Linux中增加硬盘的方法(教程)...
- Codeforces Round #734 (Div. 3) (A-D1)
- 如何设置打印的时候不加上页面链接_excel表格的这10个打印小技巧,办公室财务人员记得收藏...
- 网站显示不正常服务器怎么弄,你真的知道网站出现收录不正常的原因是什么吗...
- idea maven创建java项目_新版本IntelliJ IDEA 构建maven,并用Maven创建一个web项目(图文教程)...
- mysql事务所_mysql事务
- 解决asterisk sip呼叫 488 no acceptable here
- Asterisk 1.4.42将成绝唱