Hadoop伪分布式部署之linux环境准备

前言

在正式部署hadoop之前,我们需要先对linux系统的网络和java做一些准备工作,确保能够顺利部署和使用hadoop。今天我们就以centOS6.4为例做一个环境配置。

1、主机名及映射配置

考虑到后面要搭建集群,节点之间的访问最好使用主机名访问,所以现在需要设置一下每个节点的主机名和映射。我们先以一台机器的配置为例,以后我们会讲到多台机器时该如何配置。

IP设置

查看本机的IP,并设置成固定IP

[root@hadoop01 network-scripts]# ifconfig
eth0      Link encap:Ethernet  HWaddr 00:0C:29:65:6A:2C  
          inet addr:192.168.190.151  Bcast:192.168.190.255  Mask:255.255.255.0
          inet6 addr: fe80::20c:29ff:fe65:6a2c/64 Scope:Link
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          RX packets:12683 errors:0 dropped:0 overruns:0 frame:0
          TX packets:6787 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:1000 
          RX bytes:14375884 (13.7 MiB)  TX bytes:433356 (423.1 KiB)

lo        Link encap:Local Loopback  
          inet addr:127.0.0.1  Mask:255.0.0.0
          inet6 addr: ::1/128 Scope:Host
          UP LOOPBACK RUNNING  MTU:16436  Metric:1
          RX packets:14 errors:0 dropped:0 overruns:0 frame:0
          TX packets:14 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 txqueuelen:0 
          RX bytes:1308 (1.2 KiB)  TX bytes:1308 (1.2 KiB)

我们发现本机的IP地址为192.168.190.151
可以把该IP配置成固定IP。

主机名配置

将主机名设置为hadoop01.datacenter.com

[root@hadoop01 network-scripts]# vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop01.datacenter.com

域名映射

linux下将192.168.190.151映射为hadoop01.datacenter.com

[root@hadoop01 network-scripts]# vim /etc/hosts
127.0.0.1   localhost localhost.localdomain localhost4 localhost4.localdomain4
::1         localhost localhost.localdomain localhost6 localhost6.localdomain6

#hadoop
192.168.190.151 hadoop01.datacenter.com

将来我们需要通过windows的浏览器来访问hadoop的相关web服务,所以我们需要在windows的操作系统同时做好IP映射。
在windows的C:\Windows\System32\drivers\etc\hosts文件中新增IP映射:

##HADOOP
192.168.190.151 hadoop01.datacenter.com

2、防火墙设置

为了确保我们通过其他机器可以访问hadoop集群的web服务,所以我们先把集群上每个节点的防火墙关闭。

关闭iptables服务

[root@hadoop01 network-scripts]# service iptables stop 
iptables: Flushing firewall rules:                         [  OK  ]
iptables: Setting chains to policy ACCEPT: filter          [  OK  ]
iptables: Unloading modules:                               [  OK  ]
[root@hadoop01 network-scripts]# service iptables status
iptables: Firewall is not running.

开机关闭iptables服务

[root@hadoop01 network-scripts]# chkconfig iptables off

关闭selinux服务

将“SELINUX=enforcing”改为“SELINUX=disabled”

[root@hadoop01 network-scripts]# vim /etc/sysconfig/selinux

# 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

3、增加hadoop用户

增加hadoop用户并设置密码

[root@hadoop01 network-scripts]# useradd hadoop
[root@hadoop01 network-scripts]# passwd hadoop
Changing password for user hadoop01.
New password: 
BAD PASSWORD: it is based on a dictionary word
BAD PASSWORD: is too simple
Retype new password: 
passwd: all authentication tokens updated successfully.

设置sudo权限

使用visudo增加一行
hadoop ALL=(ALL) ALL

[root@hadoop01 network-scripts]# visudo
...
## Next comes the main part: which users can run what software on
## which machines (the sudoers file can be shared between multiple
## systems).
## Syntax:
##
##      user    MACHINE=COMMANDS
##
## The COMMANDS section may have other options added to it.
##
## Allow root to run any commands anywhere
root    ALL=(ALL)       ALL
hadoop    ALL=(ALL)       ALL
...

