一,   配置信息

机器是64位,所以操作系统、软件都是64位的。

操作系统:CentOS6.2(64位);

Hadoop是hadoop-1.2.1-1.x86_64.rpm;

JDK是jdk-7u45-linux-x64.tar.gz;

以下所有操作以root身份执行。

二,   机器信息分布

1, Hadoop集群

集群由5台安装Linux环境的机器构建。电脑是联想 4220AN6 Tower,每台电脑具体配置: 英特尔 Core i3 530双核处理器,主板是英特尔 3450 芯片组,内存4G,硬盘500G。

集群中带宽是1000兆。

集群中网卡、交换机、网线均为1000兆。

其中一台机器是Master节点,即主节点,另外四台是Slave节点,即数据节点。这五台电脑彼此间通过路由器相连,从而实现相互通信以及数据传输。他们都可以通过路由器访问Internet。

2, 集群内电脑详细信息

集群内5台电脑机器名分别是master、slave1、slave2、slave3、slave4。每台电脑用root操作Hadoop,下面描述了集群内master节点和slave1节点的机器信息。

(1)   master服务器

机器

详细信息

机器名称

master

IP地址

172.23.7.160

最高用户名

root

最高用户密码

123456

(2)   slave1服务器

机器

详细信息

机器名称

slave1

IP地址

172.23.7.161

最高用户名

root

最高用户密码

123456

三,   CentOS安装配置

集群内每台电脑安装CentOS6.2操作系统。

四,   网络配置

1,  集群内电脑IP配置如下:

机器

IP地址

master

172.23.7.160

slave1

172.23.7.161

slave2

172.23.7.162

slave3

172.23.7.163

slave4

172.23.7.164

2,  配置防火墙

集群内每台电脑关闭防火墙,下面以master为例说明

(1)       输入setup,进入防火墙配置界面

(2)       选择Firewall  configuration,Run  Tool。点击“Run Tool”,下一步。

(3)       将Firewall后面中括号内的星号去掉,变成disable,点击OK下一步。

(4)       选中“yes”,下一步。

(5)       选择“Quit”退出即可。

3,  查看当前机器名称

用hostname命令显示机器名称

4,  修改当前机器名称

如果查看机器名不是我们想要的,需要修改机器名。通过对"/etc/sysconfig/network"文件修改其中"HOSTNAME"后面的值,改成我们规划的名称。这个"/etc/sysconfig/network"文件是定义hostname和是否利用网络的不接触网络设备的对系统全体定义的文件。"/etc/sysconfig/network"的设定项目如下:

用下面命令进行修改当前机器的主机名(备注:修改系统文件一般用root用户)

5,  修改IP地址

假定我们的机器连IP在当时安装机器时都没有配置好,那此时我们需要对"ifcfg-eth0"文件进行配置,该文件位于"/etc/sysconfig/network-scripts"文件夹下。

在这个目录下面,存放的是网络接口(网卡)的制御脚本文件(控制文件),ifcfg- eth0是默认的第一个网络接口,如果机器中有多个网络接口,那么名字就将依此类推ifcfg-eth1,ifcfg-eth2,ifcfg- eth3,……。

这里面的文件是相当重要的,涉及到网络能否正常工作。设定形式:设定值=值设定项目项目如下:

用下面命令修改IP。

下面以master为例配置IP地址:

IPADDR IP后面写IP地址,172.23.7.160

GATEWAY 后面写网关,172.23.7.1

NETMASK后面写子网掩码,255.255.255.0

DNS1后面写DNS服务器,202.202.32.33

6,  配置hosts文件

 "/etc/hosts"这个文件是用来配置主机将用的DNS服务器信息,是记载LAN内接续的各主机的对应主机名和IP地址,用户在进行网络连接时,首先查找该文件,寻找对应主机名对应的IP地址。

需要在每台电脑上配置hosts文件,配置操作系统,下面以master节点为例介绍:

(1)     root 身份打开/etc /hosts 文件,命令:

