最近在学习hadoop。网上具体过程很多,我就说说简单过程和注意问题。
环境:宿主机(windows64),虚拟机(centos64)。
准备软件:
1、Vmware——虚拟机
2、centos镜像文件——centos熟悉点
3、hadoop包——用的是1.1.2版本(主要是这个版本资料较多)
4、jdk——hadoop需要java支持
5、ssh secure client——windows操作虚拟机所用
一、Vmware
1、选择虚拟机属性,网络适配器选择桥接模式
二、centos
1、设置网络
最好设置为静态ip,且设置之前最好在windows下ping一下你想设置的Ip,免得出现ip冲突
关闭防火墙 service iptables stop
2、检查网络
虚拟机与宿主互ping成功后,说明网络配置成功。
3、可能问题
linux、windows防火墙未关闭
虚拟机网络连接方式有问题
三、安装jdk
1、用ssh client将jdk文件上传至虚拟机,我选择的目录是/local。
2、修改 /etc/profile文件,增加:
export JAVA_HOME = /local/jdk
export PATH=.:$PATH:$JAVA_HOME/bin
3、测试成功
shell下输入java、javac等
4、注意问题
记的source /etc/profile哦
四、设置DNS解析
1、修改 /etc/hosts, 增加下面两个映射:
192.168.1.30 master
192.168.1.31 slave
2、测试
ping master 成功即可
五、设置ssh免密码登陆
1、生成秘钥
cd ~/.ssh
ssh-keygen -t rsa
各种回车就行
2、生成授权文件
cp id_rsa.pub authorized_keys
3、在主节点和从节点都进行1、2动作
4、在主节点中输入ssh-copy-id -i ~/.ssh/id_rsa.pub slave
5、在从节点中输入ssh-copy-id -i ~/.ssh/id_rsa.pub master
6、测试
互相ssh,看需不需要密码
六、安装hadoop
1、同jdk安装一样,配置相应的环境变量
2、环境变量
export PATH=.:$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
3、测试
shell下输入hadoop
七、修改配置文件
1、环境脚本文件hadoop-env.sh
修改 export JAVA_HOME=/local/jdk,记的删掉"#"
2、修改core-site.xml
<property> <name>fs.default.name</name> //配置NN节点地址和端口号 <value>master:9000</value> //注意格式必须是host:port的形式 </property> <property> <name>hadoop.tmp.dir</name> //hadoop临时目录用来存放nn临时文件 <value>/local/hadoop/tmp</value> //该目录必须预先手工创建不能删除 </property>
3、修改hdfs-site.xml
<property> <name>dfs.replication</name> //数据节点冗余备份的数量,由于实验只有2个 <value>3</value> // NN顾设置唯一,实际配置是可由实际情况 </property>
4、修改mapred-site.xml
<property> <name>mapred.job.tracker</name> <value>master:9001</value> //jobTracker访问路径 </property>
5、在主节点修改masters.xml
localhost
、拷贝到从节点
scp -r /local/hadoop/conf root@slave:/local/hadoop
7、在从节点修改slaves.xml
localhost
slave
八、格式化系统
1、hadoop namenode -format
九、启动
1、start-all.sh
2、检测
jps
主节点有namenode datanode jobtracker tasktracker secondaryNameNode
从节点有datanode tasktracker