本节和大家学习一下Hadoop安装与使用方法,内容主要包括系统配置,设置ssh无密码登录和配置Hadoop等,希望通过本节的学习你一定会对Hadoop有更加深刻的认识。
Hadoop安装与使用
创新互联公司是网站建设专家,致力于互联网品牌建设与网络营销,专业领域包括做网站、成都网站制作、电商网站制作开发、微信小程序定制开发、微信营销、系统平台开发,与其他网站设计及系统开发公司不同,我们的整合解决方案结合了恒基网络品牌建设经验和互联网整合营销的理念,并将策略和执行紧密结合,且不断评估并优化我们的方案,为客户提供全方位的互联网品牌整合方案!
主要参考:http://blog.chinaunix.net/u/4764/index.html
0. 介绍
对于Hadoop来说,在HDFS看来,节点分为Namenode和Datanode,其中Namenode只有一个,Datanode可以是很多;在 MapReduce看来,节点又分为Jobtracker和Tasktracker,其中Jobtracker只有一个,Tasktracker可以是很 多。当前将namenode和jobtracker部署在wukong1上,wukong2,wukong3作为datanode和 tasktracker。当然也可以将namenode,datanode,jobtracker,tasktracker全部部署在一台机器上。
1. 系统配置
操作系统:unbuntu-7.04
jdk: sun-java6-jdk
hadoop:hadoop-0.13.0 http://www.apache.org/dyn/closer.cgi/lucene/hadoop/
硬件:三台机器,IP配置如下:
wukong1:192.168.100.1,210.45.114.2
wukong2:192.168.100.2
wukong3:192.168.100.3
系统使用:ssh 210.45.114.2 wukong:wukong123
2. 修改每台机器的/etc/hosts,保证每台机器间都可以通过机器名解析
加入下面几行:
192.168.100.1 wukong1 wukong1
192.168.100.2 wukong2 wukong2
192.168.100.3 wukong3 wukong3
3. 设置ssh无密码登录
Hadoop安装在安装时需要设置ssh无密码登录,因为在Hadoop启动以后,Namenode是通过SSH(Secure Shell)来启动和停止各个节点上的各种守护进程的,这就需要在节点之间执行指令的时候是不需要输入密码的方式,故我们需要配置SSH使用无密码公钥认证的方式。在没进行下面的配置前,在wukong1上执行ssh wukong2的操作时,需要输入wukong@wukong2的密码。
配置wukong1上ssh的过程如下。生成密钥对:ssh-keygen -t rsa, 会在~/.ssh/目录下生成id_rsa和id_rsa.pub, 其中id_rsa是私钥,id_rsa.pub是公钥,需要把公钥拷到所有节点的~/.ssh/authorized_keys这个文件中(包括自己本 身,保证ssh登录自己时也不需要密码),如果该文件已经存在则追加到这个文件中。要正确设置authorized_key的权限为644,不然还是不 行,chmod 644 authorized_key。当wukong1向wukong2发起ssh连接的时候,wukong2上就会生成随机数并用wukong1的公钥对这个 随机数进行加密,并发送给wukong1;wukong1收到这个加密的数以后用私钥进行解密,并将解密后的数发送回wukong2,wukong2确认 解密的数无误后就允许wukong1进行连接了。这就完成了一次公钥认证过程。这时,可以测试一下,ssh wukong2是不是已经不再需要输入密码了。
对于每个节点都要进行上面类似的操作,保证该节点到其它节点的ssh连接不需要输入密码。
4. 配置hadoop
由于Hadoop要求所有机器上hadoop的部署目录结构要相同,并且都有一个相同的用户名的帐户。
三台机器上是这样的:都有一个wukong的帐户,主目录是/home/wukong。
把hadoop-0.13.0.tar.gz放到所有节点的~/目录下,wukong@wukong1:~$tar zxvf hadoop-0.13.0.tar.gz
会在~/目录下生成一个hadoop-0.13.0目录,为了方便以后版本升级,建立一个链接指向要使用的hadoop版本,不妨设为hadoopwukong@wukong1:~$ln -s hadoop0.12.0 hadoop
这样一来,所有的配置文件都在/hadoop/conf/目录中,所有执行程序都在/hadoop/bin目录中。
但是由于上述目录中hadoop的配置文件和hadoop安装目录是放在一起的,这样一旦日后升级hadoop版本的时候所有的配置文件都会被覆盖,因 此将配置文件与安装目录分离,一种比较好的方法就是建立一个存放配置文件的目录,/home/wukong/hadoop-config/,然后将 /hadoop/conf/目录中的hadoop_site.xml,slaves,hadoop_env.sh,masters,这4个文件拷贝到 hadoop-config/目录中,并指定环境变量$HADOOP_CONF_DIR指向该目录。环境变量在/home/wukong/.bashrc 中设定。
在hadoop-conf/目录下,打开slaves文件,该文件用来指定所有的从节点,一行指定一个主机名,slaves内容如下:
wukong@wukong1:~/hadoop-config$ cat slaves
wukong2
wukong3
在hadoop-conf/目录下,打开masters文件指定主节点,masters内容如下:
wukong@wukong1:~/hadoop-config$ cat masters
wukong1
在conf/目录中的hadoop-default.xml中包含了Hadoop的所有配置项,但是不允许直接修改!可以在hadoop-conf/目录 下的hadoop-site.xml里面定义我们需要的项,其值会覆盖hadoop-default.xml中的默认值。可以根据自己的实际需要来进行定 制。
Hadoop环境变量
在/home/wukong/hadoop-conf目录下的hadoop_env.sh中设置Hadoop需要的环境变量,其中JAVA_HOME是必 须设定的变量。HADOOP_HOME变量可以设定也可以不设定,如果不设定,HADOOP_HOME默认的是bin目录的父目录,即本文中的 /home/wukong/hadoop。当前设置:
export JAVA_HOME=/usr/lib/jvm/java-6-sun
export HADOOP_HOME=/home/$USER/hadoop
这样以后升级的时候只要把hadoop的联接指向新的版本就行了,不需要修改配置文件。请期待下节关于Hadoop安装与使用介绍。
【编辑推荐】
本文题目:Hadoop安装手册新手必备
网站链接:http://www.shufengxianlan.com/qtweb/news19/122069.html
网站建设、网络推广公司-创新互联,是专注品牌与效果的网站制作,网络营销seo公司;服务项目有等
声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联