(2)     在hosts中写上本集群内所有电脑IP地址和对应主机名

(3)     配置是否成功,在集群内任一电脑,ping其他电脑用户名,如果ping通了,则说明成功。比如在master上ping  slave1

如上图说明成功了。

五,   配置SSH

1、  在Hadoop集群中,节点A连接到节点B时,需要在A上生成一个密钥对,包括一个公钥和一个私钥,而后将公钥复制到B。当A过 SSH连接B,B会生成一个随机数并用A公钥对随机数进行加密,并发送给A。A收到加密数之后再用私钥解密,并将解密数回传给B,B确认解密数无误之后就允许A进行连接了。这就是一个公钥认证过程,其间不需要用户手工输入密 码。重要过程是将客户端A的公钥复制到B上。在Hadoop集群下,需要任一台电脑可以无密码登陆其他电脑,需要将每台电脑的公钥发送到集群内所有电脑上。

2、  在master上生成密码对流程如下:

(1)     生成密钥对:

a)跳转到/root/.ssh目录下:

c)在.ssh文件夹下生成密钥对

[root @master  .ssh]#  ssh-keygen -t  rsa

之后一直点击回车键默认。

此时,会在/root/.ssh下生成了id_rsa(私钥),id_rsa.pub(公钥);

3、  分别在集群其他电脑上执行第2步操作,都会生成密钥对id_rsa.pub和id_rsa,

4、  配置authorized_keys

将集群内所有电脑的id_rsa.pub都复制到authorized_keys上,再将authorized_keys存储到所有电脑上。

(1)在master电脑上,把生成的id_ras.pub内容复制到authorized _keys中;执行指令:

如果authorized_keys不存在,则生成authorized_keys,再将id_rsa.pub内容复制到authorized_keys中。

(2)将authorized_keys复制到slave1电脑上:

按照(1)步,将slave1生成密钥对添加到authorized_keys:

(3)依次操作将slave2,slave3,slave 4上的密钥对添加到authorized_keys上。

下一步,将最新authorized_keys复制到集群内所有的电脑上,和id_rsa.pub存储在同一目录下。

六,   安装JDk

软件准备:jdk-7u45-linux-x64.tar.gz,集群内所有电脑都需要安装JDK,我们可以在master上安装好JDK后,将安装文件复制到其他电脑相同目录下即可。将JDK统一安装在所有电脑的/usr/local目录下;下面以master电脑安装JDK为例介绍(以root安装):

注:如果是jdk是bin格式,需要赋值,chmod 755 jdk-7u45-linux-x64.bin,然后./jdk-7u45-linux-x64.bin安装jdk,会在同一目录下产生安装目录。

1、  查看默认的JDK命令:

[root@master  local]$  java  -version

提示现在的jdk版本是1.6.0_22,需要安装新版JDK。

2、  安装jdk,将jdk解压缩

[root @master  local]#  tar –zxvf  jdk-7u45-linux-x64.tar.gz

之后,在/usr/local目录下产生一个新的 jdk1.7. 0_45文件夹

3、  设置环境变量

打开配置文件profile,命令:

[root @master  local]#  vim  /etc/profile

在空白处添加如下信息:

JAVA_HOME=/usr/local/ jdk1.7. 0_45

PATH=$JAVA_HOME/bin:$PATH

CLASSPATH=.:$JAVA_HOME/lib/dt.jar:$JAVA_HOME/lib/tools.jar

export JAVA_HOME

export PATH

export CLASSPATH

4、  让系统配置立即生效,不用重启系统,终端输入命令:

[root @master  local]#  source  /etc/profile

5、  查看版本:

[root @master  local]#  java -version

显示我们安装的新版本是jdk1.7.0_45,说明JDK安装成功。

6、  将主节点master上安装好的jdk复制到其他电脑相同目录下。此处以复制到slave1为例。

a)         将jdk的解压缩文件复制到slave1电脑上

[root @master  local]#  scp -r  jdk1.7.0_45  root@slave1:/usr/local

