俗话说得好,万事开头难。在软件开发中,环境部署要算是第一门槛了。我最近折腾了一周时间把cdh5.0.2.tar.gz版本在MRv1模式下,成功集成了Kerberos安全认证,并且是在全分布式模式下。经过这次安装过程,对hadoop的了解又深入了一层。现在趁着自己刚搭建完环
俗话说得好,万事开头难。在软件开发中,环境部署要算是第一门槛了。我最近折腾了一周时间把cdh5.0.2.tar.gz版本在MRv1模式下,成功集成了Kerberos安全认证,并且是在全分布式模式下。经过这次安装过程,对hadoop的了解又深入了一层。现在趁着自己刚搭建完环境,脑子还时不时的闪现遇到的错误,把我的安装过程记录于此,一方面方便自己今后查阅,另一方面希望对今后遇到同样问题人有所启发。
首先说下为什么要用tarball安装,cdh提供了一种manager方式进行安装,对Debian系列提供apt-get,对Redhat系列提供yum安装,但是这些安装方式把一些细节都替我们做了,如果我们今后希望遇到出现什么情况,不方便调试。另外,作为一个爱折腾的人,tar.gz也是我按照软件的首选。
先说下我的搭建环境,4台Centos6.5服务器,一台做master,运行namenode、jobtracker;另外三台运行datanode、tasktracker。此外master机器上还运行Kerberos服务器。JDK的版本是1.7.60。关于5.0.2版本的环境要求可以参考http://www.cloudera.com/content/support/en/downloads/cdh/cdh-5-0-2.html#SystemRequirements。
这篇文章主要是我在参照cloudera官网的教程时遇到的坑。大家可以先去看看这个教程,再来看我的文章。
cdh5.0.2这里不再使用hadoop用户,取而代之的是mapred用户与hdfs用户,这里需要分别为它们生产ssh的公钥与秘钥,并且配置免密码登录(当然你可以为其中一个生产,然后直接copy过去)。
1. Kerberos安装
首先,Kerberos的原理、安装什么大家自己去维基百科去查,具体命令像kinit、kadmin怎么用也是大家自己查,以后有时间我会单独抽时间讲讲Kerberos。
大家现在可以按照这个文章来进行操作:Kerberos deploy guide。
后面需要为集群中每个节点的mapred与hdfs用户生成各自的principal与keytab,所以这里大家一定要熟悉kerberos的命令,把这些东西做成脚本,要不能烦死你。
2. CDH5.0.2.tar.gz安装
2.1 下载相关tar包
首先在这里http://archive.cloudera.com/cdh5/cdh/5/下载5.0.2的hadoop的tar包hadoop-2.3.0-cdh5.0.2.tar.gz,除了这个外,为了集成Kerberos,还需要下载bigtop-jsvc-1.0.10-cdh5.0.2.tar.gz。
2.2 YARN模式改成MRv1模式
这里需要讲一点是,5.0.2 tarball版本模式是YARN模式,我这里搭建的是MRv1(也就是普通的MapReduce)模式,所以需要对tar包解压出的文件做一些修改。
把hadoop-2.3.0-cdh5.0.2.tar.gz解压,假设你解压到了/opt目录下,把hadoop-2.3.0-cdh5.0.2直接重命名为hadoop(现在你的cdh根目录是/opt/hadoop),下面进行我们的修改工作:
- 把bin-mapreduce1的所以文件拷贝到bin下,对于相同的文件,直接覆盖即可。
- 在/opt/hadoop/share/hadoop文件夹下有如下的文件结构
把其中的mapreduce这个软链接文件删除,然后创建一个同名的软链接指向mapreduce1
cd /opt/hadoop/share/hadoop/ rm mapreduce -rf ln -s mapreduce1 mapreduce
经过上面这两步后,就默认启用了MRv1模式了,大家可以先把不带Kerberos安全认证的全分布式搭建起来,等到不带Kerberos安全认证的全分布式搭建起来后(可参考Hadoop全分布式搭建),再进行下面的操作。
2.3 配置HDFS
下面大家就可以按照官网的教程进行操作,下面说下我遇到的坑:
- 在STEP 2中,必须参照MRv1 cluster deploy,在hdfs中创建/tmp,与mapred.system.dir制定的目录,并且修改为相应的权限。
- 在STEP 7中,最后的dfs.http.policy这个property不用配置,否则在后面启动namnode是会报.keystore文件找不到的异常。
- STEP 8、9、10可选,配不配都行
- 在STEP 11中,需要配置JSVC_HOME这个属性,这里把我们一开始下载的bigtop-jsvc-1.0.10-cdh5.0.2.tar.gz解压后,放到它制定的位置上即可。
- 在STEP 12、13,启动datanode、namenode时,用sbin下的命令
sbin/hadoop-daemon.sh start namenode sbin/hadoop-daemons.sh start datanode
这两条命令都是用root用户执行。
在这过程中,如果遇到什么logs文件夹不能写入,将其权限改为777即可。
2.4 配置mapreduce
配置mapreduce接着参考官方的教程,下面继续说我遇到的坑:
- 首先是taskcontroller.cfg文件问题,hadoop会在/../../conf/下去找这个文件,所以我们需要在/opt/hadoop下面(也就是我们解压后的根目录下),创建一个conf文件,然后在按照官方说的配置就行了,官方教程中有一条
banned.users=mapred,hdfs,bin
这里这样配置后,后面运行wordcount会报异常,这里可直接将其值配置为bin即可
- 然后就是task-controller这个文件的权限问题了,一定要用下面命令进行修改
chown root:mapred task-controller chmod 4754 task-controller
其解释也在官网上有。
- 当这一切都配置好后,启动jobtracker与tasktracker还是有错,这个错误是
2014-07-15 18:15:25,722 ERROR org.apache.hadoop.mapred.TaskTracker: Can not start task tracker because java.io.IOException: Secure IO is necessary to run a secure task tracker. at org.apache.hadoop.mapred.TaskTracker.checkSecurityRequirements(TaskTracker.java:943) at org.apache.hadoop.mapred.TaskTracker.initialize(TaskTracker.java:976) at org.apache.hadoop.mapred.TaskTracker.<init>(TaskTracker.java:1780) at org.apache.hadoop.mapred.TaskTracker.main(TaskTracker.java:4124) </init>
这个错误是因为缺少native包所致,这个包应该是在/opt/hadoop/lib/native/,很遗憾,这些东西需要我们自己编译,因为每个版本都不一样,我把apache hadoop的native直接copy过去也不行。这里我偷了个懒,直接从同事那里copy过来了。以后会说说如何从源码编译。下面说说如何编译。
cdh的源码都放在src文件夹下,安装好maven后直接到这个文件夹下编译就可以,我这里使用的是centos6.5编译的,遇到的问题主要有:
1. maven repository经常连接不上,需要多次重复操作。以后最好做一个本地repo 2. centos上需要自己安装一些依赖,否则回报各种错误,可以用下面这条命令 yum install -y glibc-headers gcc-c++ zlib-devel openssl-devel 3. 一些test通过不了,需要跳过,用下面这条命令进行编译 mvn package -Pdist,native -DskipTests
好了,如果在编译过程中还是遇到什么依赖缺失,直接去google下就ok了。
- 在用root启动jobtracker与tasktracker命令行会有错误信息,提示我们不能直接用root启动这两个进程,在haooop-env.sh配置下面的信息就好了
export HADOOP_JOBTRACKER_USER=mapred export HADOOP_TASKTRACKER_USER=mapred
启动的命令是
sbin/hadoop-daemon.sh start jobtracker sbin/hadoop-daemons.sh start tasktracker
也有由root启动。
3. 总结
这次搭建过程前前后后用了一个星期,麻烦是一回事,各种权限问题,最主要是还是我对hadoop的基本组成不够了解,hadoop的各个部分都是分开的,在share/hadoop目录下的每个文件夹都对应与一个功能,我一开始就想着把他们都放一起,导致不同模块的配置文件重复并产生冲突,最后导致进程起不来,今后还是要加强对基本概念的理解。其次是遇到错误多看看日志文件,很多错误能够直接根据错误信息就能够改正。
还有需要吐槽的就是不能完全按部就班的照着教程来操作,应该先看看像faq这些信息,做到有个整体上的把握,不至于拆了东墙补西墙,到最后也没能完全解决问题。
下面进行HA的环境搭建,这次一定要提高效率了!!!
俗话说得好,万事开头难。在软件开发中,环境部署要算是第一门槛了。我最近折腾了一周时间把cdh5.0.2.tar.gz版本在MRv1模式下,成功集成了Kerberos安全认证,并且是在全分布式模式下。经过这次安装过程,对hadoop的了解又深入了一层。现在趁着自己刚搭建完环境,脑子还时不时的闪现遇到的错误,把我的安装过程记录于此,一方面方便自己今后查阅,另一方面希望对今后遇到同样问题人有所启发。
原文地址:hadoop1.0 安全认证(kerberos)安装与总结, 感谢原作者分享。

