您的位置:首页 > 运维架构 > Linux

在centos伪分布模式 部署hadoop

2013-12-20 15:23 381 查看
HADOOP 0.23.10 配置安装说明手册

 一、   环境准备

虚拟机 VMware® Workstation  7.1.2

JDK    jdk-7u45-linux-x64.rpm

hadoop-0.23.10.tar.gz

 二、            安装 centos 3.2 -64位虚拟机

 三、安装JDK
1.   拷贝安装包jdk-7u45-linux-x64.rpm到/usr目录下
2.   用命令chmod 777 jdk-7u4-linux-x64.rpm修改文件权限,双击它就自动解压安装了,安装完成后,在/usr目录下产生一个新的
java 文件夹
3.   设置环境变量,配置JAVA_HOME、
CLASSPATH
vi打开文件命令:vi /etc/.bash_profile
JAVA_HOME=/usr/java/jdk1.7.0_04
PATH=$JAVA_HOME/bin:$PATH
CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar
export JAVA_HOME
export PATH
export CLASSPATH
4.配置完成,运行  .   .bash_profile
 查看版本:java –version, 运行结果如下,jdk安装成功。
java version "1.7.0_04"
Java(TM) SE Runtime Environment (build 1.7.0_04-b20)
Java HotSpot(TM) 64-Bit Server VM (build 23.0-b21, mixed mode)
 四、安装hadoop0.23.10
从官网下载hadoop-0.23.10.tar.gz放在/home/hdmanager目录下
解压
/home/hdmanager$ tar xzf hadoop-0.23.10.tar.gz
更名,仅仅为了方便
/home/hdmanager$ mv hadoop-0.23.10 hadoop
 配置Hadoop环境变量
 编辑.bash_profile
export HADOOP_DEV_HOME=$HOME/hadoop
export HADOOP_MAPRED_HOME=${HADOOP_DEV_HOME}
export HADOOP_COMMON_HOME=${HADOOP_DEV_HOME}
export HADOOP_HDFS_HOME=${HADOOP_DEV_HOME}
export YARN_HOME=${HADOOP_DEV_HOME}
export HADOOP_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export HDFS_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
export YARN_CONF_DIR=${HADOOP_DEV_HOME}/etc/hadoop
 
PATH=$JAVA_HOME/bin:$PATH: HADOOP_DEV_HOME /bin: HADOOP_DEV_HOME /sbin
输入以下命令来判断Hadoop是否运行
/home/hdmanager/hadoop$ bin/hadoop version

Hadoop 0.20.2

Subversion https://svn.apache.org/repos/asf/hadoop/common/branches/branch-0.20 -r 911707
Compiled by chrisdo on Fri Feb 1908:07:34
UTC 2010
 首先在hadoop目录下新建几个文件夹

/home/hdmanager:~/hadoop$ mkdir tmp

/home/hdmanager:~/hadoop$ mkdir hdfs

/home/hdmanager:~/hadoop$ mkdir hdfs/name

/home/hdmanager:~/hadoop$ mkdir hdfs/data

core-site.xml:  Hadoop Core的配置项,例如HDFS和MapReduce常用的I/O设置等。

hdfs-site.xml:  Hadoop守护进程的配置项,包括namenode,辅助namenode和datanode等。

mapred-site.xml: MapReduce守护进程的配置项,包括jobtracker和tasktracker。

在etc/hadoop/目录中,编辑以下文件:

core-site.xml,hdfs-site.xml,mapred-site.xml

/home/hdmanager/hadoop$ vi core-site.xml

 <configuration>

    <property>

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

        <value>hdfs://localhost:9000</value>
    </property>

    <property>

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

        <value>/home/hdmanager/hadoop/tmp</value>

    </property>

</configuration>

 /home/hdmanager/hadoop $ vi  hdfs-site.xml

 <configuration>

    <property>

        <name>dfs.replication</name>

        <value>1</value>

    </property>

    <property>

        <name>dfs.name.dir</name>

        <value>/home/hdmanager/hadoop/hdfs/name</value>

    </property>

    <property>

        <name>dfs.data.dir</name>

        <value>/home/hdmanage/hadoop/hdfs/data</value>

    </property>

</configuration>

 /home/hdmanager/hadoop $ vi mapred-site.xml

 <configuration>

    <property>

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

        <value>localhost:9001</value>

    </property>

</configuration>

配置SSH

安装一个Hadoop集群时,需要专门指定一个服务器作为主节点。这个服务器通常会驻留NameNode和JobTracker的守护进程。它也将作为一个基站,负责联络并激活所有从节点上的DataNode和TaskTracker守护进程。因此,我们需要为主节点定制一种手段,使它能够远程地访问到集群中的每个节点。为此,Hadoop使用了无口令的(passphraseless)SSH协议。SSH采用标准的公钥加密来生成一对用户验证密钥----一个公钥,一个私钥。公钥被本地存储在集群的每个节点上,私钥则由主节点在试图访问远端节点时发送过来。结合这两段信息,目标机可以对这次登录尝试进行验证。

判断是否安装ssh服务,可以通过如下命令进行:

/home/hdmanager:~$ ssh localhost

ssh: connect to host localhost port22: Connection refused

如上所示,表示没有还没有安装,可以通过apt安装,命令如下:

/home/hdmanager:~$ sudo apt-get install openssh-server

系统将自动进行安装,安装完成以后,先启动服务:

/home/hdmanager:~$ sudo /etc/init.d/ssh start

Rather than invoking init scripts through /etc/init.d, use the service(8)

utility, e.g. service ssh start

Since the script you are attempting to invoke has been converted to an

Upstart job, you may also use the start(8) utility, e.g. start ssh

启动后,可以通过如下命令查看服务是否正确启动

/home/hdmanager:~$ ps -e|grep ssh

 1168 ?       00:00:00
ssh-agent

 6524 ?       00:00:00
sshd

如上表示启动ok。注意,ssh默认的端口是22。

输入命令

/home/hdmanager:~$ ssh localhost

运行后需要输入密码,做以下处理

/home/hdmanager:~$ ssh-keygen -t rsa -P'' -f ~/.ssh/id_rsa

/home/hdmanager:~$ cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

再次输入命令

/home/hdmanager:~$ ssh localhost

这时不再需要输入密码。

 第一次运行

首先需要格式化dfs布式系统:

/home/hdmanager:~/hadoop$ bin/hadoop namenode -format

(如果需要重新格式化,出现(Y / N)提示时记得输入大写的Y)

使用start-dfs.sh脚本来装载守护进程
/home/hdmanager:~/hadoop$ bin/start-dfs.sh

用Java的jps命令列出所有守护进程来验证安装成功

/home/hdmanager:~/hadoop$ jps

会见到下面类似的列表

7741 Jps

7700 SecondaryNameNode

7562 DataNode
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息