博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
hadoop集群搭建
阅读量:5229 次
发布时间:2019-06-14

本文共 11158 字,大约阅读时间需要 37 分钟。

 
 
hadoop集群搭建

hadoop集群搭建

1.安装配置Linux操作系统

采用软件、工具:VMware workstation、CentosOS6.5

新建虚拟机-->自定义安装

01 建立master虚拟机(NameNode)

虚拟机命名为master(在VMware中的命名)

02 配置环境

001)设置主机名

[root@node01 ~]# vi /etc/sysconfig/networkNETWORKING=yesHOSTNAME=master #修改该属性为masterGATEWAY=192.168.153.2~

重启后生效

002)配置网络

1).修改ifcfg-eth0

[root@master ~]# cd /etc/sysconfig/network-scripts/[root@master network-scripts]# lltotal 204-rw-r--r--. 1 root root   171 Jul 28 16:42 ifcfg-eth0-rw-r--r--. 1 root root   254 Oct 10  2013 ifcfg-lolrwxrwxrwx. 1 root root    20 Jul 28 06:54 ifdown -> ../../../sbin/ifdown-rwxr-xr-x. 1 root root   627 Oct 10  2013 ifdown-bnep-rwxr-xr-x. 1 root root  5430 Oct 10  2013 ifdown-eth-rwxr-xr-x. 1 root root   781 Oct 10  2013 ifdown-ippp-rwxr-xr-x. 1 root root  4168 Oct 10  2013 ifdown-ipv6lrwxrwxrwx. 1 root root    11 Jul 28 06:54 ifdown-isdn -> ifdown-ippp-rwxr-xr-x. 1 root root  1481 Oct 10  2013 ifdown-post-rwxr-xr-x. 1 root root  1064 Oct 10  2013 ifdown-ppp-rwxr-xr-x. 1 root root   835 Oct 10  2013 ifdown-routes-rwxr-xr-x. 1 root root  1465 Oct 10  2013 ifdown-sit-rwxr-xr-x. 1 root root  1434 Oct 10  2013 ifdown-tunnellrwxrwxrwx. 1 root root    18 Jul 28 06:54 ifup -> ../../../sbin/ifup-rwxr-xr-x. 1 root root 12444 Oct 10  2013 ifup-aliases-rwxr-xr-x. 1 root root   859 Oct 10  2013 ifup-bnep-rwxr-xr-x. 1 root root 10556 Oct 10  2013 ifup-eth-rwxr-xr-x. 1 root root 11971 Oct 10  2013 ifup-ippp-rwxr-xr-x. 1 root root 10490 Oct 10  2013 ifup-ipv6lrwxrwxrwx. 1 root root     9 Jul 28 06:54 ifup-isdn -> ifup-ippp-rwxr-xr-x. 1 root root   727 Oct 10  2013 ifup-plip-rwxr-xr-x. 1 root root   954 Oct 10  2013 ifup-plusb-rwxr-xr-x. 1 root root  2364 Oct 10  2013 ifup-post-rwxr-xr-x. 1 root root  4154 Oct 10  2013 ifup-ppp-rwxr-xr-x. 1 root root  1925 Oct 10  2013 ifup-routes-rwxr-xr-x. 1 root root  3289 Oct 10  2013 ifup-sit-rwxr-xr-x. 1 root root  2488 Oct 10  2013 ifup-tunnel-rwxr-xr-x. 1 root root  3770 Oct 10  2013 ifup-wireless-rwxr-xr-x. 1 root root  4623 Oct 10  2013 init.ipv6-global-rwxr-xr-x. 1 root root  1125 Oct 10  2013 net.hotplug-rw-r--r--. 1 root root 13386 Oct 10  2013 network-functions-rw-r--r--. 1 root root 29853 Oct 10  2013 network-functions-ipv6//已经配置好的示例[root@master network-scripts]# vi ifcfg-eth0DEVICE=eth0 #默认第一块网卡TYPE=EthernetONBOOT=yes #改为yesNM_CONTROLLED=yesBOOTPROTO=static #改为static 手动分配IPIPADDR=192.168.153.4 #IPNETMASK=255.255.255.0 #子网掩码GATEWAY:192.168.153.2 #网关DNS1:114.114.114.114DNS2:8.8.8.8

2).删除配置文件 --> 70-persistent-net.rules

[root@master ~]# cd /etc/udev/rules.d/[root@master rules.d]# lltotal 16-rw-r--r--. 1 root root 316 Nov 22  2013 60-raw.rules-rw-r--r--. 1 root root 789 Jul 28 06:58 70-persistent-cd.rules-rw-r--r--. 1 root root 422 Jul 28 16:43 70-persistent-net.rules-rw-r--r--. 1 root root  54 Dec  8  2011 99-fuse.rules[root@master rules.d]# rm -f 70-persistent-net.rules

3).重启

[root@master ~]# reboot

4).重启完成后使用ifconfig命令查看配置是否生效

