ubuntu 14.04 hadoop部署

第一步:准备三台虚拟机并创建3个hadoop用户

修改hosts文件如下: sudo vim /etc/hosts

 

[python]  view plain  copy
 
  1. 127.0.0.1       localhost    
  2. #127.0.1.1      ubuntu-14.04-Server     ubuntu-14  #一定要注释掉    
  3. 192.168.1.100 Master    
  4. 192.168.1.101 Slave01    
  5. 192.168.1.102 Slave02  

并修改各台主机对应的主机名: sudo vim /etc/hostname
Master

 

 

第二步:三台主机创建新用户且都设置ssh免密码登陆

首先每台主机创建一个新用户叫hadoop。方法如下:

 

 

[python]  view plain  copy
 
  1. sudo useradd -m hadoop -s /bin/bash  
  2. sudo passwd hadoop  
  3. sudo adduser hadoop sudo  
  4. gpasswd -a hadoop root  

#这里的hadoop是自己随意设置的用户名 但3台服务器要统一用户名
其次每台机器上安装ssh:sudo apt-get install openssh-server

 

 

 

第三步:安装jdk1.8

将jdk安装到目录 /usr/local/java中

 

 

 

第四步:下载hadoop安装文件

hadoop安装文件地址:http://mirrors.hust.edu.cn/apache/hadoop/common/
下载到目录下~/hadoop/          三台主机都需要安装hadoop

一定要在hadoop用户下执行解压指令:tar -zxvf hadoop-2.7.3.tar.gz  将hadoop解压安装到目录~/hadoop

 

 

添加hadoop_home环境变量到:/etc/profile里

 

 

[python]  view plain  copy
 
  1. # Java Env  
  2. export JAVA_HOME=/usr/local/java/jdk1.8.0_121  
  3. export PATH=$JAVA_HOME/bin:$PATH  
  4. export CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar  
  5. # Hadoop Env  
  6. export HADOOP_HOME=/home/hadoop/hadoop-2.7.3  
  7. export HADOOP_PREFIX=${HADOOP_HOME}  
  8. export PATH=$PATH:$HADOOP_PREFIX/bin:$HADOOP_PREFIX/sbin  
  9. export HADOOP_COMMON_HOME=${HADOOP_PREFIX}  
  10. export HADOOP_HDFS_HOME=${HADOOP_PREFIX}  
  11. export HADOOP_MAPRED_HOME=${HADOOP_PREFIX}  
  12. export HADOOP_YARN_HOME=${HADOOP_PREFIX}  

 

每台机器执行:source /etc/profile  使环境变量生效
每台机器执行:hadoop version 查看hadoop是否安装成功。

 

第五步:关闭防火墙

 

[python]  view plain  copy
 
  1. $ sudo apt-get install ufw  
  2. $ sudo ufw disable  
  3. $ sudo ufw status  

第六步:需要在hadoop-2.6.0目录下创建一些目录

1. 创建core-site.xml中hadoop.tmp.dir 的目录:hadoop-2.7.3/tmp                                # 这个目录start-dfs.sh时不会自动创建
2. 创建hdfs-site.xml中dfs.namenode.name.dir的目录:hadoop-2.7.3/dfs/name        # 这个目录start-dfs.sh时会自动创建
3. 创建hdfs-site.xml中dfs.datanode.data.dir的目录:hadoop-2.7.3/dfs/data               # 这个目录start-dfs.sh时会自动创建
4. 创建hdfs-site.xml中dfs.journalnode.edits.dir的目录:hadoop-2.7.3/dfs/journal     # 这个目录start-dfs.sh时会自动创建

 

5. 创建journalnode的日志文件logs目录:hadoop-2.7.3/logs                                         # 这个目录start-dfs.sh时会自动创建

 

第七步:修改hadoop配置文件

同理配置其他两台机器
(1) hadoop-env.sh
增加如下两行配置:

 

[python]  view plain  copy
 
  1. export JAVA_HOME=/usr/local/java/jdk1.8.0_121  

