Hadoop平台的搭建

Hadoop 虚拟机集群配置

一.在VM中安装CentOS6.0及以上版本(以Master.Hadoop为例)

a) 安装时设置所有的用户名为hadoop

b) 修改主机名为Master.Hadoop,Slave1.Hadoop,Slave2.Hadoop……

i. 用vim打开/etc/sysconf/network,修改HOSTNAME后的参数,为主机名

c) 设置静态IP(防止由于外界网络环境的变化影响整个集群)

i. vim /etc/sysconfig/network-scripts/ifcgf-eth0 (修改eth0网卡)

IPDAAR:192.168.1.2

GATEWAY: 192.168.1.1

DNS:

ii. Service network restart 重启网卡

iii. Ifconfig命令,验证ip是否修改成功

 

d) 修改开机服务项,长期关闭防火墙iptables服务

i. vim /etc/sysconfig/iptables

ii. 在文件中加入:

-A INPUT -m state --state NEW -mtcp -p tcp --dport 21 -j ACCEPT

-A INPUT -m state --state NEW -mtcp -p tcp --dport 20 -j ACCEPT

e) 关闭seLinux服务(这个貌似影响不大)

i. getsebool -a | grep ftp查询selinux设置状态

ii. 执行:setsebool -P ftp_home_dir 1

setsebool -P allow_ftpd_full_access 1

(执行的时间会比较长)

Vim /etc/selinux/config,设置“SELINUX=disabled”

f) 设置各个结点之间的ssh无密码连接

i. 在/etc/hosts文件中加入主机名及其对应的ip,即可ping通主机名

ii. 查看本机中是否有ssh、rsync服务:

rpm –qa | grep openssh

rpm –qa | grep rsync

iii. 在Master结点执行:ssh-keygen –t rsa –P ‘’ 命令

iv. 在/home/hadoop/.ssh文件夹中会看到两个文件即为刚生成的密钥

v. 执行:cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

vi. 修改权限:chmod 600 ~/.ssh/authorized_keys

vii. 重启ssh服务:service sshd restart

viii. 测试:ssh localhost

ix. 将公钥复制到其他结点:scp ~/.ssh/id_rsa.pub 远程用户名@远程服务器IP:~/

x. 在Slave上创建文件夹mkdir /home/hadoop/.ssh,并改为700权限

xi. cat ~/id_rsa.pub >> ~/.ssh/authorized_keys

chmod 600 ~/.ssh/authorized_keys

xii. 删掉刚才复制过来的文件即可。

xiii. 同理,在从Slave结点向Master结点搭建ssh无密码连接。

二.安装JDK

a) 在Oracle官网上下载jdk1.6.0_31(尽量在官网下载,否则之后可能会出现非常坑爹的情况)

b) 复制到linux虚拟机中(也可以配置vsftpd,利用服务器上传)

i. 进入根权限,mkdir /usr/java

ii. cp /home/hadoop/ jdk-6u31-linux-i586.bin /usr/java

iii. 进入“/usr/java”目录下,修改执行权限chmod +x jdk-6u31-linux-i586.bin

iv. 执行./jdk-6u31-linux-i586.bin

c) 配置环境变量

i. 用vim修改/etc/profile文件

在文件的尾部添加

# set java environment

export JAVA_HOME=/usr/java/jdk1.6.0_31/

export JRE_HOME=/usr/java/jdk1.6.0_31/jre

export CLASSPATH=.:$CLASSPATH:$JAVA_HOME/lib:$JRE_HOME/lib

export PATH=$PATH:$JAVA_HOME/bin:$JRE_HOME/bin

ii. 执行source /etc/profile,使之生效

iii. 执行java -version命令,若看到刚安装的java版本,测成功

iv. 若出现如下错误(官方下载的JDK一般无此问题):

Error occurred during initialization of VM

java/lang/NoClassDefFoundError: java/lang/Object

v. 打开jdk下的lib文件夹,执行unpack200 tools.pack tools.jar

进入/jdk/jre/lib 执行unpack200 rt.pack rt.jar,以及jsse.pack

再次java -version 验证

三.安装hadoop

a) 在官网上下载hadoop(hadoop1.0.0和hadoop1.2.0我都装过)

b) 安装包复制到虚拟机中

c) 解压至并改名至:/usr/hadoop

d) 修改hadoop文件夹的用户分组chown -R hadoop:hadoop hadoop

e) 在hadoop下创建tmp文件夹,一定要把权限修改为777满权限

f) 修改环境变量 vim /etc/profile

在结尾加入:

#set hadoop environment

export HADOOP_HOME=/usr/hadoop

export PATH=$PATH:$HADOOP_HOME/bin

相关阅读

相关推荐