centOS7 配置hadoop完全分布式

Posted grj0011

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了centOS7 配置hadoop完全分布式相关的知识,希望对你有一定的参考价值。

1.安装jdk
  1)下载jdk-8u65-linux-x64.tar.gz

  2)创建/soft文件夹

  $>sudo mkdir /soft
  $>sudo chown grj:grj /soft

  3)tar开   

  $>tar -xzvf jdk-8u65-linux-x64.tar.gz -C /soft

  4)创建符号连接


  $>ln -s /soft/jdk-1.8.0_65 /soft/jdk
  5)验证jdk安装是否成功


  $>cd /soft/jdk/bin
  $>./java -version

6)centos配置环境变量
  a)编辑/etc/profile

  $>sudo nano /etc/profile
  ...
  export JAVA_HOME=/soft/jdk
  exprot PATH=$PATH:$JAVA_HOME/bin

  b)使环境变量即刻生效

  $>source /etc/profile
  c)进入任意目录下,测试是否ok

  $>cd ~
  $>java -version

2.安装hadoop(需要在集群的每一台主机都安装)

1)下载hadoop-2.7.3.tar.gz


2)tar开

$>tar -xzvf hadoop-2.7.3.tar.gz -C /soft

3)创建符号连接

$>ln -s /soft/hadoop-2.7.3 /soft/hadoop

4)验证hadoop安装是否成功

$>cd /soft/hadoop/bin
$>./hadoop version

5)配置hadoop环境变量

$>sudo nano /etc/profile
...
export JAVA_HOME=/soft/jdk
exprot PATH=$PATH:$JAVA_HOME/bin

export HADOOP_HOME=/soft/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

6)生效

$>source /etc/profile

3.集群机器配置(修改主机名)

1)每个主机都需在此文件中按照hosts文件中的主机名进行修改,重启后生效

/etc/hostname
s201

2)/etc/hosts

127.0.0.1 localhost
192.168.24.201 s201
192.168.24.202 s202
192.168.24.203 s203
192.168.24.204 s204

3)每个主机都需在此文件中按照hosts文件中的ip进行修改

/etc/sysconfig/network-scripts/ifcfg-exxxxx

...
IPADDR=..

重启网络服务$>sudo service network restart

4)修改/etc/resolv.conf文件,所有主机都改为相同的nameserver

nameserver 192.168.24.2

4.准备完全分布式主机的ssh(实现用户在s201无密登录其它属于该集群的主机)

1)在s201主机上生成密钥对
$>ssh-keygen -t rsa -P ‘‘ -f ~/.ssh/id_rsa

2)将s201的公钥文件id_rsa.pub远程复制到202 ~ 204主机上。
并放置/home/centos/.ssh/authorized_keys
$>scp id_rsa.pub centos@s201:/home/grj/.ssh/authorized_keys
$>scp id_rsa.pub centos@s202:/home/grj/.ssh/authorized_keys
$>scp id_rsa.pub centos@s203:/home/grj/.ssh/authorized_keys
$>scp id_rsa.pub centos@s204:/home/grj/.ssh/authorized_keys

5.配置完全分布式

1)创建配置目录(此时可以把原来的配置文件夹/soft/hadoop/etc/hadoop删除或重命名,防止后续符号链接与其重名)

$>cp -r /soft/hadoop/etc/hadoop /soft/hadoop/etc/full

2)创建符号连接
$>ln -s /soft/hadoop/etc/full hadoop

3)修改配置文件(${hadoop_home}/etc/full/)

[core-site.xml]
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>fs.defaultFS</name>
<value>hdfs://s201/</value>
</property>
</configuration>

[hdfs-site.xml]
<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
</configuration>

[mapred-site.xml]
不变

[yarn-site.xml]
<?xml version="1.0"?>
<configuration>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>s201</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>

4)修改slaves文件(该文件存放所有的数据节点主机名)

[/soft/hadoop/etc/full/slaves]
s202
s203
s204

5)修改Hadoop环境变量文件[/soft/hadoop/etc/full/hadoop-env.sh]

...
export JAVA_HOME=/soft/jdk
...

6)分发配置

$>cd /soft/hadoop/
$>scp -r etc centos@s202:/soft/hadoop
$>scp -r etc centos@s203:/soft/hadoop
$>scp -r etc centos@s204:/soft/hadoop

7)格式化文件系统(在名称节点s201执行此操作)

$>hadoop namenode -format

8)启动hadoop进程

$>start-all.sh

以上是关于centOS7 配置hadoop完全分布式的主要内容,如果未能解决你的问题,请参考以下文章

centOS7 配置hadoop完全分布式

Hadoop3.2.0+Centos7三节点完全分布式安装配置

centos7 + hadoop 2.7.7 完全分布式搭建

CentOS7.5搭建Hadoop2.7.6完全分布式集群

Linux从零搭建Hadoop集群(CentOS7+hadoop 3.2.0+JDK1.8+Mapreduce完全分布式集群案例)

Hadoop分布式集群搭建完全详细教程