ubuntu server 12.04 jdk,ssh及hadoop配置

我是在32位的系统下配置的,所以在下载安装文件时候要注意。

 

第一步:下载并配置JDK

1.下载jdk,这里下载的是jdk1.7.0_65版本的,命令如下

$ wget http://download.oracle.com/otn-pub/java/jdk/7u65-b17/jdk-7u65-linux-i586.tar.gz?

 

2.解压下载好的文件

$ tar zxvf jdk-7u65-linux-i586.tar.gz

 

3.将解压完的文件复制到/opt/目录下

$ sudo cp -r jdk1.7.0_65 /opt/

 

4.配置jdk环境变量,打开/etc/profile,并添加如下代码

$ sudo vim /etc/profile

  在末端添加的代码:

  # set java environment   

  export JAVA_HOME=/opt/jdk1.7.0_65  

  export JRE_HOME=${JAVA_HOME}/jre  

  export CLASSPATH=.:${JAVA_HOME}/lib:${JRE_HOME}/lib  

  export PATH=${JAVA_HOME}/bin:${JRE_HOME}/bin:$PATH

 

5.重新执行配置文件使之立即生效

$ source /etc/profile

 

6.验证配置是否成功

$ java –version

   

  出现下列则成功

  java version "1.7.0_65"

  Java(TM) SE Runtime Environment (build 1.7.0_65-b10)

  Java HotSpot(TM) Server VM (build 20.10-b01, mixed mode)

 

第二步:安装SSH并设置无密码登录

2.1 安装openssh-server

$ sudo apt-get install openssh-server

 

2.2 检查是否安装好

$ ssh -version

 

  出现下面信息说明安装好了:

OpenSSH_5.9p1, Debian-5ubuntu1.4,OpenSSL 1.0.1 29 Mar 2012

Bad escape character 'rsion'.

 

2.3 启动/关闭服务

$ /etc/init.d/sshd start/stop

或者 

$ service sshd start/stop

 

2.4 配置无密码登录

参考地址:http://www.iteblog.com/archives/781

$ ssh-keygen –t dsa –P ‘’

这样就会下生成id_dsa和id_dsa.pub两个文件

将id_dsa.pub里面的内容加到用于认证的公钥文件中,命令如下(注意:不要复制,一定要用cat去操作,不信你可以去试试。):

$ cat id_dsa.pub >> authorized_keys

接着输入下列命令

$ ssh localhost

可以登录说明配置好了。

 

第三步:部署Hadoop(2.2.0版本)

注意,一定要在用户目录下安装配置,否则会出现各种permission denied问题。

链接地址:http://www.iteblog.com/archives/790

 

32位系统的hadoop直接下载安装就可以了,64位的需要编译。

参考地址:http://blog.csdn.net/john_f_lau/article/details/17690239

 

3.1 下载Hadoop并解压到根用户目录下

$ wget http://mirror.bit.edu.cn/apache/hadoop/common/hadoop-2.2.0/hadoop-2.2.0.tar.gz
$ tar zxvf hadoop-2.2.0.tar.gz

这里我解压后放在了用户目录下的opt/目录下。

 

3.2 设置Hadoop环境变量

$ sudo vim /etc/profile

在/etc/profile文件的末尾加上一下设置

# set Hadoop environment

export HADOOP_DEV_HOME=${用户目录}/opt/Hadoop

export PATH=$PATH:$HADOOP_DEV_HOME/bin

export PATH=$PATH:$HADOOP_DEV_HOME/sbin

export HADOOP_MAPARED_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

 

然后运行命令让设置生效:

$ sudo source /etc/profile

验证环境变量是否配置成功

$ Hadoop versio

 

3.3 编辑JDK所在路径

修改Hadoop的hadoop-env.sh配置文件,设置jdk所在的路径

$ vim etc/hadoop/hadoop-env.sh

在里面找到JAVA_HOME,并将它的值设置为你电脑jdk所在的绝对路径

# The java implementation to use.

export JAVA_HOME=/opt/jdk1.7.0_45

设置好后保存退出

 

3.4 配置几个必须的文件(师兄指导后的精简版)

在hadoop目录下的etc/hadoop目录下

 

 

core-site.xml

<configuration>
 <property>
   <name>fs.default.name</name>
   <value>hdfs://localhost:9000</value> 
 </property>
</configuration>

hdfs-site.xml

<configuration>
<property>
  <name>dfs.replication</name>
   <value>2</value> 
 </property>
 <property>
  <name>hadoop.tmp.dir</name>
  <value>${用户目录}/data/Hadoop/tmp </value>
 </property>

</configuration>

mapred-site.xml

<configuration>
<property>
  <name>mapred.job.tracker</name>
  <value>localhost:9001</value> 
 </property>
</configuration>

其中的hdfs-site.xml文件中的${用户目录}/data/Hadoop/tmp必须要先建好。

 

上述文件中的字段解释:

fs.default.name:这是一个描述集群中NameNode结点的URI(包括协议、主机名称、端口号),集群里面的每一台机器都需要知道NameNode的地址。DataNode结点会先在NameNode上注册,这样它们的数据才可以被使用。独立的客户端程序通过这个URI跟DataNode交互,以取得文件的块列表。

dfs.replication副本集的个数。

hadoop.tmp.dirHadoop的默认临时路径,这个最好配置,如果在新增节点或者其他情况下莫名其妙的DataNode启动不了,就删除此文件中的tmp目录即可。不过如果删除了NameNode机器的此目录,那么就需要重新执行NameNode格式化的命令。

mapred.job.tracker连接jobtrack服务器的配置项,指定JobTracker进程运行的位置。

 

更多参数说明参考:http://www.aboutyun.com/thread-7800-1-1.html

posted @ 2014-07-30 21:26  kkrimen  阅读(681)  评论(0编辑  收藏  举报