win11安装语言包错误0x800f0950什么原因?当我们在给windows11系统安装新语言包时,有时会遇到系统提示错误代码:0x800f0950,导致语言包安装流程无法继续进行下去。导致这个错误代码一般是什么原因,又要怎么解决呢?今天小编就来给大家说明一下win11安装语言包错误0x800f0950的具体解决步骤,有需要的用户们赶紧来看一下吧。win11电脑错误代码0x800f0950解决技巧1、首先按下快捷键“Win+R”打开运行,然后输入:Regedit打开注册表。2、在搜索框中输入“

GoogleDocs在学校和工作环境中变得很流行,因为它提供了文字处理器所期望的所有功能。使用Google文档,您可以创建文档、简历和项目提案,还可以与世界各地的其他用户同时工作。您可能会注意到GoogleDocs不包括MicrosoftWord附带的所有功能,但它提供了自定义文档的能力。使用正确的字体可以改变文档的外观并使其具有吸引力。GoogleDocs提供了大量字体,您可以根据自己的喜好从中选择任何人。如果您希望将自定义字体添加到Google文档,请继续阅读本文。在本文中

Notepad++主要由开发人员用于编辑源代码,由临时用户用于编辑文本。但是,如果您刚刚升级到Windows11,则在您的系统上下载和安装该应用程序可能具有挑战性。因此,我们将讨论在Windows11上下载和安装记事本++。此外,您可以轻松阅读我们关于修复Notepad++在Windows上没有响应的详细指南。记事本++可以在Windows11上运行吗?是的,记事本++可以在Windows11上有效工作,而不会出现兼容性问题。更具体地说,没有臃肿的选项或错误,只需在一个非常小的编辑器中即可。此外

