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

[经验分享] 配置hadoop

[复制链接]

尚未签到

发表于 2018-11-1 06:09:13 | 显示全部楼层 |阅读模式
一、相关准备  下载hadoop-0.20.2.tar.gz      http://hadoop.apache.org/core/releases.html
  下载 jdk1.6                           http://java.sun.com/javase/downloads/index.jsp
  操作系统为 centos5.3
  并有分区 /data1 /data2
  我这次hadoop环境搭建中所使用的硬件为3台服务器,其中一台作为名称节点(namenode),其余两台作为数据节点(datanode)。
引用namenode: 172.16.27.21             主机名为 master  datanode:  172.16.27.20             主机名为 slave1
  172.16.27.19            主机名为 slave2
  对于Hadoop来说,在HDFS看来,节点分为Namenode 和Datanode,   其中Namenode只有一个,Datanode可以是很多;在MapReduce看来,节点又分为Jobtracker和 Tasktracker,其中Jobtracker只有一个,Tasktracker可以是很多。所以通常有两台master,一台作NameNode,一台作为JobTracker,剩下的都为slaves,同时当做DataNode和 TaskTracker使用。当然也可以将NameNode和JobTracker都放在一台master上面。这里让master做为master和Jobtracker,slave1、slave2作为DataNode和TaskTracker。
  二、配置环境
  1.以root登录每台机器编辑/etc/hosts文件,添加如下内容:
引用172.16.27.21  master  172.16.27.20  slave1
  172.16.27.19  slave2
  2.在每台机器上以root登录,分别建立hadoop用户,密码都为hadoop
引用useradd hadoop  password hadoop
  3.配置SSH环境,实现无密码远程访问
  在Hadoop启动以后,Namenode是通过SSH(Secure Shell)来启动和停止各个datanode上的各种守护进程的,这就需要在节点之间执行指令的时候是不需要输入密码的方式,故我们需要配置SSH使用无密码公钥认证的方式。以hadoop登录master,执行 ssh-keygen -t rsa   然后一路回车,完成后生成 .ssh/id_rsa.pub 把这个文件复制为authorized_keys 看权限是否为644 然后执行127.0.0.1 如果不需要密码登录就达到要求了,然后以hadoop 用户登录数据节点服务器 172.16.27.20 172.16.27.19 执行 ssh-keygen -t rsa 创建.ssh 目录 。然后把名称服务器172.16.27.21 上的authorized_keys 拷贝到数据节点的 /home/hadoop/.ssh/目录下。从名称节点用 ssh hadoop@slave1 ssh hadoop@slave2 登录到数据节点 如果不需要密码能登录成功 则ssh配置正确
  4.在三台机器上安装jdk
引用chmod 755 jdk-6u24-linux-i586-rpm.bin  ./jdk-6u24-linux-i586-rpm.bin
  编辑三台机器的/etc/profile文件,添加如下内容
引用export JAVA_HOME=/usr/java/jdk1.6.0_24  export CLASSPATH=$CLASSPATH:$JAVA_HOME/lib:$JAVA_HOME/jre/lib
  export PATH=$JAVA_HOME/lib:$JAVA_HOME/jre/bin:$PATH:$HOME/bin
  然后执行 source /etc/profile 使其立即生效
引用三、安装配置hadoop  三台机器都需要如下操作或者在其中一台服务器上配置好,然后再拷贝到其他服务器上
  1. 将下载好的 hadoop-0.20.2.tar.gz 解压到 /usr/local 目录
引用tar xvzf hadoop-0.20.2.tar.gz -C /usr/local  mv /usr/local/hadoop-0.20.2 /usr/local/hadoop
  2. 修改文件属主,以便hadoop能正确使用权限
引用chown -R hadoop:hadoop /data1 /data2 /usr/local/hadoop  chmod -R 777 /data1 /data2
  3.修改/etc/profile 文件 设置HADOOP_HOME
引用export HADOOP_HOME=/usr/local/hadoop  source /etc/profile 使其立即生效
  4.修改/usr/local/hadoop/conf/masters 文件为
引用master  5. 修改/usr/local/hadoop/conf/slaves文件为
引用slave1  slave2
  6.修改文件/usr/local/hadoop/conf/hadoop-env.sh
引用export JAVA_HOME=/usr/java/jdk1.6.0_24  export HADOOP_LOG_DIR=/data2/logs
  分区/data2 用于存放hadoop日志
  7.修改配置文件/usr/local/hadoop/conf/mapred-site.xml 使其内容为
引用  
  
  
  
  mapred.job.tracker
  master:54311
  
  
  mapred.child.java.opts
  -Xmx64m
  
  
  8.修改配置文件/usr/local/hadoop/conf/core-site.xml 使其内容为
引用  
  
  
  
  fs.default.name
  hdfs://master:54310/
  
  
  dfs.replication
  3
  
  
  hadoop.tmp.dir
  /data1/hadoop/tmp/
  
  
  dfs.name.dir
  /data1/hadoop/filesystem/name
  
  
  dfs.data.dir
  /data1/hadoop/filesystem/data
  
  
  dfs.block.size
  67108864
  
  
  dfs.permissions
  false
  
  
  dfs.web.ugi
  hadoop,supergroup
  
  
  heartbeat.recheck.interval
  5000
  
  
  分区/data1用于存放HDFS数据
  9.再次修改文件/etc/profile 添加如下内容:
引用export PATH=$PATH:$HADOOP_HOME/bin  然后执行 source /etc/profile 使其立即生效
引用四、初始化和启动hadoop集群  hadoop的大部分操作都是在名称节点进行的,包括初始化、启动以及停止hadoop服务
  1.hadoop初始化
  以hadoop登录namenode,然后执行hadoop namenode -format进行初始化操作。这个操作主要是在名称节点生成若干目录,而各个数据节点并没有进行任何操作。一般没有权限问题的话,hadoop初始化操作都会进行的很顺利。
  2.hadoop服务启动
  在名称服务器执行 start-all.sh 即可启动集群。
  3. 状态查看
  1)查看进程。一般namenode节点有3个java进程,datanode节点有2个java进程
  2)查看端口 查看 54310 54311 50030 50070 50090 端口是否在监听
  3)使用hadoop工具查看
引用hadoop dfsadmin -report  4)浏览器查看hadoop存储状态
  在浏览器输入http://master:50070  http://master:50030 查看其存储状况
  4.停止hadoop服务
引用stop-all.sh  就可以把整个hadoop集群停止下来


运维网声明 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-629066-1-1.html 上篇帖子: 深度分析如何在Hadoop中控制Map的数量 下篇帖子: hadoop,hive启用lzo压缩和创建lzo索引
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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