(2) core-site.xml

 

 

[python]  view plain  copy
 
  1. <configuration>  
  2.     <property>  
  3.         <name>fs.defaultFS</name>  
  4.         <value>hdfs://Master:9000</value>  
  5.     </property>  
  6.     <property>  
  7.         <name>hadoop.tmp.dir</name>  
  8.         <value>/home/hadoop/hadoop-2.7.3/tmp</value>  
  9.     </property>  
  10. </configuration>  

(3) hdfs-site.xml

 

 

[python]  view plain  copy
 
  1. <configuration>  
  2.     <property>  
  3.         <name>dfs.replication</name>  
  4.         <value>3</value>  
  5.     </property>  
  6. </configuration>  

数据有三个副本
(4) mapred-site.xml (需要用户新建文件,按照mapred-site.xml.default设置即可)

 

 

[python]  view plain  copy
 
  1. <configuration>  
  2.     <property>  
  3.         <name>mapreduce.framework.name</name>  
  4.         <value>yarn</value>  
  5.     </property>  
  6. </configuration>  

(5) yarn-env.sh
增加 JAVA_HOME 配置

 

 

[python]  view plain  copy
 
  1. export JAVA_HOME=/usr/local/java/jdk1.8.0_121  

(6) yarn-site.xml

 

 

[python]  view plain  copy
 
  1. <configuration>  
  2. <!-- Site specific YARN configuration properties -->  
  3.     <property>  
  4.         <name>yarn.nodemanager.aux-services</name>  
  5.         <value>mapreduce_shuffle</value>  
  6.     </property>  
  7.     <property>  
  8.         <name>yarn.resourcemanager.hostname</name>  
  9.         <value>Master</value>  
  10.     </property>  
  11. </configuration>  

 

(7) slaves

[python]  view plain  copy
 
  1. Slave01  
  2. Slave02  

Master(master) 即作为 NameNode 也作为 DataNode。
在 Slave01  和 Slave02 上做同样的配置

 

 

 

[python]  view plain  copy
 
  1. scp /home/hadoop/hadoop-2.7.3/etc/hadoop/*  hadoop@10.0.83.202:/home/hadoop/hadoop-2.7.3/etc/hadoop/ #并且在CDH1中修改蓝色部分数据  
  2. scp /home/hadoop/hadoop-2.7.3/etc/hadoop/*  hadoop@10.0.83.173:/home/hadoop/hadoop-2.7.3/etc/hadoop/ #并且在CDH2中修改蓝色部分数据  

第八步:启动HDFS

第一次启动HDFS集群:

1、执行如下命令:

 

[python]  view plain  copy
 
  1. $ start-dfs.sh  

 

目的是开启所有节点上的journalnode使得信息可以互联。

2、初始化Master节点上的namenode元数据+开启Master的namenode: 

 

[python]  view plain  copy
 
  1. $ hdfs namenode -format  
  2. $ start-dfs.sh  

3、其他Slave01,Slave02等节点上同步Master的初始化namenode元数据信息+开启Slave01Slave02等节点的namenode:

 

[python]  view plain  copy
 
  1. $ hdfs namenode -bootstrapStandby  
  2. #在nn1节点上输入指令 $ start-dfs.sh  

 

4、将Master节点standby状态改成active状态:

[python]  view plain  copy
 
  1. $ hdfs haadmin -transitionToActive nn1  

 

5、查看hdfs的状态:

 

[python]  view plain  copy
 
  1. $ hdfs haadmin -getServiceState nn1  

顺序一定不要变。

6、为HDFS创建HDFS数据库中hadoop用户的工作环境: 

 

[python]  view plain  copy
 
  1. $ hdfs dfs -mkdir -p /user/hadoop  

 

非第一次启动HDFS集群:

 

[python]  view plain  copy
 
  1. $ start-dfs.sh  
  2. $ hdfs haadmin -transitionToActive nn1  
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值