一台namenode,机器为master,ip为192.168.10.196
其余为datanode,分别为slave1,slave2,slave3,slave4.
datanode与namenode安装相同。不同处将给出。
(一)配置网卡
vim /etc/sysconfig/network-scripts/ifcfg-eth0
ONBOOT="yes"
IPADDR=192.168.10.198
BOOTPROTO=none
NETMASK=255.255.255.0
TYPE=Ethernet
GATEWAY=192.168.10.1
(2)查看网卡是否挂起
service network restart
ifconfig
(3)关闭防火墙
/etc/init.d/iptables stop
vim /etc/sysconfig/selinux
SELINUX=disabled
setenforce 0
(4)光驱挂到本地目录
mkdir -p /mnt/cdrom
mount /dev/cdrom /mnt/cdrom
(5)配置本地源
vim /etc/yum.repos.d/mycdrom.repo
[Server]
name=rhel6server
baseurl=file:///mnt/cdrom/Server
enable=1
gpcheck=1
gpgkey=file:///mnt/cdrom/RPM-GPG-KEY-redhat-release
(6)添加到/etc/rc.local,开机启动
vim /etc/rc.local
mount /dev/cdrom /mnt/cdrom
(二)系统配置
(1)vim /etc/sysconfig/network
修改HOSTNAME=node4
(2)vim /etc/hosts添加
192.168.10.196 master
192.168.10.197 slave1
192.168.10.198 slave2
192.168.10.228 slave3
192.168.10.229 slave4
如果为slave3为例,如下
192.168.10.228 slave3#当前节点在最前面
192.168.10.196 master
192.168.10.197 slave1
192.168.10.198 slave2
192.168.10.229 slave4
(3)重启init 6
(4)关闭防火墙/etc/init.d/iptables stop
(四)安装ssh协议
(1)yum install ssh
(2)yum install rsync
(3)/etc/init.d/sshd restart
(五)生成密钥
(1)ssh-keygen -t rsa
(2)cd /root/.ssh/
(3)cp id_rsa.pub authorized_keys
(4)使用ssh协议将namenode的公钥信息authorized_keys复制到所有datanode的authorized_keys里。
所有datanode复制到namenode里。
(5)vim /etc/ssh/sshd_config #在配置文件中开启公钥验证
在文件中进行如下修改:去掉三个#
RSAAuthentication yes
PubkeyAuthentication yes
AuthorizedKeysFile .ssh/authorized_keys
(6)重新开启服务/etc/init.d/sshd restart
这样配置后,namenode可实现无密码登陆所有datanode。每个datanode也能无密码验证SSH登陆到namenode
通过ssh 验证
(六)安装jdk
(1)java -version,如有openjdk的东东要删除
(2)yum remove -y java-1.6.0-openjdk
(3)安装jdk
cd /usr/local
chmod +x jdk-6u27-linux-x64.bin #使jdk-6u27-linux-x64.bin可执行
./jdk-6u27-linux-x64.bin #执行jdk-6u27-linux-x64.bin,安装完出现jdk1.6.0_27
mkdir /usr/java #将jdk1.6.0_27移到/usr/java下,方便环境变量配置
mv jdk1.6.0_27/ /usr/java/
(4)配置环境
①vim /etc/profile
添加
export JAVA_HOME=/usr/java/jdk1.6.0_27 #上面jdk目录
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/jre/lib:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
②source /etc/profile
查看版本java -version 如果为1.6.0_27 则正确
(七)安装hadoop
(1)mkdir /usr/local/hadoop/
cd /usr/local/hadoop/
(2)tar zxf hadoop-0.20.204.0.tar.gz
(7)mkdir /usr/local/hadoop/hadoop-0.20.204.0/tmp
(3)mkdir /usr/local/hadoop/hadoop-0.20.204.0/hadoop
(4)mkdir /usr/local/hadoop/hadoop-0.20.204.0/hadoop/data
(5)mkdir /usr/local/hadoop/hadoop-0.20.204.0/hadoop/name
(6)在vim /etc/profile
添加
#set hadoop path
export HADOOP_HOME=/usr/local/hadoop/hadoop-0.20.204.0/
export PATH=$HADOOP_HOME/bin:$PATH
(7)source /etc/profile
(8)修改hadoop配置文件
①cd /usr/local/hadoop/hadoop-0.20.204.0/conf/
②vim hadoop-env.sh
在末尾加上
export JAVA_HOME=/usr/java/jdk1.6.0_27
③vim core-site.xml
<property>
<name>fs.default.name</name>
<value>hdfs://192.168.10.197:9000</value>
<description> namenode </description>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/usr/local/hadoop/hadoop-0.20.204.0/tmp</value>
<description> Hadoop</description>
</property>
<property>
<name>dfs.name.dir</name>
<value>/usr/local/hadoop/hadoop-0.20.204.0/hadoop/name</value>
<description>111</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/usr/local/hadoop/hadoop-0.20.204.0/hadoop/data</value>
<description> data.dir</description>
</property>
④vim hdfs-site.xml
<property>
<name>dfs.replication</name>
<value>1</value>
<description>3 </description>
</property>
vim mapred-site.xml
<property>
<name>mapred.job.tracker</name>
<value>http://192.168.10.197:9001</value>
</property>
⑤ vim masters
192.168.10.196
⑥ vim slaves
192.168.10.197
192.168.10.198
192.168.10.228
192.168.10.229
⑦/usr/local/hadoop/hadoop-0.20.204.0/bin
在hadoop找jvm,去掉jvm
注意:datanode修改masters和slaves两个文件,将其清空,即去掉localhost