a)         将主节点master上的JDk配置文件”/etc/profile”拷贝到其他子节点上

[root @master  local]#  scp  /etc/profile  slave1:/etc/profile

在slave1电脑上执行一下语句,使java配置立即生效。

[root @master  local]#  source  /etc/profile

b)         在子节点上查看jdk是否安装成功,结果显示jdk1.7.0_45,说明安装成功。

[root @slave1Desktop]#  java  –version

七,   安装Hadoop集群

1、  集群内所有电脑都需要安装hadoop,我们将hadoop统一安装在所有电脑的/usr/local目录下;下面以master电脑安装hadoop为例介绍(以root用户安装):

2、  输入指令“rpm –ivh hadoop-1.2.1-1.x86_64.rpm”安装hadoop:

3、      安装文件会在/etc下生成hadoop文件,可在此处配置hadoop配置文件,将hadoop运行指令放到/usr/sbin目录下,下面配置hadoop配置文件,总共需要配置5个。

(1)     配置core-site.xml,修改每个属性的value值,

core-site.xml配置HDFS和MapReduce的。

<!—core-site.xml-->

<property>

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

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

</property>

<property>

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

<value>hdfs://172.23.7.160:9000</value>

</property>

(2)     设置完步骤(2)后,在/home/hadoop目录下创建一个名为tmp的文件夹

(3)     返回到/etc/hadoop目录下,继续配置文件,下面配置hdfs-site.xml

hdfs-site.xml配置HDFS的。

<!—hdfs-site.xml-->

<property>

<name>dfs.replication</name>

<value>2</value>

</property>

注:副本个数,不配置默认是3此处写2.

(4)     配置mapred-site.xml

mapred-site.xml配置MapReduce的。

<!—mapred-site.xml-->

<property>

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

<value>172.23.7.160:9001</value>

</property>

(5)     配置masters文件,加入namenode的节点名,并删除前面的内容

172.23.7.160

注:此处填写主节点主机名或IP皆可。

(6)     配置slaves文件, 加入所有datanode的节点名

172.23.7.161

172.23.7.162

172.23.7.163

172.23.7.164

注:此处填写所有数据节点的主机名或IP地址

4、  在其他4台电脑上分别执行“步骤2“,然后将master节点,/etc/hadoop目录下的core-site.xml、mapred-site.xml、hdfs-site.xml、masters、slaves五个文件复制到其余4台电脑相应目录下。

5、  启动hadoop集群(主节点)

(1) 格式化文件系统:

注:在第一次启动hadoop集群时候,需要格式化文件系统,以后不需要此操作。

(3) 启动hadoop集群

此时提示你,没有权限执行此操作。start-all.sh指令存在于/usr/sbin目录下,需要赋予root用户权限,root用户可以对sbin文件夹进行任何操作。

chmod –R 777 /usr/sbin

6、    查看运行结果

(1)     在主节点master上用java自带的小工具jps查看进程

进程中必须包含NameNode和JobTracker这两个,不然说明安装失败。

(2)     在其他数据节点下用java自带的小工具jps查看进程

进程必须包含DataNode和TaskTracker两个,不然说明安装失败。

