个人计算机安装hadoop全分布

时间:2023-12-19 10:14:50

一、工具说明

设备:实体主机一台  校园网络  

虚拟设备: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>