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

[经验分享] Hadoop集群安装部署步骤详解

[复制链接]

尚未签到

发表于 2018-10-29 10:16:23 | 显示全部楼层 |阅读模式
  虚拟机安装
  不要用Cgywin
  系统都为32位的Centos 5
  Linux安装ssh协议,安装的时候选中ssh安装包。
DSC0000.png

  一、硬件环境
  2机器,通过hostname进行设置:
  master(192.168.1.102)
  slave1(192.168.1.101)
  该环境目前只有2个节点,有资源的话可以增加slave2、slave3…
  虚拟机上安装linux的话,用使用桥接的方式,在虚拟机系统名称上点右键——设置:
  如果桥接不行可以选NAT
  给每个linux设置固定的ip,因为不设置的话虚拟机每次启动的时候会重新分配ip.
  二、相关软件
  hadoop-0.20.2
  jdk-6u30-linux-i586.bin
  三、JDK1.6安装和配置
  (1)在每台机器上运行二进制文件:./jdk-6u18-linux-x64-rpm.bin或
  (2)编辑每台机器的/etc/profile,增加如下内容
  export  JAVA_HOME=/usr/jdk1.6.0_21

  export >  export  PATH=
  $PATH:$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
  注:环境变量视具体安装情况而定,下同
  四、安装Hadoop 及配置
  (1)以root登录,在master和 slave1上分别修改/etc/hosts,添加如下内容:
  192.168. 1.102  master
  192.168.1.101  slave1
  (2)用root登陆,建立hadoop用户
  useradd hadoop
  passwd hadoop
  输入容易记忆的密码:如hadoop
  (3)进入hadoop目录,使用如下命令:(注意权限问题)
  注意:如果是master和salve的IP有变化的话,需要重新执行此步。
  (出现问题可使用root账户查看/var/log/secure日志文件)
  su - hadoop             #进入hadoop用户目录
  ssh-keygen -t rsa      #建立ssh目录,敲回车到底,这个命令将为hadoop上的用户
  hadoop生成其密钥对,询问其保存路径时直接回车采用默认路径,当提示要为生成的密钥输入passphrase的时候,直接回车,也就是将其设定为空密码。生成的密钥对id_rsa,id_rsa.pub,默认存储在/root/.ssh目录下
  chmod 755.ssh           #赋予755权限
  cd .ssh
  #ls –l

  id_rsa >  (4)这一步骤仅在master上执行,下列命令会提示你输入slave1的密码,按照提示输入即可,如果失败可重新尝试执行命令
  cat ~/.ssh/id_rsa.pub >>~/.ssh/authorized_keys
  #把公用密匙添加到authorized_keys 文件中(此文件最后一定要赋予644权限)
  sshslave1 cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
  #上面条命令是把其他slave节点的公钥拷贝到master节点中的authorized_keys,#有几个slave节点就需要运行几次命令,slave1是节点名称
  scp ~/.ssh/authorized_keysslave1:~/.ssh/authorized_keys
  #把authorized_keys文件拷贝回每一个节点,slave1是节点名称
  (5)在master上连接所有slave节点,输入如下命令,上有几个slave节点就要输入几次,注意每次输入后,要返回master节点,重新输入命令:
  ssh slave1  #需要选择yes/no 选择yes即可
  此时 ls .ssh 结果如下:

  authorized_keys >  (6)Hadoop的安装,将下载好的hadoop-0.20.2.tar.gz文件上传到四台机器上的/usr                   //解压文件
  tar  xvfz  hadoop-0.20.2.tar.gz
  //如出现问题可以用下面两句代替
  gzip-d hadoop-0.20.2.tar.gz
  tar xvf hadoop-0.20.2.tar
  (7)配置/etc/profile
  // 以root登录四台机器,编辑/etc/profile,增加如下内容
  export  HADOOP_HOME=/usr/hadoop-0.20.2
  export PATH=$PATH:$HADOOP_HOME/bin
  (8)修改Hadoop的配置文件,在hadoop文件的conf文件夹中
  A 、masters文件里添加如下内容:
  192.168.1.102
  B、slaves文件添加如下内容:
  192.168.1.101
  注:配置IP的地方尽量不要用主机名,否则不通用,易出问题。
  (9)修改以下共3个xml配置文件:
  首先hadoop-env.sh中添加如下语句:
  export JAVA_HOME=/usr/jdk1.6.0_21
  core-site.xml添加如下语句在之间:
  
  fs.default.name
  hdfs:// 192.168.1.102:9000
  
  注意,这样配成IP 192.168.1.102,不要用主机名master, 否则eclipse里连接不上。
  
  hadoop.tmp.dir
  /home/hexianghui/tmp
  
  mapred-site.xml添加如下语句在之间:
  
  mapred.job.tracker
  192.168.1.102:9001
  
  hdfs-site.xml添加如下语句在之间,
  replication 默认为3,如果不修改,datanode少于三台就会报错
  
  dfs.replication
  1
  
  10、配置好的hadoop发送到salve1上:
  Scp-r /usr/hadoop/hadoop-0.20.2 slave1:/usr/hadoop/
  (11)配置好后在master机器上进入hadoop的bin目录 格式化文件系统(一定要)
  ./hadoopnamenode -format  #格式化文件系统
  ./start-all.sh                      #启动namenode上的hadoop
  确保9001和9000端口是通的。
  jps  查看是否启动正常!
  (12)查看50070,54310,50030端口是否启动 或者远程访问如下链接
  #1080
  #50030
  #50060
  netstat-tnl
  http://master:50070访问
  http://master:50030
  五、打开9000和9001端口方法
  首先,我们需要在CentOS系统中编辑iptables Java代码
  vi /etc/sysconfig/iptables-config
  然后在CentOS系统中添加 Java代码
  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 9000 -jACCEPT
  -A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp --dport 9001 -jACCEPT
  最后CentOS系统要重新启动服务 Java代码
  /sbin/service iptables restart
  查看端口是否开放 Java代码
  netstat –anp|grep900
  /sbin/iptables -L -n
  六:常遇问题解决办法
  1、关闭防火墙,每台机子都要关
  /etc/init.d/iptables stop
  开机就不启动防火墙:
  vi /etc/sysconfig/selinux
  #修改为 SELinux=disable
  service iptables stop
  chkconfig iptables off
  reboot
  这样开机就不启动防火墙了。
  注:如果防火墙未关,可能出现如下错误:
  File/home/hexianghui/tmp/mapred/system/jobtracker.info could only be
  replicated to 0nodes, instead of 1。
  2、修改主机名和设置固定IP
  
  修改主机名vi  /etc/sysconfig/network
  设默认IP   vi  /etc/sysconfig/network-scripts/ifcfg-eth0
  DEVICE=eth0
  #BOOTPROTO=dhcp
  BOOTPROTO=static
  IPADDR=192.168.131.50
  NETMASK=255.255.255.0
  TYPE=Ethernet
  HWADDR=XX:XX:XX:XX:XX:XX
  ONBOOT=yes
  最后重启服务service network restart
  
  
  3、更换IP需要做什么?
  如果master或slave的IP换了,需要做如下操作:
  1、清空Hadoop临时目录 /home/hadoop/tmp
  2、重新执行hadoopnamenode –format 格式化HDFS。
  后果,HDFS上的目录文件会丢失。


运维网声明 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.yunweiku.com/thread-627858-1-1.html 上篇帖子: 部署Hadoop集群为什么优先选择硬件方式而不是虚拟化方式? 下篇帖子: 03Hadoop3与Centos7安装手册
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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