文档章节

hadoop的分布式部署

淺陌离殇
 淺陌离殇
发布于 2016/09/20 10:48
字数 1545
阅读 11
收藏 0

本安装为分布式安装,一主节点,一从节点,安装环境为centos6系统。hadoop的安装使用phq用户,未新建hadoop用户安装


1 配置时钟同步

(1)自动同步时间
  • 该项需要在主节点和从节点配置。使用linux命令为:
[root@localhost phq]# crontab -e
  • 该命令是vi编辑命令,按i进入插入模式,键入下面代码:
0 1 * * * /usr/sbin/ntpdate cn.pool.ntp.org
(2) 手动同步时间
  • 直接在终端中运行以下命令:
[root@localhost phq]# /usr/sbin/ntpdate cn.pool.ntp.org

2 配置主机名

  • 使用vi编辑主机名,将主节点的主机名改为master,从节点的主机名改为slave
[root@localhost phq]# vim /etc/sysconfig/network
修改如下:
NETWORKING=yes
HOSTNAME=master
NTPSERVERARGS=iburst

确认修改命令生效

[root@localhost phq]# hostname master
  • 从节点用相同的操作修改主机名

3 配置网络

  • 根据实际,主从节点配置静态ip。最新vmware虚拟机已默认使用静态ip,不需要配置。

4 关闭防火墙和selinux

  • [x] 关闭主从节点机器的防火墙和selinux
(1) 关闭防火墙
  • 在终端中执行以下命令关闭防火墙,重启后生效
[root@master phq]# chkconfig iptables off
(2) 关闭selinux
  • 在终端中编辑/etc/selinux/config,找到SELINUX 行修改成为:SELINUX=disabled
[root@master phq]# vim /etc/selinux/config


# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
#     enforcing - SELinux security policy is enforced.
#     permissive - SELinux prints warnings instead of enforcing.
#     disabled - No SELinux policy is loaded.
SELINUX=disabled
# SELINUXTYPE= can take one of these two values:
#     targeted - Targeted processes are protected,
#     mls - Multi Level Security protection.
SELINUXTYPE=targeted

5 配置hosts

  • 在主从节点机器上编辑主机名列表
[root@master phq]# vim /etc/hosts
添加如下内容:
192.168.231.131 master
192.168.231.132 slave

6 安装jdk

  • 主从节点都安装jdk,使用rpm方式安装。
[root@master software]# rpm -ivh jdk-8u91-linux-x64.rpm 
  • 配置环境变量
[root@master ~]# vim  /etc/profile
在后面加入:
#set java environment
export JAVA_HOME=/usr/java/jdk1.8.0_91
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

在普通用户下配置

[phq@master ~]$ vim .bash_profile
在后面加入:
#set java environment
export JAVA_HOME=/usr/java/jdk1.8.0_91
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar
export PATH=$JAVA_HOME/bin:$PATH

7 配置免密钥登录

  • 该部分的操作在phq用户下操作。
(1) 主节点
  1. 在终端生成密钥,命令如下(一路按回车生成密钥):
