设为首页 收藏本站
查看: 881|回复: 0

[经验分享] [Hadoop] 完全分布式集群安装过程详解

[复制链接]

尚未签到

发表于 2016-12-7 07:41:55 | 显示全部楼层 |阅读模式
  1.用Vmware Workstation创建4个虚拟机,每个虚拟机都装上Centos(版本:CentOS-6.3-x86_64),示意图如下:

DSC0000.jpg
  2.在所有结点上修改/etc/hosts,使彼此之间都能够用机器名解析IP
  192.168.231.131   node01
  192.168.231.132node02
  192.168.231.133node03
  192.168.231.134node04
  3. 在所有结点上安装JDK
  首先,把jdk安装包(jdk-6u38-linux-x64.bin)放到/usr/java
  增加可执行权限:
  [iyunv@localhost java]# chmod a+xjdk-6u38-linux-x64.bin
  [iyunv@localhost java]# ls -lrt
  total 70376
  -rwxr-xr-x. 1 root root 72058033 Jan 2907:21 jdk-6u38-linux-x64.bin
  下面开始安装JDK:
  [iyunv@localhost java]# ./jdk-6u38-linux-x64.bin
  更改/etc/profile,添加以下几行:
  JAVA_HOME=/usr/java/jdk1.6.0_38
  JRE_HOME=/usr/java/jdk1.6.0_38/jre/
  CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/lib/tools.jar
  PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
  测试是否安装成功:
  [iyunv@localhost java]# source /etc/profile
  [iyunv@localhost java]# java -version
  java version "1.6.0_38"
  Java(TM) SE Runtime Environment (build1.6.0_38-b05)
  Java HotSpot(TM) 64-Bit Server VM (build20.13-b02, mixed mode)
  4. 添加Hadoop用户
  [iyunv@node02 ~]# useradd hadoop -g root
  [iyunv@node02 ~]# passwd hadoop
  Changing password for user hadoop.
  New password:
  BAD PASSWORD: it is too short
  BAD PASSWORD: is too simple
  Retype new password:
  passwd: all authentication tokens updatedsuccessfully.
  5. ssh 配置
  注意:下面开始以hadoop用户操作
  [hadoop@node01 ~]$ ssh-keygen -t rsa
  Generating public/private rsa key pair.
  Enter file in which to save the key(/home/hadoop/.ssh/id_rsa):
  Created directory '/home/hadoop/.ssh'.
  Enter passphrase (empty for no passphrase):
  Enter same passphrase again:
  Your identification has been saved in /home/hadoop/.ssh/id_rsa.
  Your public key has been saved in/home/hadoop/.ssh/id_rsa.pub.
  The key fingerprint is:
  1d:03:8c:2f:99:95:98:c1:3d:8b:21:61:3e:a9:cb:bfhadoop@node01
  The key's randomart image is:
  +--[ RSA 2048]----+
  |oo.B.. |
  |o..* *. |
  |+. B oo |
  | ..= o. o |
  |. .S . |
  | . . |
  |o |
  |. |
  |E. |
  +-----------------+
  [hadoop@node01 ~]$ cd .ssh
  [hadoop@node01 .ssh]$ cp id_rsa.pubauthorized_keys
  把所有结点的authorized_keys的内容都互相拷贝,这样就可以免密码ssh连入。
  6. 安装Hadoop
  [hadoop@node01 ~]$ ls
  hadoop-0.20.2 hadoop-0.20.2.tar.gz
  [hadoop@node01 ~]$ tar xzvf./hadoop-0.20.2.tar.gz
  7. 配置namenode (node01)
  修改hadoop-env.sh
  [hadoop@node01 conf]$ vi hadoop-env.sh
  # The java implementation to use. Required.
  export JAVA_HOME=/usr/java/jdk1.6.0_38
  修改core-site.xml
  [hadoop@node01 conf]$ vi core-site.xml
  <configuration>
  <property>
  <name>fs.default.name</name>
  <value>hdfs://192.168.231.131:9000</value>
  </property>
  </configuration>
  修改hdfs-site.xml
  [hadoop@node01 conf]$ vi hdfs-site.xml
  <configuration>
  <property>
  <name>dfs.data.dir</name>
  <value>/home/hadoop/hadoop-0.20.2/data</value>
  </property>
  <property>
  <name>dfs.replication</name>
  <value>3</value>
  </property>
  </configuration>
  修改mapred-site.xml
  [hadoop@node01 conf]$ vi mapred-site.xml <configuration>
  <property>
  <name>mapred.job.tracker</name>
  <value>192.168.231.131:9001</value>
  </property>
  </configuration>
  修改masters和slaves文件,记录集群中各个结点
  [hadoop@node01 conf]$ vi masters
  node01
  [hadoop@node01 conf]$ vi slaves
  node02
  node03
  node04
  向其它3个结点复制hadoop
  [hadoop@node01 ~]$ scp -r ./hadoop-0.20.2node02:/home/hadoop
  [hadoop@node01 ~]$ scp -r ./hadoop-0.20.2node03:/home/hadoop
  [hadoop@node01 ~]$ scp -r ./hadoop-0.20.2node04:/home/hadoop
  8. 在各个结点上配置hadoop环境变量
  [hadoop@node01 ~]$ su - root
  Password:
  [iyunv@node01 ~]# vi /etc/profile
  exportHADOOP_INSTALL=/home/hadoop/hadoop-0.20.2
  export PATH=$PATH:$HADOOP_INSTALL/bin
  9. 格式化HDFS
  [hadoop@node01 bin]$ ./hadoop namenode-format
  13/01/30 00:59:04 INFO namenode.NameNode:STARTUP_MSG:
  /************************************************************
  STARTUP_MSG: Starting NameNode
  STARTUP_MSG: host = node01/192.168.231.131
  STARTUP_MSG: args = [-format]
  STARTUP_MSG: version = 0.20.2
  STARTUP_MSG: build =https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707;compiled by 'chrisdo' on Fri Feb 19 08:07:34 UTC 2010
  ************************************************************/
  13/01/30 00:59:04 INFO namenode.FSNamesystem:fsOwner=hadoop,root
  13/01/30 00:59:04 INFOnamenode.FSNamesystem: supergroup=supergroup
  13/01/30 00:59:04 INFOnamenode.FSNamesystem: isPermissionEnabled=true
  13/01/30 00:59:04 INFO common.Storage:Image file of size 96 saved in 0 seconds.
  13/01/30 00:59:04 INFO common.Storage:Storage directory /tmp/hadoop-hadoop/dfs/name has been successfully formatted.
  13/01/30 00:59:04 INFO namenode.NameNode:SHUTDOWN_MSG:
  /************************************************************
  SHUTDOWN_MSG: Shutting down NameNode atnode01/192.168.231.131
  ************************************************************/
  10.启动守护进程
  注意,在启动守护进程之前,一定要先关闭防火墙(所有的结点都要),否则datanode启动失败。
  [iyunv@node04 ~]# /etc/init.d/iptables stop
  iptables: Flushing firewall rules: [OK ]
  iptables: Setting chains to policy ACCEPT:filter [ OK ]
  iptables: Unloading modules: [ OK ]
  最好设置开机就不启动防火墙:
  [iyunv@node01 ~]# vi /etc/sysconfig/selinux
  SELINUX=disable
  [hadoop@node01bin]$ ./start-all.sh
  startingnamenode, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-namenode-node01.out
  node03:starting datanode, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-datanode-node03.out
  node02:starting datanode, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-datanode-node02.out
  node04:starting datanode, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-datanode-node04.out
  hadoop@node01'spassword:
  node01:starting secondarynamenode, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-secondarynamenode-node01.out
  startingjobtracker, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-jobtracker-node01.out
  node03:starting tasktracker, logging to /home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-tasktracker-node03.out
  node02:starting tasktracker, logging to/home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-tasktracker-node02.out
  node04:starting tasktracker, logging to /home/hadoop/hadoop-0.20.2/bin/../logs/hadoop-hadoop-tasktracker-node04.out
  检测守护进程启动情况:
  Master结点:
  [hadoop@node01 jdk1.6.0_38]$ /usr/java/jdk1.6.0_38/bin/jps
  3986 Jps
  3639 NameNode
  3785 SecondaryNameNode
  3858 JobTracker
  Slave结点(以node02为例):
  [iyunv@node02 ~]# /usr/java/jdk1.6.0_38/bin/jps
  3254 TaskTracker
  3175 DataNode
  3382 Jps

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.iyunv.com/thread-310634-1-1.html 上篇帖子: Hadoop学习笔记 2 下篇帖子: Hadoop 分布式文件系统
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表