4、java安装

centOS6.4默认的jdk为openjdk,并不能满足我们的需求,所以我们需要卸载默认的jdk,并安装一个oracle版本的jdk程序。

hadoop目录规划

在安装jdk之前,我们先对hadoop相关的工具软件做一个目录规划,主要划分为四个目录。
software:该目录存放所有软件的安装包
modules:该目录存放hadoop的所有模块
datas:该目录放置一些数据文件
tools:该目录放置相关的开发工具,如eclipse等

下面我们来创建这些目录,并把这些目录的所有者切换到hadoop用户。

[root@hadoop01 ~]# cd /opt
[root@hadoop01 opt]# mkdir software modules datas tools
[root@hadoop01 opt]# chown hadoop:hadoop *
[root@hadoop01 opt]# ll
total 20
drwxr-xr-x  2 hadoop hadoop 4096 Jan  7 12:23 datas
drwxr-xr-x  2 hadoop hadoop 4096 Jan  7 12:23 modules
drwxr-xr-x. 2 hadoop hadoop 4096 Feb 22  2013 rh
drwxr-xr-x  2 hadoop hadoop 4096 Jan  7 12:23 software
drwxr-xr-x  2 hadoop hadoop 4096 Jan  7 12:23 tools

查看系统默认jdk

[root@hadoop01 ~]# rpm -qa|grep java
tzdata-java-2012j-1.el6.noarch
java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64
java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64

发现系统默认的jdk程序有3个,接下来我们把这三个程序卸载掉。

卸载系统默认jdk

[root@hadoop01 ~]# rpm -e --nodeps tzdata-java-2012j-1.el6.noarch java-1.6.0-openjdk-1.6.0.0-1.50.1.11.5.el6_3.x86_64 java-1.7.0-openjdk-1.7.0.9-2.3.4.1.el6_3.x86_64
[root@hadoop01 ~]# 

上传jdk安装程序

去oracle官网下载一个的jdk安装包。
jdk1.8下载地址:http://download.oracle.com/otn-pub/java/jdk/8u151-b12/e758a0de34e24606bca991d704f6dcbf/jdk-8u151-linux-x64.tar.gz
这次我用的jdk1.7的安装包,通过ftp程序使用hadoop用户把jdk程序上传到/opt/software目录下
ftp

解压jdk安装包

使用hadoop用户,将jdk安装包解压到/opt/modules

[root@hadoop01 opt]# su - hadoop
[hadoop@hadoop01 ~]$ cd /opt/software/
[hadoop@hadoop01 software]$ ls
hadoop-2.5.0.tar.gz  jdk-7u67-linux-x64.tar.gz
[hadoop@hadoop01 software]$ tar -zxf jdk-7u67-linux-x64.tar.gz -C /opt/modules/
[hadoop@hadoop01 software]$ cd /opt/modules/
[hadoop@hadoop01 modules]$ ls
jdk1.7.0_67

设置java环境变量

使用sudo权限,设置java环境变量

[hadoop@hadoop01 jdk1.7.0_67]$ sudo vim /etc/profile
...
##JAVA_HOME
export JAVA_HOME=/opt/modules/jdk1.7.0_67
export PATH=$PATH:$JAVA_HOME/bin

"/etc/profile" 84L, 1886C written
[hadoop@hadoop01 jdk1.7.0_67]$ source /etc/profile

验证jdk安装是否成功

使用java -version命令验证jdk安装及环境变量设置是否成功

[hadoop@hadoop01 jdk1.7.0_67]$ java -version
java version "1.7.0_67"
Java(TM) SE Runtime Environment (build 1.7.0_67-b01)
Java HotSpot(TM) 64-Bit Server VM (build 24.65-b04, mixed mode)

看到java的版本信息,就代表我们前面的操作成功了。

linux环境准备到这里基本就结束了,接下来我们就可以部署hdfs了。

  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值