Linux下安装Hadoop完全分布式Ubuntu12.10
Hadoop 的安装非常简单 可以在官网上下载到最近的几个版本 最好使用稳定版。 本例在3台机器集群安装。 hadoop版本如下
工具/原料hadoop-0.20.2.tar.gz
Ubuntu12. 10
安装步骤
1
安装ubuntu
Ubuntu12. 10交换空间4G(内存2G) 。 具体安装过程不赘述。
用户名统一为 hadoop;
组群:hadoop;
机器名namenode(主节点),datanode1(从节点 1),datanode2(从节点2) 。
2
在Ubuntu下创建hadoop用户组和用户(也可在安装系统时通过界面配置)
1 .创建hadoop用户组;
$sudoaddgrouphadoop
记下这里为 hadoop 用户设置的密码后面使用 hadoop 用户登录时需要用到。
2.创建hadoop用户;
$sudoadduser-ingrouphadoophadoop
3.给hadoop用户添加权限 打开/etc/sudoers文件;
$sudogedit/etc/sudoers
4. 给hadoop用户赋予root用户同样的权限。
在rootALL=(ALL:ALL)ALL下添加如下内容hadoopALL=(ALL:ALL)ALL
3
在Ubuntu下安装JDK
配置环境变量
$ sudo gedit /etc/profile
在文件的末尾加上如下内容 保存并关闭文件
# for javaexport JAVA_HOME=/usr/lib/jvm/jdk1 .8.0export JRE_HOME=${JAVA_HOME} /jreexport CLASSPATH=. :${JAVA_HOME} /lib:${JRE_HOME} /libexport PATH=${JAVA_HOME}/bin:${JRE_HOME} /bin:$PATH使设置生效 到此部JDK的配置就都完成了
$ source /etc/profile
为保证正确性 进行简单的测试
$ java -version
输出javaversion 1 .8.0
Java(TM) SE Runtime Environment (build 1 .8.0)
Java HotSpot(TM) Server VM
修改默认JDKsudo update-alternatives --install /usr/bin/java java/usr/lib/jvm/jdk1 .8.0/bin/java 300sudo update-alternatives --install /usr/bin/javac javac/usr/lib/jvm/jdk1 .8.0/bin/javac 300sudo update-alternatives --install /usr/bin/jar jar/usr/lib/jvm/jdk1 .8.0/bin/jar 300
以下两句可选(最好执行) sudo update-alternatives --config javasudo update-alternatives --config javac
4
修改机器名(这步骤可以省略)
每当ubuntu安装成功时机器名都默认为 ubuntu 但为了以后集群中能够容易分辨各台服务器 需要给每台机器取个不同的名字。机器名由/etc/hostname文件决定。
1 .打开/etc/hostname文件;
$sudogedit/etc/hostname
2.将/etc/hostname文件中的ubuntu改为对应机器如主节点中修改为namenode。 重启生效。
3.修改/etc/hosts文件
$sudogedit/etc/hosts
改为如下所示 并且将每台机器的IP设置为固定IP
5
安装ssh服务
这里的 ssh不是指三大框架:spring,struts,hibernate 而是一种远程登录协议。ubuntu一般只是默认安装了 ssh-agent, 可以用如下命令查看
$sudops-ef|grepssh
如果只有 ssh-agent就需要安装openssh-server了。
$sudoapt-getinstallsshopenssh-server
6
建立ssh无密码登录本机
首先要转换成hadoop用户 执行以下命令
$sudosu-hadoopssh生成密钥有rsa和dsa两种生成方式 默认情况下采用rsa方式。
1 .创建ssh-key 这里我们采用rsa方式;
$ssh-keygen-trsa-P
请注意 ssh-kengen 是用连字符连着的千万不要分开。 问题如下
按照您的步行的程中我在ssh-keygen-t rsa -P生的小入之後端示Badescape character ygen(红字部分就是问题所在他将 ssh-keygen 分开了。 )
(注 回车后会在~/.ssh/下生成两个文件 id_rsa和id_rsa.pub这两个文件是成对出现的)
2.创建授权文件authorized_keys
进入~/.ssh/目录下 发现开始是没有authorized_keys文件的 可以使用以下两种方法
( 1) 将id_rsa.pub追加到authorized_keys授权文件中;
$cd~/.ssh
$catid_rsa.pub>>authorized_keys
(2) 复制 id_rsa.pub 为 authorized_keys
$cp~/.ssh/id_rsa.pub~/.ssh/authorized_keys
3.登录localhost;
$sshlocalhost
4. 执行退出命令(exit或CTRL+D) ;
7
安装hadoop
1 .假设 hadoop-0.20.2.tar.gz在桌面 将它复制到安装目录/usr/local/下;
$sudocphadoop-0.20.2.tar.gz/usr/local/
2.解压hadoop-0.20.2.tar.gz;
$cd/usr/local
$sudotar-zxvfhadoop-0.20.2.tar.gz
3.将解压出的文件夹改名为hadoop;
$sudomvhadoop-0.20.2hadoop
4.将该hadoop文件夹的属主用户设为hadoop
$sudochown-Rhadoop:hadoophadoop
5.打开hadoop/conf/hadoop-env.sh文件;
$sudogedithadoop/conf/hadoop-env.sh
6.配置 conf/hadoop-env.sh(找到#exportJAVA_HOME=. . . ,去掉# 然后加上本机jdk的路径) ;
exportJAVA_HOME=/usr/lib/jvm/java1 .8.0
7.打开conf/core-site.xml文件;
$sudogedithadoop/conf/core-site.xmlfs.default.namehdfs://namenode:9000
8.打开conf/mapred-site.xml文件;
$sudogedithadoop/conf/mapred-site.xmlmapred.job.trackernamenode:9001
9.打开conf/hdfs-site.xml文件;
注意 datalog1 datalog2 data1 data2文件夹最好事先建好。
10.打开conf/masters文件 添加作为secondarynamenode的主机名.
1 1 .打开conf/slaves文件 添加作为slave的主机名 一行一个。
作者设置如下
8
运行hadoop
1 .进入hadoop 目录下格式化hdfs文件系统 初次运行hadoop时一定要有该操作
$cd/usr/local/hadoop/
$bin/hadoopnamenode-format
2.启动bin/start-all.sh
进入bin 目录下 $ ./start-all.sh关闭 同目录下./stop-all.sh
3.检测hadoop是否启动成功
$ jps
4.Web查看
注意事项
集群中所有机器的登录用户名和所属组都要相同 本文用户名为hadoop 组群也为Hadoop。
每台机器的IP设置为固定IP主机名-ip需要在每一台机器里修改对应的hosts文件。
注意代码中的粗斜体为具体安装目录 要和实际目录相同。
忍耐和坚持虽是痛苦的事情 但却能渐渐地为你带来好处。 ――奥维德
wordpress高级全行业大气外贸主题,wordpress通用全行业高级外贸企业在线询单自适应主题建站程序,完善的外贸企业建站功能模块 + 高效通用的后台自定义设置,更实用的移动设备特色功能模块 + 更适于欧美国外用户操作体验 大气简洁的网站风格设计 + 高效优化的网站程序结构,更利于Goolge等SEO搜索优化和站点收录排名。点击进入:wordpress高级全行业大气外贸主题主题价格:¥398...
妮妮云的知名度应该也不用多介绍了,妮妮云旗下的云产品提供商,相比起他家其他的产品,云产品还是非常良心的,经常出了一些优惠活动,前段时间的八折活动推出了很多优质产品,近期商家秒杀活动又上线了,秒杀产品比较全面,除了ECS和轻量云,还有一些免费空间、增值代购、云数据库等,如果你是刚入行安稳做站的朋友,可以先入手一个119/元季付的ECS来起步,非常稳定。官网地址:www.niniyun.com活动专区...
georgedatacenter怎么样?GeorgeDatacenter是一家2017年成立的美国商家,正规注册公司(REG: 10327625611),其实是oneman。现在有优惠,有几款特价VPS,基于Vmware。支持Paypal付款。GeorgeDatacenter目前推出的一款美国vps,2核/8GB内存/250GB NVMe空间/2TB流量/1Gbps端口/Vmware/洛杉矶/达拉...