5).ping www.baidu.com 测试网络连通性

003)Xshell 与 Xftp

安装xshell和xftp,并与master建立连接

连接命令:

[c:\~]$ ssh root@192.168.153.3

创建文件夹

[root@master ~]# mkdir /usr/local/soft# 后续的软件在这个文件夹下安装

通过Xftp传递文件

将下载好的jdk发送到传输到soft下

004)Java环境配置

  1. 解压jdk
    [root@master soft]# tar -zxvf jdk-8u221-linux-x64.tar.gz
  2. 配置环境变量

    解压完成后使用ll命令查看解压出的文件夹

    [root@master soft]# lltotal 190532drwxr-xr-x.  7 uucp  143      4096 Jul  4 19:37 jdk1.8.0_221-rw-r--r--.  1 root root 195094741 Jul 31 07:12 jdk-8u221-linux-x64.tar.gz

    jdk1.8.0_221 记住这个文件夹的名称

    配置profile文件

    export JAVA_HOME=/usr/local/soft/jdk1.8.0_221

    export PATH=.:JAVAHOME/bin:PATH

    [root@master soft]# vi /etc/profile# /etc/profile# System wide environment and startup programs, for login setup# Functions and aliases go in /etc/bashrc# 添加如下两条语句export JAVA_HOME=/usr/local/soft/jdk1.8.0_221export PATH=.:$JAVA_HOME/bin:$PATH# It's NOT a good idea to change this file unless you know what you# are doing. It's much better to create a custom.sh shell script in# /etc/profile.d/ to make custom changes to your environment, as this# will prevent the need for merging in future updates.pathmunge () {   case ":${PATH}:" in       *:"$1":*)           ;;       *)           if [ "$2" = "after" ] ; then               PATH=$PATH:$1           else               PATH=$1:$PATH           fi   esac}"/etc/profile" 79L, 1876C

    保存并退出,应用该文件

    [root@master soft]# source /etc/profile

    执行java -version检查是否配置成功

    [root@masters soft]# java -version #出现如下结果,配置成功java version "1.8.0_221"Java(TM) SE Runtime Environment (build 1.8.0_221-b11)Java HotSpot(TM) 64-Bit Server VM (build 25.221-b11, mixed mode)

005)关闭防火墙

关闭防火墙

service iptables stop

关闭防火墙自启动

chkconfig iptables off

03 克隆虚拟机

克隆已配置好的虚拟机,并分别命令为node01 node02

001)配置主机名、网络

对克隆的虚拟机进行主机名、网络的设置,具体见1 -> 01 ->001、002

002)配置主机映射(三台主机均要配置)

[root@node01 ~]# vi /etc/hosts127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4::1         localhost localhost.localdomain localhost6 localhost6.localdomain6192.168.153.3 master192.168.153.4 node01192.168.153.5 node02

003)配置ssh免密登录

master执行命令ssh-keygen -t rsa 产生密钥 一直回车

执行命令

将密钥拷贝到其他两个子节点,命令如下:

ssh-copy-id -i node1

ssh-copy-id -i node2

实现免密码登录到子节点。

2.配置Hadoop集群

01 master节点操作

001)解压hadoop jar包

通过Xftp将下载好的jar包传输到/usr/local/soft下

解压jar包

[root@master soft]# tar -zxvf hadoop-2.6.0.tar.gz

002)修改slaves配置文件

修改master中hadoop的一个配置文件/usr/local/soft/etc/hadoop/slaves

删除原来的所有内容,修改为如下

node1

node2

[root@master hadoop]# vi slavesnode01node02~

003)修改hadoop-env.sh配置文件

加入

export JAVA_HOME=/usr/local/soft/jdk1.8.0_221

export JAVA_HOME=${JAVA_HOME}

两行

