Hadoop环境搭建笔记

来源:互联网 发布:js 判断是否为整数 编辑:程序博客网 时间:2024/05/01 18:34

1.安装ubuntu系统14.04(该步骤比较简单,故不展开)

2.创建hadoop用户组以及用户

(1)创建用户组:sudo addgroup hadoop

(2)创建用户:sudo adduser --ingroup hadoop hadoop

(3)设置管理员权限:

           1)sudo vim /etc/sudoers

           2)在root ALL=(ALL:ALL)ALL后面增加 : hadoop ALL=(ALL:ALL)ALL

           3)source /etc/sudoers

PS: 1)创建完hadoop用户之后所有的操作都在该用户下执行:su hadoop

          2)创建hadoop用户只是为了方便管理,并非必须步骤;

3.安装JAVA

(1)官网下载jdk(jdk1.8.0_45)

(2)直接解压:tar -zxvf  

(3)配置环境变量:

         1)vim ~/.bashrc

         2)添加指令:

               export JAVA_HOME=jdk解压路径

               export CLASSPATH=.:$JAVA_HOME/lib/tools.jar

               export PATH=$JAVA_HOME/bin:$PATH

        3)source ~/.bashrc

(4)测试是否安装成功:java -version 与javac -version

4.下载hadoop(hadoop-1.2.1.tar.gz)

(1)直接解压:tar -zxvf 

(2)配置环境变量:

          1)vim ~/.bashrc

          2)添加指令:export PATH=/usr/local/lib/hadoop-1.2.1/bin:$PATH

          3)source ~/.bashrc

5.配置hadoop-env.sh

(1)进入hadoop目录;

(2)vim hadoop-env.sh

(3)添加指令:

           export JAVA_HOME=jdk解压路径

(4)source hadoop-env.sh

6.测试是否安装成功:hadoop version

(一)单机模式

1.安装ssh并配置无密码登陆

(1)安装ssh:sudo apt-get install ssh

(2)生成公钥/私钥对:ssh-keygen -t rsa -P " "

PS:1)ssh有2种生成密钥的认证协议,分别是rsa与dsa,这里我们选用rsa;

         2)-P表示密码,“ ”表示密码为空;

(3)在/home/hadoop/.ssh/目录下,生成2个文件:id_rsa与id_rsa.pub,也就是私钥/公钥对;

(4)将公钥追加到authorized_keys中:cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

(5)测试是否可以免密码登陆:ssh localhost

2.运行demo(wordcount)

