个人计算机安装hadoop全分布
一、工具说明
设备:实体主机一台 校园网络
虚拟设备:VMware下安装的ubuntu12.04版本三台,分别是master,slave1,slave2
二、ubuntu安装篇
前提知识:在windows平台用SecureCRT连接虚拟机机器的时候,必须是同一网关下,虚拟机选择NAT网络模式的话生成的ip是192.168.138.XXX形式,与要求不符,最终要修改为桥接形式,不过桥接形式下不能上网,所以安装完系统后先用NAT模式把要下载的东西下载好再改为桥接
Ubuntu安装完成后,root是没有设置密码的,需要先为root设置密码,执行
juefan:~$ sudo passwd
[sudo] password for juefan: 输入密码
输入新的 UNIX 密码: 在此设置root的密码
重新输入新的 UNIX 密码:
用root登录,创建用户组并创建该组下的新用户
root:~#groupadd ghadoop
root:~#useradd hadoop -g ghadoop
安装ssh然后就可以用SecureCRT登录进行操作
apt-get install openssh-server
安装jdk,并查看jdk安装的目录,方便jdk转移统一管理
apt-get install openjdk--jre-headless
ls -l $(which java)
一般上面会输出结果为
lrwxrwxrwx root root -- : /usr/bin/java -> /etc/alternatives/java
这个还不是真正的jdk的安装位置,只是一个指向,最终的jdk安装路径是在 /usr/lib/jvm下面,把其下的jdk移动到/opt/java,然后删除/usr/bin/java,再做一个软链接到java就可以了
mv /usr/lib/jvm/java--openjdk-i386 /opt/java
rm /usr/bin/java
ln -s /opt/java/bin/java /usr/bin/java
一般在安装完hadoop的时候会用jps确定组件是否启动,所以也要先把这个功能安装了
apt-get install openjdk--jdk
刚刚在上面转移了jdk后,出现错误了,所以还是不要转移的好
刚刚发现还有俩个功能需要在线安装的 vim 和 lzrz
apt-get install lrzsz
系统基本上就安装完成了,接下来进行hadoop部署环节
三、hadoop部署篇
首先下载hadoop,在这里用的是hadoop1.0.3版本 hadoop-1.0.3.tar.gz
解压hadoop-1.0.3.tar.gz 并将其移动到其它目录
tar -zxvf hadoop-1.0..tar.gz
mv hadoop-1.0. /opt/hadoop
修改环境变量,打开/etc/profile,要用root才能编辑
root:~# vim /etc/profile export JAVA_HOME=/opt/java
export JRE_HOME=/opt/java/jre
export CLASSPATH=.:$JAVA_HOME/lib:$JRE_HOME/lib:$CLASSPATH
export PATH=$JAVA_HOME/bin:$JRE_HOME/bin:$PATH
export HADOOP_HOME=/opt/hadoop
export PATH=$HADOOP_HOME/bin:$PATH
进入/opt/hadoop/conf,修改相应的配置文件
$ vim hadoop-env.sh
export JAVA_HOME=/opt/java
同时修改core-site.xml 和hdfs-site.xml 及mapred-site.xml
$vim core-site.xml
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/hadoop</value>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
<property>
<name>dfs.hosts.exclude</name>
<value>excludes</value>
</property>
<property>
<name>dfs.name.dir</name>
<value>/hadoop/name</value>
</property>
</configuration>
$vim hdfs-site.xml
<configuration>
<property>
<name>dfs.data.dir</name>
<value>/hadoop/data</value>
</property> <property>
<name>dfs.replication</name>
<value></value>
</property> </configuration>
$vim mapred-site.xml
<configuration> <property>
<name>mapred.job.tracker</name>
<value>master:</value>
</property> </configuration>
hadoop的基本配置之类的就差不多完成了,接下来要进行克隆操作,在克隆之前可以先把部分host修改了,打开/opt/hadoop/conf/master和slaves,将其修改为
$vim master
master
$vim slaves
master
slave1
slave2
至此,可以进行克隆操作了......
克隆操作完成以后 , 需要修改每个节点的hostname , 按照上面的对应关系去修改即可
四、hive安装篇
一般情况下 , 在实际环境中大家的操作都会集中在某一台或几台机器中 , 所以在安装hive的时候可以只安装那些大家有权限操作的节点 , 在此本人选择了安装在master节点中 , 因为还要安装mysql之类的 , 方便管理.
首先下载hive,在这里用的是hive-0.10.0版本 hive-0.10.0.tar.gz
解压hive-0.10.0.tar.gz 并将其移动到其它目录
tar -zxvf hive-0.10.0.tar.gzmv hive-0.10.0 /opt/hive
修改环境变量,打开/etc/profile,要用root才能编辑
root:~# vim /etc/profile export HIVE_HOME=/opt/hive
export PATH=$HIVE_HOME/bin:$PATH
进入/opt/hive/conf,将目录下hive-env.sh.template中的HADOOP_HOME为改实际的Hadoop安装目录 , 并将hive-env.sh.template复制并命名为hive-env.sh , 再增加执行权限
打开HDFS(执行 start-all.sh)
为hive创建HDFS上的默认文件夹
hadoop fs -mkdir /tmp
hadoop fs -mkdir /user/hive/warehouse
hadoop fs -chmod g+w /tmp
hadoop fs -chmod g+w /user/hive/warehouse
将conf下面的hive-default.xml.template复制两份,分别命名为hive-default.xml(用于保留默认配置)和hive-site.xml(用于个性化配置,可覆盖默认配置)
至此 , hive的基本配置已经弄好.
执行hive , 看看有没有跳到 hive的shell 界面 , 有的话就基本完成了.
[hadoop@all-RTB-- ~]$ hive
WARNING: org.apache.hadoop.metrics.jvm.EventCounter is deprecated. Please use org.apache.hadoop.log.metrics.EventCounter in all the log4j.properties files.
Logging initialized using configuration in jar:file:/data1/program/hive-0.10./lib/hive-common-0.10..jar!/hive-log4j.properties
Hive history file=/tmp/hadoop/hive_job_log_hadoop_201311051220_287110733.txt
hive>
个人计算机安装hadoop全分布的更多相关文章
- 用三台虚拟机搭建Hadoop全分布集群
用三台虚拟机搭建Hadoop全分布集群 所有的软件都装在/home/software下 虚拟机系统:centos6.5 jdk版本:1.8.0_181 zookeeper版本:3.4.7 hadoop ...
- 菩提树下的杨过.Net 的《hadoop 2.6全分布安装》补充版
对菩提树下的杨过.Net的这篇博客<hadoop 2.6全分布安装>,我真是佩服的五体投地,我第一次见过教程能写的这么言简意赅,但是又能比较准确表述每一步做法的,这篇博客主要就是在他的基础 ...
- hadoop学习笔记(六):hadoop全分布式集群的环境搭建
本文原创,如需转载,请注明作者以及原文链接! 一.前期准备: 1.jdk安装 不要用centos7自带的openJDK2.hostname 配置 配置位置:/etc/s ...
- Hadoop(三)手把手教你搭建Hadoop全分布式集群
前言 上一篇介绍了伪分布式集群的搭建,其实在我们的生产环境中我们肯定不是使用只有一台服务器的伪分布式集群当中的.接下来我将给大家分享一下全分布式集群的搭建! 其实搭建最基本的全分布式集群和伪分布式集群 ...
- Hadoop(三)搭建Hadoop全分布式集群
原文地址:http://www.cnblogs.com/zhangyinhua/p/7652686.html 阅读目录(Content) 一.搭建Hadoop全分布式集群前提 1.1.网络 1.2.安 ...
- Hadoop全分布模式操作
http://blog.csdn.net/wangloveall/article/details/20767161 摘要:介绍Hadoop全分布模式操作,实现真正意义上的集群架构. 关键词:Hadoo ...
- centos 6.4-linux环境配置,安装hadoop-1.1.2(hadoop伪分布环境配置)
1 Hadoop环境搭建 hadoop 的6个核心配置文件的作用: core-site.xml:核心配置文件,主要定义了我们文件访问的格式hdfs://. hadoop-env.sh:主要配置我们的j ...
- hadoop 2.6全分布安装
环境:centos 6.6 + hadoop2.6 虚拟机:(vmware fusion 7.0.0) 虚拟机hostname / IP地址 master / 192.168.187. ...
- 【Hadoop故障处理】全分布下,DataNode进程正常启动,但是网页上不显示,并且DataNode节点为空
[故障背景] DataNode进程正常启动,但是网页上不显示,并且DataNode节点为空. /etc/hosts 的ip和hostname配置正常,各个机器之间能够ping通. [日志错误信息] ...
随机推荐
- 第4章 建造者模式(Builder Pattern)
原文 第4章 建造者模式(Builder Pattern) 定义 将一个复杂对象的构造与它的表示分离,使同样的构建过程可以创建不同的表示,这样的设计模式被称为建造者模式. 实用范围 1 当创建复杂对象 ...
- ASP.NET MVC+EF框架+EasyUI实现权限管理系列(19)-用户信息的修改和浏览
原文:ASP.NET MVC+EF框架+EasyUI实现权限管理系列(19)-用户信息的修改和浏览 ASP.NET MVC+EF框架+EasyUI实现权限管系列 (开篇) (1):框架搭建 ...
- 编译 & 预处理
编译(compilation , compile) 1.利用编译程序从源语言编写的源程序产生目标程序的过程. 2.用编译程序产生目标程序的动作. 编译就是把高级语言变成计算机可以识别的2进制语言,计算 ...
- 微信公众平台消息接口PHP版开发教程
原文:微信公众平台消息接口PHP版开发教程 一.写好接口程序 在你的服务器上上传好一个接口程序文件,如http://www.yourdomain.com/weixin.php 内容如下: &l ...
- php中utf8 与utf-8
原文:php中utf8 与utf-8 相信很多程序员刚开始也会有这样的疑惑,如题,我也是. 其实,他们可以这样来区分. 一.在php和html中设置编码,请尽量统一写成“UTF-8”,这才 ...
- C程序中引用自定义的C函数模块
原文:C程序中引用自定义的C函数模块 我们知道,刚开始接触C语言编程,一般都是在一个.c或者.cpp(以下只说.c)的文件中编写代码,其中一定会有一个入口函数, 也就是main()函数,你可以将程序代 ...
- Installshield获取安装包版本的系统变量是IFX_PRODUCT_VERSION
原文:Installshield获取安装包版本的系统变量是IFX_PRODUCT_VERSION Installshield获取安装包版本的系统变量为IFX_PRODUCT_VERSION 当笔记记下 ...
- C#映射网络驱动器
using System.Runtime.InteropServices; [StructLayout(LayoutKind.Sequential)] public class NetResource ...
- Oralce 导出脚本命令,定时执行
原文:Oralce 导出脚本命令,定时执行 @echo off @echo ================================================ @echo window ...
- changePage() 页面跳转
jQuery.mobile.changePage( to [, options ] ) 从一个页面跳转到另一个页面,使用$.mobile对象的changePage方法来实现.但要使用此方式的时候,要以 ...