Steam客户端无法识别您计算机上的任何游戏吗?当您从计算机上卸载Steam客户端时,会发生这种情况。但是,当您重新安装Steam应用程序时,它会自动识别已安装文件夹中的游戏。但是,别担心。不,您不必重新下载计算机上的所有游戏。有一些基本和一些高级解决方案可用。修复1–尝试在同一位置安装游戏这是解决这个问题的最简单方法。只需打开Steam应用程序并尝试在同一位置安装游戏即可。步骤1–在您的系统上打开Steam客户端。步骤2–直接进入“库”以查找您拥有的所有游戏。第3步–选择游戏。它将列在“未分类

<p><strong>HaloInfinite(Campaign)</strong>是一款第一人称射击视频游戏,于2021年11月推出,可供单人和多用户使用。该游戏是Halo系列的延续,适用于Windows、XboxOne和Xbox系列的用户X|S。最近,它还在PC版XboxGamePass上发布,以提高其可访问性。大量玩家报告在尝试使用WindowsPC上的<strong>Xbox应

我们深知MicrosoftWindows11是一个功能齐全且设计吸引人的操作系统。但是,用户一直要求Windows11Lite版本。尽管它提供了重大改进,但Windows11是一个资源匮乏的操作系统,它可能很快就会使旧机器混乱到无法顺利运行的地步。本文将解决您最常问的关于是否有Windows11Lite版本以及是否可以安全下载的问题。跟着!有Windows11Lite版本吗?我们正在谈论的Windows11Lite21H2版本是由Neelkalpa的T

虚拟机怎么安装Win11?近期有用户想要尝试使用VirtualBox虚拟机安装Win11,但是不太清楚具体的操作方法,针对这一情况,小编将为大家演示使用VirtualBox安装Win11的方法,很多小伙伴不知道怎么详细操作,小编下面整理了使用VirtualBox安装Win11的步骤,如果你感兴趣的话,跟着小编一起往下看看吧! 使用VirtualBox安装Win11的步骤 1、要下载VirtualBox,请前往VirtualBox官方下载页面,下载适用于Windows的.exe文件。如果你

微软6月24号正式公布了win11系统,可以看到用户界面、开始菜单等和Windows10X中发现的非常相似。有的朋友在使用预览版的时候发现用的不习惯,想要改win10系统开使用,那么我们要如何操作呢,下面我们就来看看win11改win10系统教程,一起来学习一下吧。1、第一步是从Windows11打开新设置。在这里,您需要转到图像中显示的系统设置。2、在系统设置下,选择“恢复”选项。在这里,您将能够看到“以前版本的窗口”选项。您还可以在它旁边看到一个“返回”按钮,单击此按钮。3、您可以指定要返回


Hot AI Tools

Undresser.AI Undress
AI-powered app for creating realistic nude photos

AI Clothes Remover
Online AI tool for removing clothes from photos.

Undress AI Tool
Undress images for free

Clothoff.io
AI clothes remover

AI Hentai Generator
Generate AI Hentai for free.

Hot Article

Hot Tools

MantisBT
Mantis is an easy-to-deploy web-based defect tracking tool designed to aid in product defect tracking. It requires PHP, MySQL and a web server. Check out our demo and hosting services.

Atom editor mac version download
The most popular open source editor

Dreamweaver Mac version
Visual web development tools

Notepad++7.3.1
Easy-to-use and free code editor

SublimeText3 English version
Recommended: Win version, supports code prompts!
