`
ruishen
  • 浏览: 52072 次
  • 性别: Icon_minigender_1
  • 来自: 北京
文章分类
社区版块
存档分类
最新评论

虚拟机搭建hadoop集群

 
阅读更多

整理文档下载地址:http://download.csdn.net/detail/ruishenh/6638309

1.虚拟机安装系统(个人安装系统是centos 6.x final版)

1.在虚拟机安装了三个系统(centos 6.x final版的)目前两个都是安装的,一个是在文件复制的。

2. 安装完系统后开始安装rz命令包(由于系统在window系统用crt操作linux系统了,所以依赖上了rz命令)

联网情况下:

yum install lrzsz

接下来输入两个yes

等到出现complete的英文就是ok了。

3.卸载原装openJDK

网上查的资料就是这样执行的,一切都运行完美通过

先查看

 rpm -qa | grep java

显示如下信息:

java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

卸载:

rpm -e --nodeps java-1.4.2-gcj-compat-1.4.2.0-40jpp.115
rpm -e --nodeps java-1.6.0-openjdk-1.6.0.0-1.7.b09.el5

只要是不报错,再执行

rpm -qa | grep java

显示没有任何东西了就是ok了

4.安装sun官方JDK文件

由于本人这儿已经下载下来了(jdk-6u30-linux-i586.bin);

所以直接在CRT中rz上传就好了命令如下

[root@localhostjava]# rz

rz waiting toreceive.

Starting zmodemtransfer. Press Ctrl+C to cancel.

100%83283 KB 3331 KB/s 00:00:250 Errors

[root@localhostjava]# ll

总用量 83372

-rw-r--r--. 1root root 85282052 1月 11 2012 jdk-6u30-linux-i586.bin

查看已经有了,这时候安装就好了

修改一下权限:

chmod 777  jdk-6u30-linux-i586.bin

接下来执行文件就好了:

./ jdk-6u30-linux-i586.bin

接下来会显示好多安装信息不用管直到出现下方信息就证明已经安装ok了

how it ismanaged and used, see:

http://java.sun.com/javase/registration/JDKRegistrationPrivacy.html

Press Enter tocontinue.....

(这儿敲一下键盘)

Done.

[root@localhostjava]# ll

总用量 83376

drwxr-xr-x. 10root root 4096 12月9 04:10 jdk1.6.0_30

-rwxrwxrwx. 1 root root 85282052 1月 11 2012 jdk-6u30-linux-i586.bin

5.接下来配置环境变量

<1>#

vi/etc/profile 
<2>在最后加入以下几行:

export JAVA_HOME=/usr/java/jdk1.6.0_30
export CLASSPATH=.:$JAVA_HOME/jre/lib/rt.jar:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export PATH=$PATH:$JAVA_HOME/bin

<3> 然后生效文件

  source  /etc/profile

<4>检查

[root@localhost java]# java -version

java version"1.6.0_30"

Java(TM) SERuntime Environment (build 1.6.0_30-b12)

Java HotSpot(TM)Client VM (build 20.5-b03, mixed mode, sharing)

这就ok了

6.接下来修改一下主机名称

命令(hostname master)

192.168.1.12 master
192.168.1.11 slave1
192.168.1.13 slave2

7.关闭防火墙

[root@localhost java]# service iptables stop


iptables:清除防火墙规则:

[确定]

iptables:将链设置为政策 ACCEPT:filter [确定]

iptables:正在卸载模块:[确定]

8./etc/hosts 文件内容追加

192.168.1.12  master 
192.168.1.11  slave1 
192.168.1.13  slave2

9.

 vi /etc/ssh/sshd_config

(这一块是无密码验证,重启VM后在连接CRT连不上了所以后来又去掉了,姑且这一块先不管了,)

在PasswordAuthentication yes这一样注掉然后加上下边的

PasswordAuthentication no
AuthorizedKeysFile .ssh/authorized_keys
 

10.authorized_keys文件拷贝到两台slave主机

ssh-keygen -t dsa -P '' -f ~/.ssh/id_dsa
cat ~/.ssh/id_dsa.pub >> ~/.ssh/authorized_keys
 

11.远程scp文件

authorized_keys文件拷贝到两台slave主机

scp authorized_keys slave1:~/.ssh/   
scp authorized_keys slave2:~/.ssh/  

追加权限

注意如果权限不对就改一下权限

chmod g-w authorized_keys

这时就可以ssh登录直接进入而不用密码拉

12.下载hadoop文件上传到虚拟机中

本人下载的Hadoop 0.20.2,去apache官方网站下载即可。

上传上去后解压文件

/usr/local/hadoop/

接下来进入如下目录

[hcr@master hadoop]$ pwd
/usr/local/hadoop
[hcr@master hadoop]$ ll
总用量 7536
drwxr-xr-x.  2 hcr hcr   4096 12月 10 2012 bin
-rw-rw-r--.  1 hcr hcr  74035 2月  19 2010 build.xml
drwxr-xr-x.  4 hcr hcr   4096 2月  19 2010 c++
-rw-rw-r--.  1 hcr hcr 348624 2月  19 2010 CHANGES.txt
drwxr-xr-x.  2 hcr hcr   4096 10月 19 16:22conf
drwxr-xr-x. 13hcr hcr    4096 2月 19 2010 contrib
drwxr-xr-x.  7 hcr hcr   4096 12月 10 2012 docs
-rw-rw-r--.  1 hcr hcr   6839 2月  19 2010 hadoop-0.20.2-ant.jar
-rw-rw-r--.  2 hcr hcr 2689741 2月 19 2010 hadoop-0.20.2-core.jar
-rw-rw-r--.  1 hcr hcr 142466 2月  19 2010 hadoop-0.20.2-examples.jar
-rw-rw-r--.  1 hcr hcr 1563859 2月 19 2010 hadoop-0.20.2-test.jar
-rw-rw-r--.  1 hcr hcr  69940 2月  19 2010 hadoop-0.20.2-tools.jar
-rw-rw-r--.  2 hcr hcr 2689741 2月 19 2010 hadoop-core-0.20.2.jar
drwxr-xr-x.  2 hcr hcr   4096 12月 10 2012 ivy
-rw-rw-r--.  1 hcr hcr   8852 2月  19 2010 ivy.xml
drwxr-xr-x.  5 hcr hcr   4096 12月 10 2012 lib
drwxr-xr-x.  2 hcr hcr   4096 12月 10 2012librecordio
-rw-rw-r--.  1 hcr hcr  13366 2月  19 2010 LICENSE.txt
drwxrwxr-x.  4 hcr hcr   4096 10月 19 20:13logs
-rw-rw-r--.  1 hcr hcr    101 2月  19 2010 NOTICE.txt
-rw-rw-r--.  1 hcr hcr   1366 2月  19 2010 README.txt
drwxr-xr-x. 15hcr hcr    4096 12月 10 2012 src
drwxr-xr-x.  4 hcr hcr   4096 8月  12 01:12 tmp
drwxr-xr-x.  8 hcr hcr   4096 2月  19 2010 webapps
[hcr@masterhadoop]$

然后把环境变量配置上吧,或者写一个脚本放到/usr/bin/下方指定到hadoop启动文件上。

# set hadooppath
export HADOOP_HOME=/usr/local/hadoop
export PATH=$PATH:$HADOOP_HOME/bin
 


进入conf配置目录

然后把文件修改成如下

[hcr@master conf]$ cat masters

master

[hcr@master conf]$ cat slaves

slave1

slave2

[hcr@master conf]$ cat core-site.xml

<?xmlversion="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<!-- Putsite-specific property overrides in this file. -->

<configuration>

<property>

<name>hadoop.tmp.dir</name>

<value>/usr/local/hadoop/tmp</value>

<description>A base for other temporarydirectories.</description>

</property>

<!-- filesystem properties -->

<property>

<name>fs.default.name</name>

<value>hdfs://master:9000</value>

</property>

<!-- OOZIE-->

<property>

<name>hadoop.proxyuser.hcr.hosts</name>

<value>*</value>

</property>

<property>

<name>hadoop.proxyuser.hcr.groups</name>

<value>hcr</value>

</property>

<property>

<name>dfs.permissions</name>

<value>false</value>

</property>

</configuration>

[hcr@masterconf]$ cat hdfs-site.xml

<?xmlversion="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<!-- Putsite-specific property overrides in this file. -->

<configuration>

<property>

<name>dfs.replication</name>

<value>2</value>

<!--(备注:replication 是数据副本数量,默认为3,salve少于3台就会报错)-->

</property>

</configuration>

[hcr@masterconf]$

[hcr@masterconf]$ cat mapred-site.xml

<?xmlversion="1.0"?>

<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>

<!-- Putsite-specific property overrides in this file. -->

<configuration>

<property>

<name>mapred.job.tracker</name>

<value>http://master:9001</value>

</property>

</configuration>

[hcr@masterconf]$

把hadoop-env.sh中配置上jdk的环境变量,当然pids文件,日志目录文件都可以重新指定,但是个人测试搭建集群这个不主要。

export JAVA_HOME=/usr/java/jdk1.6.0_30

[hcr@master conf]$ cat hadoop-env.sh

# SetHadoop-specific environment variables here.

# The onlyrequired environment variable is JAVA_HOME.All others are

# optional. When running a distributed configuration itis best to

# set JAVA_HOMEin this file, so that it is correctly defined on

# remote nodes.

# The javaimplementation to use. Required.

# exportJAVA_HOME=/usr/lib/j2sdk1.5-sun

# Extra JavaCLASSPATH elements. Optional.

# exportHADOOP_CLASSPATH=

# The maximumamount of heap to use, in MB. Default is 1000.

# exportHADOOP_HEAPSIZE=2000

# Extra Javaruntime options. Empty by default.

# exportHADOOP_OPTS=-server

HADOOP_OPTS=-Djava.net.preferIPv4Stack=true

# Commandspecific options appended to HADOOP_OPTS when specified

exportHADOOP_NAMENODE_OPTS="-Dcom.sun.management.jmxremote $HADOOP_NAMENODE_OPTS"

exportHADOOP_SECONDARYNAMENODE_OPTS="-Dcom.sun.management.jmxremote$HADOOP_SECONDARYNAMENODE_OPTS"

exportHADOOP_DATANODE_OPTS="-Dcom.sun.management.jmxremote$HADOOP_DATANODE_OPTS"

exportHADOOP_BALANCER_OPTS="-Dcom.sun.management.jmxremote $HADOOP_BALANCER_OPTS"

exportHADOOP_JOBTRACKER_OPTS="-Dcom.sun.management.jmxremote$HADOOP_JOBTRACKER_OPTS"

# exportHADOOP_TASKTRACKER_OPTS=

# The followingapplies to multiple commands (fs, dfs, fsck, distcp etc)

# exportHADOOP_CLIENT_OPTS

# Extra ssh options. Empty by default.

# exportHADOOP_SSH_OPTS="-o ConnectTimeout=1 -o SendEnv=HADOOP_CONF_DIR"

# Where logfiles are stored. $HADOOP_HOME/logs bydefault.

# exportHADOOP_LOG_DIR=${HADOOP_HOME}/logs

# File namingremote slave hosts.$HADOOP_HOME/conf/slaves by default.

# exportHADOOP_SLAVES=${HADOOP_HOME}/conf/slaves

# host:pathwhere hadoop code should be rsync'd from.Unset by default.

# exportHADOOP_MASTER=master:/home/$USER/src/hadoop

# Seconds tosleep between slave commands. Unset bydefault. This

# can be usefulin large clusters, where, e.g., slave rsyncs can

# otherwisearrive faster than the master can service them.

# exportHADOOP_SLAVE_SLEEP=0.1

# The directorywhere pid files are stored. /tmp by default.

# exportHADOOP_PID_DIR=/var/hadoop/pids

# A stringrepresenting this instance of hadoop. $USER by default.

# exportHADOOP_IDENT_STRING=$USER

# The schedulingpriority for daemon processes. See 'mannice'.

# exportHADOOP_NICENESS=10

# set javaenvironment

exportJAVA_HOME=/usr/java/jdk1.6.0_30

[hcr@masterconf]$

以上文件配置ok了后基本上主机配置完毕了。然后就是去执行

Scp 把master上的hadoop目录直接远程拷贝到slaves1和2上。

拷贝完后slave1上如下

[hcr@slave1 hadoop]$ pwd

/usr/local/hadoop

[hcr@slave1 hadoop]$ ll

总用量 4904

drwxr-xr-x. 2 hcr hcr4096 12月 10 2012 bin

-rw-r--r--. 1 hcr hcr74035 12月 10 2012build.xml

drwxr-xr-x. 4 hcr hcr4096 12月 10 2012 c++

-rw-r--r--. 1 hcr hcr348624 12月 10 2012CHANGES.txt

drwxr-xr-x. 2 hcr hcr4096 10月 19 00:11conf

drwxr-xr-x. 13hcr hcr 4096 12月 10 2012 contrib

drwxr-xr-x. 7 hcr hcr4096 12月 10 2012 docs

-rw-r--r--. 1 hcr hcr6839 12月 10 2012hadoop-0.20.2-ant.jar

-rw-r--r--. 1 hcr hcr 2689741 12月 10 2012 hadoop-0.20.2-core.jar

-rw-r--r--. 1 hcr hcr142466 12月 10 2012hadoop-0.20.2-examples.jar

-rw-r--r--. 1 hcr hcr 1563859 12月 10 2012 hadoop-0.20.2-test.jar

-rw-r--r--. 1 hcr hcr69940 12月 10 2012hadoop-0.20.2-tools.jar

drwxr-xr-x. 2 hcr hcr4096 12月 10 2012 ivy

-rw-r--r--. 1 hcr hcr8852 12月 10 2012ivy.xml

drwxr-xr-x. 5 hcr hcr4096 12月 10 2012 lib

drwxr-xr-x. 2 hcr hcr4096 12月 10 2012librecordio

-rw-r--r--. 1 hcr hcr13366 12月 10 2012LICENSE.txt

drwxrwxr-x. 3 hcr hcr4096 10月 19 04:00logs

-rw-r--r--. 1 hcr hcr101 12月 10 2012NOTICE.txt

-rw-r--r--. 1 hcr hcr1366 12月 10 2012README.txt

drwxr-xr-x. 15hcr hcr 4096 12月 10 2012 src

drwxr-xr-x. 4 hcr hcr4096 8月 5 02:18 tmp

drwxr-xr-x. 8 hcr hcr4096 12月 10 2012webapps

[hcr@slave1hadoop]$

接下来所有的copy完毕后开始要进入启动hadoop相关动作上了。

先格式化一下namenode

[hcr@master hadoop]$ bin/hadoop namenode –format

成功后,

接下来启动ok 了。

[hcr@master hadoop]$ bin/start-all.sh

startingnamenode, logging to/usr/local/hadoop/bin/../logs/hadoop-hcr-namenode-master.out

slave1: startingdatanode, logging to/usr/local/hadoop/bin/../logs/hadoop-hcr-datanode-slave1.out

slave2: startingdatanode, logging to/usr/local/hadoop/bin/../logs/hadoop-hcr-datanode-slave2.out

master: startingsecondarynamenode, logging to/usr/local/hadoop/bin/../logs/hadoop-hcr-secondarynamenode-master.out

startingjobtracker, logging to /usr/local/hadoop/bin/../logs/hadoop-hcr-jobtracker-master.out

slave1: startingtasktracker, logging to/usr/local/hadoop/bin/../logs/hadoop-hcr-tasktracker-slave1.out

slave2: startingtasktracker, logging to/usr/local/hadoop/bin/../logs/hadoop-hcr-tasktracker-slave2.out

启动成功后查看一下java 进程jps

[hcr@masterhadoop]$ jps

8349 Jps

8207SecondaryNameNode

8281 JobTracker

8055 NameNode

这时候SNN,NN,jobtracker都有了。

数据节点查看一下

[hcr@slave1hadoop]$ jps

4750 Jps

4705 TaskTracker

4608 DataNode

[hcr@slave1hadoop]$

数据节点datanode 和taskTracker也都有了。

然后就能看到相关目录了

[hcr@master hadoop]$ hadoop fs –ls /

这个时候进入

http://master:50070/dfshealth.jsp

查看页面


Namenode起来了。

然后点击进入Browse the filesystem


Datanode 也起来了。

然后去看看jobtracker

能访问也起来了。

接下来就算安装成功了。

分享到:
评论

相关推荐

    Hadoop集群环境虚拟机上搭建详解

    根据提供的文件信息,下面将详细介绍在虚拟机上搭建Hadoop集群环境的相关知识点。 1. 安装虚拟机和操作系统 首先,需要安装虚拟机软件,例如文档中提到的VMware Workstation,它是一款流行的虚拟化软件,可以安装在...

    虚拟机搭建Hadoop集群操作文档

    详细描述了在笔记本电脑上搭建hadoop的安装步骤,包括前期虚拟机的安装和配置,hdfs、kafka、spark、storm等组件的安装。

    利用虚拟机搭建Hadoop伪集群(基于centos7)

    利用虚拟机搭建Hadoop伪集群(基于centos7),usr 下有 java 和 hadoop两个文件夹,分别解压对应的文件,jdk 的版本是1.8.0_141,hadoop的版本是2.7.3

    虚拟机下Hadoop开发环境搭建

    Hadoop 开发环境搭建第一篇: 1、是用Virtual Box 系统使用的是Redhat ,linux不熟的朋友们可以顺便学习一下linux, 2、环境配置包括防火墙关闭,IP分配,更改域名等 3、服务软件:远程服务SSH等安装

    基于Docker搭建Hadoop集群(2).docx

    "基于Docker搭建Hadoop集群" 在本文中,我们将介绍如何基于Docker搭建Hadoop集群。Hadoop是大数据处理的常用工具,而Docker则是当前最流行的容器化技术。通过将Hadoop部署到Docker容器中,我们可以更方便地管理和...

    linux虚拟机搭建hadoop伪分布式集群

    在搭建Hadoop伪分布式集群的过程中,首先需要在Linux环境下配置VMware的NAT网络,确保虚拟机能够稳定地运行和通信。NAT网络允许虚拟机通过宿主机与外部网络进行通信,同时保持IP地址的固定性。具体操作包括取消DHCP...

    hadoop搭建集群笔记

    hadoop搭建集群笔记.虚拟机搭建hadoop集群

    VMware workstation 16虚拟机下hadoop集群安装过程

    为了在VMware Workstation 16中搭建Hadoop集群,首先需要准备安装虚拟机软件的高性能计算机,然后在该计算机上安装Linux系统,创建多台虚拟机,再让这些虚拟机构成一个局域网络。这样,你就可以在这个内部网络上安装...

    Hadoop虚拟机搭建Hadoop-3.3.0集群环境

    在搭建Hadoop集群之前,我们需要准备以下要素: 1. **虚拟机环境**:通常我们会使用VirtualBox或VMware等虚拟化软件创建多台虚拟机来模拟集群环境。 2. **操作系统**:一般选择Linux发行版,如Ubuntu、CentOS等,...

    vmware虚拟机下hadoop集群安装过程.docx

    本文将详细阐述如何在VMware虚拟机环境下搭建Hadoop集群,让您无需大量物理服务器,也能在个人电脑上进行Hadoop的学习和实践。 首先,我们要理解Hadoop的线性扩展性。这一特性意味着,当数据量增加时,如果处理能力...

    vmware虚拟机下hadoop集群安装过程

    在VMware虚拟机中搭建Hadoop集群,首先需要准备多台虚拟机,模拟真实的服务器环境。例如,可以在一台高性能PC上安装VMware,创建4台虚拟机,分别为db、red、mongdb和nginx,分别分配不同的IP地址,并通过虚拟交换机...

    利用ansible 自动 安装Hadoop 集群

    本篇将详细讲解如何利用Ansible自动安装Hadoop集群。 首先,理解Ansible的工作原理至关重要。Ansible基于SSH(Secure Shell)协议,无需在目标节点上安装任何代理,通过控制节点即可实现远程管理。它使用YAML格式的...

    vmware虚拟机下hadoop集群安装过程.pdf

    2. **资源需求**:在家庭环境中搭建Hadoop集群,通常难以获取多台物理服务器。此时,可以通过在高性能电脑上安装VMware等虚拟机软件,创建多个虚拟机,并配置成内部局域网,以此模拟一个小型Hadoop集群。 3. **...

    mac环境下hadoop集群搭建

    搭建Hadoop集群的第一步是创建所需的虚拟机环境。这通常涉及到选择和安装适合的虚拟化软件,在本例中是VMware Fusion。创建虚拟机后,需要安装操作系统,并配置必要的硬件资源,如内存、CPU和硬盘空间。安装操作系统...

    hadoop集群安装笔记

    Hadoop集群安装笔记是一篇详细的安装指南,旨在帮助新手快速搭建Hadoop学习环境。以下是该笔记中的重要知识点: Hadoop集群安装目录 在安装Hadoop集群之前,需要准备好安装环境。安装环境包括Java Development Kit...

    hadoop集群搭建(超级详细)

    在搭建Hadoop集群之前,首先需要准备多台虚拟机。可以使用VMware或VirtualBox等虚拟机软件,创建至少三台虚拟机,分别作为NameNode、DataNode和Secondary NameNode。确保每台虚拟机的网络设置为同一网络模式(如NAT...

    Hadoop集群的搭建

    通过3台虚拟机搭建Hadoop集群的简单实验过程,希望可以帮到有需要的朋友。

    通过虚拟化技术在Linux系统下搭建Hadoop集群的研究与实现.pdf

    本文主要研究了通过虚拟化技术在Linux系统下搭建Hadoop集群的方法,并对其进行了详细的研究和实现。首先,文章对Hadoop进行了简介,介绍了Hadoop的框架、HDFS和MapReduce等核心组件,并对Hadoop集群的组成进行了说明...

    Hadoop集群构建实训报告.doc

    这些步骤是搭建Hadoop集群的基础,每一步都至关重要,确保了集群的安全性和稳定性。在实际部署过程中,还需要根据具体需求进一步配置Hadoop的相关组件,如HDFS、MapReduce等,以满足数据处理的需求。

    数据仓库与大数据工程作业一

    数据仓库与大数据工程是现代信息技术领域中的核心主题,它们涉及到数据的存储、处理、分析以及应用。本作业旨在深化对数据、信息、知识、智能和智慧的理解,同时探索决策过程和信息系统架构的相关概念。...

Global site tag (gtag.js) - Google Analytics