[phq@master ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/phq/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/phq/.ssh/id_rsa.
Your public key has been saved in /home/phq/.ssh/id_rsa.pub.
The key fingerprint is:
18:66:c2:b9:3e:88:b1:f9:d5:c5:09:e3:63:54:9a:ce phq@master
The key's randomart image is:
+--[ RSA 2048]----+
|        .        |
|   . . +         |
|    + X          |
|     X * .       |
|.   . E S        |
| = o o o         |
|+ . + .          |
| . . .           |
|  .              |
+-----------------+

  1. 复制密钥文件
[phq@master .ssh]$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  1. 修改authorized_keys文件权限
[phq@master .ssh]$ chmod 600 ~/.ssh/authorized_keys
  1. 将authorized_keys文件复制到slave节点
[phq@master .ssh]$ scp ~/.ssh/authorized_keys phq@slave:~/
(2) 从节点
  1. 在终端生成密钥,命令如下(一路按回车生成密钥):
[phq@slave ~]$ ssh-keygen -t rsa
Generating public/private rsa key pair.
Enter file in which to save the key (/home/phq/.ssh/id_rsa): 
Enter passphrase (empty for no passphrase): 
Enter same passphrase again: 
Your identification has been saved in /home/phq/.ssh/id_rsa.
Your public key has been saved in /home/phq/.ssh/id_rsa.pub.
The key fingerprint is:
eb:6b:5a:9f:fd:5c:29:a8:4c:79:9d:bb:fb:2d:7e:8d phq@slave
The key's randomart image is:
+--[ RSA 2048]----+
|                 |
|                 |
|                 |
|                 |
|        S        |
|         .. o . .|
|        oo o + oo|
|       o+.oo .E.+|
|      .oo+o .*B+.|
+-----------------+

  1. 将主节点的authorized_keys文件移动到.ssh目录:
[phq@slave ~]$ mv authorized_keys ~/.ssh/
  1. 修改authorized_keys文件的权限
[phq@slave .ssh]$ chmod 600 authorized_keys
(3) 验证免密钥登录
  • 在主节点上执行ssh命令,出现如下命令说明配置成功
[phq@master .ssh]$ ssh slave
Last login: Thu Sep  1 16:44:16 2016 from 192.168.231.1

8 hadoop配置部署

  • 每个节点的hadoop配置基本相同,在主节点操作,然后复制到从节点。
(1)解压安装包
[phq@master ~]$ tar -xvf ~/hadoop-2.5.2.tar.gz
(2)配置hadoop-env.sh
  • 该部分只需要配置jdk路径。在文件靠前部分找到
# The java implementation to use.
export JAVA_HOME=${JAVA_HOME}

修改为以下代码:

export JAVA_HOME=/usr/java/jdk1.8.0_91
(3)配置yarn-env.sh
  • 该部分只需要配置jdk路径。在文件靠前部分找到
# some Java parameters
# export JAVA_HOME=/home/y/libexec/jdk1.6.0/

修改为以下代码(去掉#)

# some Java parameters
export JAVA_HOME=/usr/java/jdk1.8.0_91
(4)配置核心组件core-site.xml
  • 使用下面的代码替换core-site.xml的内容
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl"
href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/home/phq/hadoopdata</value>
</property>
</configuration>
(5)配置系统文件hdfs-site.xml
  • 使用下面的代码替换hdfs-site.xml的内容
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl"
href="configuration.xsl"?>
<!-- Put site-specific property overrides in this file. -->
<configuration>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
</configuration>
(6)配置yarn-site.xml
  • 使用下面的代码替换yarn-site.xml的内容
<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.address</name>
<value>master:18040</value>
</property>
<property>
<name>yarn.resourcemanager.scheduler.address</name>
<value>master:18030</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>master:18025</value>
</property>
<property>
<name>yarn.resourcemanager.admin.address</name>
<value>master:18141</value>
</property>
<property>
<name>yarn.resourcemanager.webapp.address</name>
<value>master:18088</value>
</property>
</configuration>
(7)配置计算框架mapred-site.xml
  1. 复制mapred-site.xml.template文件为mapred-site.xml
[phq@master hadoop]$ cp mapred-site.xml.template mapred-site.xml
  1. 使用以下代码替换mapred-site.xml的内容
<?xml version="1.0"?>
<?xml-stylesheet type="text/xsl"
href="configuration.xsl"?>
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
(8)在主节点配置slaves文件
  • 使用以下代码替换slaves文件中的内容
slave
(9)复制到从节点
[phq@master ~]$ scp -r hadoop-2.5.2 phq@slave:~/

9 启动集群

(1)配置hadoop启动的环境变量
  • 该部分主从节点都需要配置
[phq@master ~]$ vim .bash_profile
文件末尾追加以下内容:
#HADOOP
export HADOOP_HOME=/home/phq/hadoop-2.5.2
export PATH=$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

然后使文件生效

[phq@master ~]$ source ~/.bash_profile
(2)创建数据目录
  • 该部分主从节点都需要配置
[phq@master ~]$ mkdir /home/phq/hadoopdata
(3)启动hadoop集群
  1. 格式化文件系统
  • 在主节点格式化文件系统
[phq@master hadoop]$ hdfs namenode -format
  • 如果没有出现Exception/Error则表示格式化成功
  1. 启动hadoop
  • 使用start-all.sh启动集群
[phq@master sbin]$ ./start-all.sh
  1. 查看进程
  • [x] 在终端执行jps命令,在主节点可以看到4个进程:
[phq@master sbin]$ jps
4226 ResourceManager
4503 Jps
3898 NameNode
4077 SecondaryNameNode

从节点可以看到3个进程:

[phq@slave ~]$ jps
3267 Jps
3160 NodeManager
3065 DataNode

© 著作权归作者所有

淺陌离殇

淺陌离殇

粉丝 8
博文 12
码字总数 7148
作品 0
浦东
运维
私信 提问
完全分布式(四)Sqoop 安装部署及操作示例

本次采用完全分布式系列的hadoop集群,安装配置过程详细参见 完全分布式集群(二)hadoop2.6.5安装部署 Hive在分布式集群上的部署配置参见 完全分布式集群(三)hive-2.1.1安装部署 检查本地...

PeakFang-BOK
2018/10/12
0
0
基于Docker一键部署大规模Hadoop集群及设计思路

欢迎关注大数据和人工智能技术文章发布的微信公众号:清研学堂,在这里你可以学到夜白(作者笔名)精心整理的笔记,让我们每天进步一点点,让优秀成为一种习惯! 一、背景: 随着互联网的发展...

李金泽
2018/03/04
0
0
Hadoop3.1.0完全分布式集群部署超详细记录

Hadoop3.1.0完全分布式集群部署,三台服务器部署结构如下github配置文件源码地址 如上图,一共三台机器作为集群,servera作为master,其他两台作为worker。 2.开始部署-前期准备(三台机器都需...

dream_an
2018/05/09
0
0
SpirngXD on YARN模式部署说明

SpirngXD on YARN模式部署说明 OneCoder2016-11-0156 阅读 Spring XD可以on yarn运行。 下载on yarn运行包并解压 部署本地Hadoop环境 要on yarn运行需要依赖本地的Hadoop环境。下载Hadoop安装...

OneCoder
2016/11/01
0
0
Hadoop伪分布式安装(HDFS)步骤

1.安装前的准备工作 在进行Hadoop伪分布式安装前要检测虚拟机是否进行了下面的配置: 1. 修改主机名 2. 修改主机名与ip之间的映射关系 3. 配置虚拟机网络可以进行上网 2.伪分布式部署(HDFS)...

yu0_zhang0的博客
2017/12/19
0
0

没有更多内容

加载失败,请刷新页面

加载更多

浅谈 Spark 的多语言支持

作者:郑锴,花名铁杰,阿里巴巴高级技术专家,Apache Hadoop PMC,Apache Kerby 创立者。深耕分布式系统开发和开源大数据多年,先后专注在安全,存储和计算领域。之前在 Intel,目前转战阿里...

阿里云云栖社区
7分钟前
0
0
Linux运维常见的硬件及系统问题

一、服务器常见故障和现象 1、有关服务器无法启动的主要原因 : ①市电或电源线故障(断电或接触不良) ②电源或电源模组故障 ③内存故障(一般伴有报警声) ④CPU故障(一般也会有报警声) ⑤主板故...

寰宇01
14分钟前
0
0
Confluence 6 针对 'unmigrated-wiki-markup' 宏重新尝试合并

在签名的章节中,我们主要是针对没有完全合并完成余下的为合并内容的异常处理。最常见的情况是内容以及被合并了,但是页面使用 wiki 标记的内容没有被合并,通常这些 wiki 标记的内容使用了 ...

honeymoose
24分钟前
0
0
ubuntu 18.04桌面版启动错误: Unable to mount root fs on unknown-block(0,0)

问题出现过程 *** 我的环境: visualbox 虚拟机 Ubuntu 18.04 桌面版 IP:192.168.1.186 (最初从 192.168.1.185 克隆过来的) 20190423 晚上准备安装一个 UNlet standalone 和 一个 Eclips...

wwzzhh166
25分钟前
0
0
fescar select for update 读隔离级别实现

/* * Copyright 1999-2018 Alibaba Group Holding Ltd. * * Licensed under the Apache License, Version 2.0 (the "License"); * you may not use this file except in complian......

xiaomin0322
28分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部