(1)创建输入:mkdir input

                           cp conf/* input

PS:单机模式下没有启动hdfs,因此创建文件还是在linux原来的文件系统上创建;

(2)运行例子: hadoop jar hadoop-examples-1.2.1.jar wordcount input output

(3)显示输出:运行例子后生成一个output目录,cat output/*


(二)伪分布模式

1.在单机模式基础上,配置core-site.xml,hdfs-site.xml,mapred-site.xml文件

(1)core-site.xml:Hadoop Core的配置项,例如HDFS和MapReduce常用的I/O设置等

  1. <configuration>  
  2.     <property>  
  3.         <name>fs.default.name</name>  
  4.         <value>hdfs://localhost:9000</value>  
  5.     </property>  
  6.     <property>  
  7.         <name>hadoop.tmp.dir</name>  
  8.         <value>/usr/local/lib/hadoop-1.2.1/tmp</value>  
  9.     </property>  
  10. </configuration>  
(2)hdfs-site.xml:Hadoop 守护进程的配置项,包括namenode,辅助namenode和datanode等

  1. <configuration>  
  2.     <property>  
  3.         <name>dfs.replication</name>  
  4.         <value>2</value>  
  5.     </property>  
  6.     <property>  
  7.         <name>dfs.name.dir</name>  
  8.         <value>/usr/local/lib/hadoop-1.2.1/datalog1,/usr/local/lib/hadoop-1.2.1/datalog2</value>  
  9.     </property>  
  10.     <property>  
  11.         <name>dfs.data.dir</name>  
  12.         <value>/usr/local/lib/hadoop-1.2.1/data1,/usr/local/lib/hadoop-1.2.1/data2</value>  
  13.     </property>  
  14. </configuration>  
(3)mapred-site.xml: MapReduce 守护进程的配置项,包括jobtracker和tasktracker

  1. <configuration>     
  2.     <property>    
  3.         <name>mapred.job.tracker</name>  
  4.         <value>localhost:9001</value>     
  5.     </property>  
  6. </configuration>

2.格式化namenode:hadoop namenode -format


3.运行demo(wordcount)

(1)启动hadoop所有服务:start-all.sh


(2)可以用java的jps指令来列出所有的守护进程:


也可以登录web管理控制台:

http://localhost:50030/ - Hadoop 管理介面
http://localhost:50060/ - Hadoop Task Tracker 状态
http://localhost:50070/ - Hadoop DFS 状态

(3)在hdfs系统中创建input目录:hadoop dfs -mkdir input

(4)将conf目录下的文件复制到input中:hadoop dfs -copyFromLocal /usr/local/lib/hadoop-1.2.1/conf/* input

(5)在伪分布模式下运行wordcount:hadoop jar /usr/local/lib/hadoop-1.2.1/hadoop-examples-1.2.1.jar wordcount input output


(6)查看运行结果:hadoop dfs -cat output/*

(7)关闭hadoop所有服务:stop-all.sh


(三)全分布模式

1.配置局域网络:这里我们以3台机子进行测试,分别是master,slave1,slave2,修改/etc/hosts文件:

master:192.168.237.128

slave1:192.168.237.129

slave2:192.168.237.130

2.配置hadoop目录下的masters文件以及slaves文件:

(1)masters文件输入:

master

(2)slaves文件输入:

master

slave1

slave2

3.配置ssh无密码登陆:

(1)在master上生成密钥:

sudo apt-get install ssh

ssh-keygen -t rsa -P " "

cat ~/.ssh/id_rsa.pub>>~/.ssh/authorized_keys

(2)将公钥复制到slave1跟slave2上:

scp authorized_keys slave1:/home/hadoop/.ssh

scp authorized_keys slave2:/home/hadoop/.ssh

(3)此时就可以从master无密码ssh登陆slave1根slave2了;

4.运行demo(跟伪分布式一样)

0 0
原创粉丝点击
热门问题 老师的惩罚 人脸识别 我在镇武司摸鱼那些年 重生之率土为王 我在大康的咸鱼生活 盘龙之生命进化 天生仙种 凡人之先天五行 春回大明朝 姑娘不必设防,我是瞎子 奶奶出钱由孙子抓奖中奖后怎么办 我不想学车了驾校不同意退学怎么办 2017年大学挂科面临退学怎么办 微信重新登录后东西全没了怎么办 宝宝吃鸡蛋过敏全身起红疹怎么办 180在产蛋鸡因断鸡减产怎么办 住友39熔接机熔接损耗大怎么办 支付宝实名认证刷脸失败怎么办 支付宝注册刷脸不是本人怎么办 小学科学只考88分中学怎么办 收银机关机时才上传数据是怎么办 刚做的系统玩cf卡屏怎么办 办健康证的资料掉了怎么办 刚刚办得的健康证掉了怎么办 房子都过户了银行贷不了款怎么办 我要办大病迁出应该怎么办啊? 遗产继承后户口没地迁出怎么办 安徽蒙城怎么办去韩国的签证的 夜间有人私自收停车费应该怎么办 上次摸不到环尾丝这次摸到了怎么办 法院判决书下来后对方不给钱怎么办 法院判决书下来了钱还保全么怎么办 深圳路边泊车不知道泊车编号怎么办 当事人进拘留所了我的工资怎么办 昆明公租房住满5年后怎么办 昆明公租房房子到期缴纳金怎么办 看守所犯人银行卡里钱没用完怎么办 中国邮政迟迟没有把信件寄到怎么办 拘留15天放出来还不肯还钱怎么办 人死在拘留所不让看监控怎么办 家人吸毒可他又不愿强戒怎么办 容留他人吸毒时签了强戒怎么办 拘留后发现被拘留是人大代表怎么办 执行局要拘留人找不到人怎么办 开设赌场罪拘留37天了该怎么办 对治安处罚光罚款不拘留怎么办 打架和解后警察不给消案怎么办 12个人片诈骗刑拘了28天怎么办 交警拘留几天后还是没钱赔偿怎么办 平安车主信用卡车牌号填错了怎么办 起诉借钱的人逮起来了怎么办