前期准备工作: 1.改动Linux主机名:/etc/hostname ubuntu系统:vi /etc/hostname 将ubuntu默认的主机名ubuntu改为suh01 2.改动IP:/etc/network/interfaces 改动配置文件/etc/network/interfaces vi /etc/network/interfaces #将原来的内容凝视掉: #auto lo #iface lo inet loopback #然后加入下面内容: auto eth0 #设置自己主动启动eth0接口 iface eth0 inet static #配置静态IP address 192.168.1.101 #IP地址 netmask 255.255.255.0 #子网掩码 gateway 192.168.1.1 #默认网关 3.改动主机名和IP的映射关系:/etc/hosts vi /etc/hosts #127.0.0.1 localhost 192.168.1.201 suh01 192.168.1.202 suh02 192.168.1.203 suh03 4.查看防火墙状态、关闭防火墙:ufw status 、ufw disable 5.安装JDK,配置环境变量等。 5.1上传:使用ftp工具上传jdk安装文件 #创建文件夹,将安装文件上传至此文件夹下 mkdir /usr/java 5.2解压jdk tar -zxvf jdk-7u76-linux-x64.tar.gz 5.3将java加入到环境变量中 vi /etc/profile #在文件最后加入 export JAVA_HOME=/usr/java/jdk1.7.0_76 export PATH=$PATH:$JAVA_HOME/bin #刷新配置 source /etc/profile 6.ssh免登陆: 6.1在suh01上运行: ssh-keygen -t rsa (直接回车) 运行完这个命令后。会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥) 6.2然后将公钥复制到要免登陆的机器上 ssh-copy-id suh01 (最好也给自己设置免登陆) ssh-copy-id suh02 ssh-copy-id suh03集群规划: 主机名 IP 安装的软件 执行的进程 suh01 192.168.1.201 jdk、hadoop NameNode、JobTracker、SecondaryNameNode suh02 192.168.1.202 jdk、hadoop DataNode、TaskTracker suh03 192.168.1.203 jdk、hadoop DataNode、TaskTracker IP与主机名映射关系 ----------------------- 192.168.1.201 suh01 192.168.1.202 suh02 192.168.1.203 suh03 ----------------------- 安装步骤: 1.安装配置hadoop集群(总共改动了六个配置文件:hadoo-env.sh、core-site.xml、hdfs-site.xml、slaves、yarn-site.xml、mapred-site.xml ) 1.1上传并解压hadoop安装包解压 tar -zxvf hadoop-1.2.1.tar.gz 1.2配置相关文件(hadoop1.2.1全部的配置文件都在hadoop1.2.1/conf文件夹下) cd /home/suh/hadoop-1.2.1/conf 1.2.1改动hadoop-env.sh export JAVA_HOME=/usr/java/jdk1.7.0_76 1.2.2改动core-site.xml <configuration> <property> <name>fs.default.name</name> <value>hdfs://suh01:9000</value> </property> <property> <name>hadoop.tmp.dir</name> <value>/home/suh/hadoop-1.2.1/tmp</value> </property> </configuration> 1.2.3改动hdfs-site.xml <configuration> <property> <name>dfs.replication</name> <value>2</value> </property> </configuration> 1.2.4 改动mapred-site.xml <configuration> <property> <name>mapred.job.tracker</name> <value>suh01:9001</value> </property> </configuration> 1.2.5改动masters 文件,加入例如以下内容: suh01 1.2.6改动slaves 文件,加入例如以下内容: suh02 suh03 1.3将配置好的hadoop复制到其它节点(为了拷贝更高速,建议把/home/hadoop-2.2.0/share 下的doc文件夹删掉:rm -rf doc) scp -r /home/suh/hadoop-1.2.1/ suh@suh02:/home/suh/ scp -r /home/suh/hadoop-1.2.1/ suh@suh03:/home/suh/ ======開始启动集群======= 2.1格式化HDFS 在hdfs的NameNode机器(suh01)上运行命令: ./bin/hadoop namenode -format 2.2启动HDFS(在suh01上运行,这里最好先配置好免登录,不然会提示输入password。免登陆配置在下文有配置步骤) ./bin/start-all.sh 运行成功后进行相关检验: (1)、suh01上多了NameNode、JobTracker、SecondaryNameNode进程。 (2)、接着分别进入到suh02、suh03机器,执行jps命令查看,发现它也启动好了DataNode、TaskTracker进程。 ======hadoop集群启动成功后。进行測试====== 3.1到此,hadoop1.2.1配置完成,能够进行浏览器訪问: http://192.168.1.201:50070 3.2执行wordcount測试 hdfs上创建文件夹: ./bin/hadoop fs -mkdir /in 从linux上传測试数据文件到hdfs上: ./bin/hadoop fs -put /home/suh/test1 /in 运行測试样例: ./bin/hadoop jar hadoop-examples-1.2.1.jar wordcount /in/ /out