集群安装配置hadoop
集群节点:node4、node5、node6、node7、node8。具体架构:
<col>
node4
namenode,secondnamenode,jobtracker
node5
datanode,tasktracker
node6
node7
node8
操作系统为:centos release 5.5 (final)
安装步骤
一、创建hadoop用户组。
二、安装jdk。下载安装jdk。安装目录如下:
三、修改机器名,修改文件/etc/hosts。如下:
四、安装ssh服务。命令:yum install openssh-server。
五、建立ssh无密码登陆。
(一)切换到hadoop用户。su – hadoop
(二)创建ssh-key,利用ssh-keygen命令,采用rsa方式生成密钥。命令:ssh-keygen -t rsa -f ~/.ssh/id_rsa,产生公钥:~/.ssh/id_rsa.pub。
(三)将公钥添加至authorized_keys中。命令:
cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys
(四)修改authorized_keys文件权限:
(五) 编辑sshd配置文件/etc/ssh/sshd_confi把#authorizedkeysfile .ssh/authorized_keys前面的注释取消掉。
(六)重新启动sshd服务。
(七)将authorized_keys文件复制到其他节点上(node5——8)。如下:
(八)测试ssh连接。连接时会提示是否连接,按回车后会将此公钥加入至knows_hosts中,命令:
ssh localhost;
连接成功后,记得exit,退出远程机器。
六、将hadoop相关程序下载上传到node4上。
下载使用的hadoop版本为1.2.1。
七、安装配置hadoop
(一)登陆node4,切换hadoop用户。创建安装目录,解压hadoop,命令:
mkdir hadoop_program //创建hadoop安装目录。
cp hadoop/hadoop-1.2.1.tar.gz hadoop_program/ //将hadoop程序cp到hadoop安装目录下。
cd hadoop_program/ //cd到该目录。
tar -xvf hadoop-1.2.1.tar.gz //解压hadoop程序。
mv hadoop-1.2.1 hadoop //将hadoop目录改名字
(二)创建环境hadoop相关环境变量。
修改conf/hadoop-env.sh。找到#export java_home=...,去掉注释#,然后加上本机的jdk路径(在第二步安装的路径),如下:
添加hadoop_home环境变量,命令:vim ~/.bashrc。添加如下:
(三)修改hadoop配置文件
修改conf/core-site.xml文件。
修改mapred-site.xml文件
修改hdfs-site.xml
修改masters文件
修改slaves文件
八 将配置好的hadoop和jdk复制到其他节点上:
九。启动hadoop测试是否安装成功。
命令:hadoop namenode -format(首先格式化namenode)。
命令:start-all.sh (启动hadoop)。
命令:cd到jdk的bin目录下。运行jps命令。察看:
node4:
运行正常。
node5-8:
十。遇到问题。
1、安装的过程发现node5-8无法启动datanode和tasktracker,后来发现原因为node5-8机器中已经运行了java程序。用ps -ef|grep java察看,关闭相关进程后,再启动hadoop后正常。
2、使用过程中,出现错误:bad connect ack with firstbadlink,解决办法:
1) ‘/etc/init.d/iptables stop‘ -->stopped firewall
2) selinux=disabled in ‘/etc/selinux/config‘ file.-->disabled selinux