[root@master hadoop]# vi hadoop-env.sh# Licensed to the Apache Software Foundation (ASF) under one# or more contributor license agreements.  See the NOTICE file# distributed with this work for additional information# regarding copyright ownership.  The ASF licenses this file# to you under the Apache License, Version 2.0 (the# "License"); you may not use this file except in compliance# with the License.  You may obtain a copy of the License at##     http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an "AS IS" BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.# Set Hadoop-specific environment variables here.# The only required environment variable is JAVA_HOME.  All others are# optional.  When running a distributed configuration it is best to# set JAVA_HOME in this file, so that it is correctly defined on# remote nodes.# The java implementation to use.export JAVA_HOME=/usr/local/soft/jdk1.8.0_221export JAVA_HOME=${JAVA_HOME}# protocol.  Jsvc is not required if SASL is configured for authentication of# data transfer protocol using non-privileged ports.export HADOOP_CONF_DIR=${HADOOP_CONF_DIR:-"/etc/hadoop"}# Extra Java CLASSPATH elements.  Automatically insert capacity-scheduler.for f in $HADOOP_HOME/contrib/capacity-scheduler/*.jar; do  if [ "$HADOOP_CLASSPATH" ]; then    export HADOOP_CLASSPATH=$HADOOP_CLASSPATH:$f  else    export HADOOP_CLASSPATH=$f  fidone# The maximum amount of heap to use, in MB. Default is 1000.#export HADOOP_HEAPSIZE=#export HADOOP_NAMENODE_INIT_HEAPSIZE=""# Extra Java runtime options.  Empty by default.export HADOOP_OPTS="$HADOOP_OPTS -Djava.net.preferIPv4Stack=true"# Command specific options appended to HADOOP_OPTS when specifiedexport HADOOP_DATANODE_OPTS="-Dhadoop.security.logger=ERROR,RFAS $HADOOP_DATANODE_OPTS"# Licensed to the Apache Software Foundation (ASF) under one# or more contributor license agreements.  See the NOTICE file# distributed with this work for additional information# regarding copyright ownership.  The ASF licenses this file# to you under the Apache License, Version 2.0 (the# "License"); you may not use this file except in compliance# with the License.  You may obtain a copy of the License at##     http://www.apache.org/licenses/LICENSE-2.0## Unless required by applicable law or agreed to in writing, software# distributed under the License is distributed on an "AS IS" BASIS,# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.# See the License for the specific language governing permissions and# limitations under the License.# Set Hadoop-specific environment variables here.# The only required environment variable is JAVA_HOME.  All others are# optional.  When running a distributed configuration it is best to# set JAVA_HOME in this file, so that it is correctly defined on# remote nodes.# The java implementation to use.export JAVA_HOME=/usr/local/soft/jdk1.8.0_221export JAVA_HOME=${JAVA_HOME}

004)修改 core-site.xml配置文件

将下面的配置参数加入进去修改成对应自己的

fs.defaultFS
hdfs://master:9000
hadoop.tmp.dir
/usr/local/soft/hadoop-2.6.0/tmp
fs.trash.interval
1440

005)修改hdfs-site.xml配置文件

将dfs.replication设置为1,添加如下配置

dfs.replication
1
dfs.permissions
false

006)修改yarn-site.xml配置文件

添加下列配置

yarn.resourcemanager.hostname
master
yarn.nodemanager.aux-services
mapreduce_shuffle
yarn.log-aggregation-enable
true
yarn.log-aggregation.retain-seconds
604800

007)修改mapred-site.xml配置文件

将mapred-site.xml.template 复制一份为 mapred-site.xml

命令:cp mapred-site.xml.template mapred-site.xml

添加如下配置

mapreduce.framework.name
yarn
mapreduce.jobhistory.address
master:10020
mapreduce.jobhistory.webapp.address
master:19888

02 将hadoop的安装目录拷贝到其他子节点

命令

scp -r /usr/local/soft/hadoop-2.6.0  node1:/usr/local/soft/ scp -r /usr/local/soft/hadoop-2.6.0  node2:/usr/local/soft/

03 启动hadoop

首先看下hadoop-2.6.0目录下有没有tmp文件夹。

如果没有 执行一次格式化命令:

cd /usr/local/soft/hadoop-2.6.0目录下

执行命令:

./bin/hdfs namenode -format

会生成tmp文件。

然后

/usr/local/soft/hadoop-2.6.0目录下

启动执行:./sbin/start-all.sh

启动完成后验证进程

主节点进程:namenode secondarnamenode resourcemanager

[root@master hadoop]# jps1649 SecondaryNameNode1793 ResourceManager4211 Jps1479 NameNode

进入node01 node02执行该命令,观察是否有两个进程NodeManager DataNode

[root@node01 ~]# jps2244 Jps1608 NodeManager1501 DataNode

上述进程均存在则Hadoop启动成功

可以登录浏览器地址:192.168.1.80:50070(ip地址是master的地址)查看

<wiz_tmp_tag id="wiz-table-range-border" contenteditable="false" style="display: none;">

 
 
 
 

转载于:https://www.cnblogs.com/local-wzy/p/11279946.html

你可能感兴趣的文章
合数幂上下分解表
查看>>
PHP-FPM config 文件生产环境
查看>>
使用Multiplayer Networking做一个简单的多人游戏例子-1/2
查看>>
Python基础(解压序列)
查看>>
动态规划 4、基础背包问题总结(从01开始)
查看>>
依赖倒置(DIP)与依赖注入(DI)
查看>>
LINUX MEDIA INFRASTRUCTURE API
查看>>
mfc 控件添加变量
查看>>
图片大小
查看>>
C++中static的作用
查看>>
Dynamics AX 2012 R2 通过数据源保存记录时触发的方法
查看>>
MRD
查看>>
log4配置详解
查看>>
jsp service bean
查看>>
使用vue配合组件--转载
查看>>
一次读锁重入导致的死锁故障
查看>>
每天都整理一点东东吧
查看>>
pycharm下 os.system os.popen执行命令返回有中文乱码
查看>>
JSON.parse()与JSON.stringify()的区别
查看>>
js的浮点(小数)数+-*/
查看>>