本文用的hadoop-2.6.0
三台机器,一个namenode
1.1修改主机名
vim /etc/sysconfig/network
NETWORKING=yes
HOSTNAME=hadoop1 #需要修改的地方,三个机器分别修改为hadoop1、hadoop2、hadoop3
1.2修改IP
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE="eth0"
BOOTPROTO="static" ###修改为静态的static
HWADDR="00:0C:29:3C:BF:E7"
IPV6INIT="yes"
NM_CONTROLLED="yes"
ONBOOT="yes"
TYPE="Ethernet"
UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
IPADDR="192.168.1.44" ###修改为本机的ip地址,另两台192.168.1.45、192.168.1.46
NETMASK="255.255.255.0" ###网络掩码
GATEWAY="192.168.1.1" ###网关
DNS1="8.8.8.8" #想上网的话就写上DNS
DNS2="8.8.4.4"
1.3修改主机名和IP的映射关系
vim /etc/hosts
192.168.1.45 hadoop2
192.168.1.46 hadoop3
1.4关闭防火墙
#查看防火墙状态
service iptables status
#关闭防火墙
service iptables stop
#查看防火墙开机启动状态
chkconfig iptables --list
#关闭防火墙开机启动
chkconfig iptables off
1.5重启Linux
reboot
centos 卸载自带的 java
rpm -qa | grep java // 查看jdk的信息
yum -y remove java java-1.4.2-gcj-compat-1.4.2.0-40jpp.115 // 卸载
yum -y remove java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5
2.安装JDK
2.1上传
2.2解压jdk
#创建文件夹
mkdir /usr/java
#解压
tar -zxvf jdk-7u79-linux-x64.tar.gz -C /usr/java/
2.3将java添加到环境变量中
vim /etc/profile
#在文件最后添加
export JAVA_HOME=/usr/java/jdk1.7.0_79
export PATH=$PATH:$JAVA_HOME/bin
#刷新配置
source /etc/profile
3.配置ssh免登陆
生成ssh免登陆密钥
cd ~,进入到我的home目录
ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免登陆的机器上
ssh-copy-id hadoop1
ssh-copy-id hadoop2
ssh-copy-id hadoop3
4.安装Hadoop
4.1上传hadoop安装包
4.2解压hadoop安装包
mkdir /cloud
#解压到/cloud/目录下
tar -zxvf hadoop-2.6.0.tar.gz -C /cloud/
4.3修改配置文件(5个)
第一个:hadoop-env.sh
#在27行修改
export JAVA_HOME=/usr/java/jdk1.7.0_79
第二个:core-site.xml
<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://hadoop1:8020</value>
</property>
<property>
<name>hadoop.tmp.dir</name>
<value>/cloud/hadoop-2.6.0/tmp</value>
</property>
</configuration>
第三个:hdfs-site.xml
<configuration>
<property>
<name>dfs.replication</name>
<value>3</value>
</property>
<property>
<name>dfs.permissions</name>
<value>false</value>
</property>
</configuration>
第四个:mapred-site.xml
需要重命名: cp mapred-site.xml.template mapred-site.xml
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
第五个:yarn-site.xml
<configuration>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.resourcemanager.hostname</name>
<value>hadoop1</value>
</property>
</configuration>
4.4将hadoop添加到环境变量
vim /etc/profile
export JAVA_HOME=/usr/java/jdk1.7.0_79
export HADOOP_HOME=/cloud/hadoop-2.6.0
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
source /etc/profile
4.5格式化HDFS(namenode)第一次使用时要格式化
hadoop namenode -format(过时了)
hdfs namenode -format
4.6启动hadoop
./start-all.sh(过时了)
先启动HDFS
sbin/start-dfs.sh
再启动YARN
sbin/start-yarn.sh
4.7验证是否启动成功
在hadoop1上面使用jps命令验证
27408 NameNode
28218 Jps
27643 SecondaryNameNode
28066 NodeManager
27803 ResourceManager
27512 DataNode
在hadoop2、hadoop3上面使用jps命令验证
Jps
NodeManager
DataNode
http://192.168.1.44:50070 (hdfs管理界面)
http://192.168.1.44:8088 (yarn管理界面)
在windows系统中添加linux主机名和IP的映射关系
C:\Windows\System32\drivers\etc\hosts
192.168.1.44 hadoop1
192.168.1.45 hadoop2
192.168.1.46 hadoop3