hadoop-1.2.1-1.x86_64.rpm、jdk-7u45-linux-x64.tar.gz安装(64位)的更多相关文章

  1. centos6.5安装jdk(解压tar.gz)

    0.说明 下载jdk文件包jdk-7u79-linux-x64.tar.gz. 1.环境清理(系统自带的OpenJDK) 1.1 查看OpenJDK的安装包 $ rpm -qa |grep java ...

  2. zip格式jdk在Linux环境下的安装过程

    1下载jdk [root@localhost opt]# cd soft_bak/[root@localhost soft_bak]# lsjdk1.7.0_25.zip postgresql-9.4 ...

  3. Linux系统下安装配置JDK(rpm方式及tar.gz方式)

    以前都是在Windows环境进行开发的,最近因工作需要:学习在Linux系统下搭建开发环境,自此记录搭建过程,以方便查阅. 本文借鉴了 Angel挤一挤 .小五 两位的博客. 准备材料: JDK下载链 ...

  4. Centos6.6 tar包安装JDK

    Linux CentOS 6.6安装JDK1.7 目录 1.下载JDK 2.卸载JDK 3.安装JDK 3.1..rpm后缀格式JDK安装方式 3.2..tar.gz后缀格式JDK安装方式 4.验证安 ...

  5. CentOS6.4 64位系统安装jdk

    1. CentOS操作安装好了以后,系统自带了openJDK,先查看相关的安装信息: $rpm -qa | grep java tzdata-java-2013b-1.el6.noarchjava-1 ...

  6. Java java jdk在Linux下安装与环境变量的配置

    java jdk在Linux下安装与环境变量的配置 by:授客 QQ:1033553122 linux环境:CentOS-6.0-x86_64-bin-DVD1.iso [root@localhost ...

  7. 一、Linux&配置,依赖安装&Tomcat,Mysql,jdk安装

    基础知识: 1 OS Operation System 作用:控制硬件,服务软件 2 VMware虚拟机: 虚拟出一台计算机环境 配置两个虚拟网卡,适配器里查看 3 在虚拟机上安装操作系统Linux ...

  8. 详细讲解Hadoop源码阅读工程(以hadoop-2.6.0-src.tar.gz和hadoop-2.6.0-cdh5.4.5-src.tar.gz为代表)

    首先,说的是,本人到现在为止,已经玩过.                   对于,这样的软件,博友,可以去看我博客的相关博文.在此,不一一赘述! Eclipse *版本 Eclipse *下载 Jd ...

  9. linux下查看已经安装的jdk 并卸载jdk

    一.查看Jdk的安装路径: whereis javawhich java (java执行路径)echo $JAVA_HOME echo $PATH 备注:如果是windows中,可以使用: set j ...

随机推荐

  1. readlink 获取当前进程对应proc/self/exe

    [readlink 获取当前进程对应proc/self/exe] shell中  readlink /proc/self/exe READLINK(2)NAME       readlink - re ...

  2. protobuf's custom-options

    [protobuf's custom-options] protobuf可以设置属性,就像__attribute__可以给函数设置属性一样,protobuf更牛的是可以设置自定义属性.实际就是属性对象 ...

  3. 判断viewpager左右滑动方向

    实现思路就是通过viewpager的滑动监听,用参数position进行比较,同时当判断完这个要把比较的positon覆盖.这里简单介绍一下public void onPageScrolled(int ...

  4. redis的订阅和发布

    #订阅和发布有什么用呢?# 特点# 1.实现一个一对多的效果,只有一个发布者,多个订阅者# 2.实时的发布消息,广播方发布消息,所有的订阅者都会受到消息,一个人同时只能接受#一个频道 1.先写一个公共 ...

  5. shell编程9*9乘法表

    </pre>脚本内容<pre name="code" class="plain">#!/bin/bash for i in " ...

  6. cakephp执行原生sql语句

    $sql = 'select sum(amount) as amount from option_capital where status = 2 and amount > 0 and user ...

  7. Android Service 通知Activity更新界面的方法研究

    Android Service 通知Activity更新界面的方法研究   Android的最重要的组件式service和activity,那么在使用的过程中,我们最常遇到的问题是他们之间的通信问题. ...

  8. jdb调试程序

    1) jdb调试正在运行的进程: 先使用jps先确定进程号,然后让jdb连接上目标进程(23549换成实际的进程号): jdb -connect sun.jvm.hotspot.jdi.SAPIDAt ...

  9. UIPickerView 修改必须滚动才修改值的bug

    //相应的选择转动 - (void)pickerView:(UIPickerView *)pickerView didSelectRow:(NSInteger)row inComponent:(NSI ...

  10. Kinect相机位姿

    可以直接得到吧 还是要反求 pose.txt 里面一共有5个七参数.正好对应5幅图片.