[精华]Hadoop,HBase分布式集群和solr环境搭建

1. 机器准备

1.1 准备了2台机器,安装win7系统(64位)

两台windows物理主机:

192.168.131.44 administrator/(密码是一个空格)

192.168.131.67 administrator/(密码是一个空格)

1.2. 每台机器上安装VMwareWorkstation8.0.3

VMwareWorkstation8.0.3序列号:JG2TD-DJL95-FZZZ8-DU1NH-33GH7

1.3. 创建虚拟机CentOS-6.5-x86_64-bin-DVD1.iso

personalize Linux:

full name: hadoop

user name: hadoop

password : root

可在VMwareWorkstation中新建虚拟机,或克隆(已有虚拟机)的方式快速创建5台CentOS-6.5-x86_64-bin机器.分别为master1,master2,slave1,slave2,solr;

192.168.131.60 root/root

192.168.131.86 root/root

192.168.131.81 root/root

192.168.131.85 root/root

192.168.131.90 root/root

新建:

克隆:

2. 基础环境配置

为了便于以后对虚拟机操作, 建议对5台CentOS进行基础环境配置.

进入虚拟机后,建议以root用户方式登录

2.1 固定机器IP

两种方式:

第一种:通过Linux图形界面进行修改(强烈推荐)

进入Linux图形界面 -> 右键点击右上方的两个小电脑 -> 点击Edit connections -> 选中当前网络System eth0 -> 点击edit按钮 -> 选择IPv4 -> method选择为manual -> 点击add按钮 -> 添加IP:192.168.1.119 子网掩码:255.255.255.0 网关:192.168.1.1 -> apply

    第二种:修改配置文件方式
    vim /etc/sysconfig/network-scripts/ifcfg-eth0

        DEVICE="eth0"
        BOOTPROTO="static"           ###
        HWADDR="00:0C:29:3C:BF:E7"
        IPV6INIT="yes"
        NM_CONTROLLED="yes"
        ONBOOT="yes"
        TYPE="Ethernet"
        UUID="ce22eeca-ecde-4536-8cc2-ef0dc36d4a8c"
        IPADDR="192.168.1.44"       ###
        NETMASK="255.255.255.0"      ###
        GATEWAY="192.168.1.1"        ###

2.2 关闭防火墙

查看防火墙状态: service iptables status

关闭防火墙

service iptables status

service iptables stop

#查看防火墙开机启动状态

chkconfig iptables –list

#关闭防火墙开机启动

chkconfig iptables off

2.3 修改hostname:

vim /etc/sysconfig/network

    NETWORKING=yes
    HOSTNAME=itcast01    ###

五台机器分别修改为master1,master2,slave1,slave2,solr.

2.4 配置hosts文件

编辑hosts文件:

vim /etc/hosts, 添加如下机器信息

192.168.131.60 master1

192.168.131.86 slave1

192.168.131.81 master2

192.168.131.85 slave2

192.168.131.90 solr

访问hdfs用的的windows系统,包括开发用的机器,都需要将ip地址信息加入hosts文件.

2.5 配置master1,master2,slave1,slave2,solr机器之间的ssh免密码登录:

生成ssh免登陆密钥

cd ~,进入到我的home目录

cd .ssh/

ssh-keygen -t rsa (四个回车)
执行完这个命令后,会生成两个文件id_rsa(私钥)、id_rsa.pub(公钥)
将公钥拷贝到要免登陆的机器上
cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
或
ssh-copy-id -i localhost

拷贝authorized_keys文件到其他机器命令

scp authorized_keys [email protected]:~/.ssh/

多台机器设置ssh免密码登陆技巧方法:

1.安装ssh. sudo apt-get install ssh. 安装完成后会在~目录(当前用户主目录,即这里的/home/xuhui)下产生一个隐藏文件夹.ssh(ls -a 可以查看隐藏文件)。如果没有这个文件,自己新建即可(mkdir .ssh).

2.进入.ssh目录下面,在每台机器上执行:ssh-keygen -t rsa 之后一路回车,产生密钥;

3。完成第二步后会产生两个文件:

id-rsa #私钥

id-rsa.pub #公钥

4.在第一台机器的目录.ssh下执行命令,cat id-rsa.pub >> authorized_keys;此后.ssh下面会出现authorized_keys文件。

5.然后将第一台机器的.ssh目录下面的authorized_keys文件拷贝到第二台计算机的.ssh目录下,如:scp authorized_keys [email protected]:~/.ssh/

6.再转到第二台机器的.ssh目录下,会发现刚刚传输过来的文件-authorized_keys,然后执行命令,将第二台计算机的公钥也加进来,如:cat id-rsa.pub >> authorized_keys.

7.将第二台计算机新生成的authorized_keys传输第三台计算机,将第三台计算机的公钥-id-rsa.pub添加到从第二台计算机传过来的authorized_keys里面。

8.依次类推,直至集群中的最后一台计算机。

9.在集群的最后一台计算机执行完添加后,生成的authorized_keys文件就包含集群中所有计算机的公钥,如果以后还有机器加进到集群中来,可以直接添加到文件-authorized_keys。最后,将最后生成的authorized_keys复制到集群中的每一台计算机的.ssh目录下,覆盖掉之前的authorized_keys。

10.完成第九步后,就可以在集群中任意一台计算机上,免密码ssh登录到其他计算机了。

2.6 时间同步

在联网状态下, 调整所有机器在同一时区, 如shanghai, 时间即可自动同步。

3. 安装JDK

安装JDK, hadoop,hbase 可以先在一台机器安装,如master1机器上. 安装完成后直接copy相关文件和文件夹到其他机器即可完成所有机器安装. 下面有详细步骤说明.

1. 解压jdk

#创建文件夹

mkdir /usr/java

#解压

tar -zxvf jdk-7u55-linux-i586.tar.gz -C /usr/java/

(对于jdk-6u45-linux-x64.bin这样的需要:

1)在下载得到的二进制文件上执行 chmod +x 命令

chmod +x jdk-6u21-linux-x64.bin

2)执行该二进制文件:

./jdk-6u21-linux-x64.bin )

2. 将java添加到环境变量中

vim /etc/profile

#在文件最后添加

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

export PATH=PATH:JAVA_HOME/bin

    #刷新配置
    source /etc/profile

4.安装hadoop

  1. 上传hadoop安装包
  2. 解压hadoop安装包

    mkdir /cloud

    #解压到/cloud/目录下

    tar -zxvf hadoop-2.2.0.tar.gz -C /cloud/

  3. 修改配置信息:(5个文件)/hadoop-2.2.0/etc/hadoop目录下

    第一个:hadoop-env.sh

    在27行修改

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

    第二个:core-site.xml

    fs.defaultFS

    hdfs://master1:9001

    hadoop.tmp.dir

    file:/data/hadoopdata/tmp

第三个:hdfs-site.xml

dfs.namenode.secondary.http-address

master2:9001

dfs.namenode.name.dir

file:/data/hadoop-2.2.0/name

true

dfs.datanode.data.dir

file:/data/hadoop-2.2.0/data01

true

dfs.replication

2

dfs.permissions

false

第四个:mapred-site.xml.template 需要重命名: mv mapred-site.xml.template mapred-site.xml

mapreduce.framework.name

yarn

mapred.system.dir

file:/data/mapred/system

true

mapred.local.dir

file:/data/mapred/local

true

第五个:yarn-site.xml

yarn.resourcemanager.address

master1:8032

yarn.resourcemanager.scheduler.address

master1:8030

yarn.resourcemanager.resource-tracker.address

master1:8031

yarn.resourcemanager.admin.address

master1:8033

yarn.resourcemanager.webapp.address

master1:8088

yarn.nodemanager.aux-services

mapreduce_shuffle

yarn.nodemanager.aux-services.mapreduce.shuffle.class

org.apache.hadoop.mapred.ShuffleHandler

  1. 将hadoop添加到环境变量

    vim /etc/profile

    export JAVA_HOME=/usr/java/jdk1.6.0_45
    export HADOOP_HOME=/cloud/hadoop-2.2.0
    export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin
    

5. 安装hbase

  1. 拷贝hbase-0.96.0-hadoop2-bin.tar.gz到linux

    解压到/data目录下.

    配置:

  2. 把hadoop的hdfs-site.xml和core-site.xml 放到hbase/conf下
  3. 修改conf/hbase-env.sh (4处修改,如下截图)

4. 修改hbase-site.xml文件:

hbase.rootdir

hdfs://master1:9001/hbase

The directory shared by RegionServers

hbase.master

master1:60000

The directory shared by RegionServers

hbase.cluster.distributed

true

The mode the cluster will be in.Possible values are

false: standalone and pseudo-distributed setups with managed Zookeeper

true: fully-distributed with unmanaged Zookeeper Quorum (see hbase-env.sh)

hbase.zookeeper.quorum

slave1,slave2

The directory shared by RegionServers

hbase.zookeeper.property.dataDir

/data/hadoopdata/hbase/zookeeper

Property from ZooKeeper‘s config zoo.cfg.

The directory where the snapshot is stored.

5. 修改 regionservers

vim regionservers

slave1

slave2

6. 完成其他机器环境安装

把master1的hadoop目录、jdk目录、hbase目录、/etc/hosts、/etc/profile复制到master2、slave1、slave2节点

1. Hadoop目录:/data/hadoop-2.2.0

scp -r /data/hadoop-2.2.0 [email protected]:/data

scp -r /data/hadoop-2.2.0 [email protected]:/data

scp -r /data/hadoop-2.2.0 [email protected]:/data

2. Jdk目录:/usr/java

scp -r /usr/java [email protected]:/usr/java

scp -r /usr/java [email protected]:/usr/java

scp -r /usr/java [email protected]:/usr/java

3. 拷贝hbase到其他节点

scp -r /data/hbase-0.96.0-hadoop2/ master2:/data

scp -r /data/hbase-0.96.0-hadoop2/ slave1:/data

scp -r /data/hbase-0.96.0-hadoop2/ slave2:/data

  1. /etc/hosts:

    scp /etc/hosts [email protected]:/etc/hosts

    scp /etc/hosts [email protected]:/etc/hosts

    scp /etc/hosts [email protected]:/etc/hosts

  2. /etc/profile:

    scp /etc/profile [email protected]:/etc/profile

    scp /etc/profile [email protected]:/etc/profile

    scp /etc/profile [email protected]:/etc/profile

7.启动集群:

只需要在主节点,即master1机器上执行。

1. 格式化HDFS(namenode)第一次使用时要格式化,只需要在master1上操作.

在master1机器上cd 到hadoop目录的sbin目录下

#hdfs namenode -format

  1. 启动hdfs:

    ./start-all.sh

    这时可以查看:http://192.168.131.60:50070 (HDFS管理界面)

    3.启动hbase,

    启动hbase,在主节点上运行:

    start-hbase.sh

    附: 单独启动hmaster命令:

    ./hbase-daemon.sh start master

  2. 查看各个节点服务启动状态:

    Master1:

    Master2:

    Slave1:

    Slave2:

5.通过浏览器访问管理页面

http://192.168.131.60:60010 hbase管理界面

http://192.168.131.60:8088 MR管理界面(yarn的管理界面)

http://192.168.131.60:50070 hdfs的管理界面

至此,hbase集群环境搭建完成!!

8.准备solr机器

8.1 机器基础环境配置

1.安装JDK(较为简单,具体步骤略)

8.2 安装tomcat

1.拷贝apache-tomcat-6.0.37.tar.gz到CentOS 的/data/tools目录下

2.解压到/data/solr-tomcat

#tar -xvzf apache-tomcat-6.0.37.tar.gz -C /data/solr-tomcat

3.安装完tomcat后修改./conf/server.xml

版权声明:本文为博主原创文章,未经博主允许不得转载。

时间: 2024-12-11 14:56:46

[精华]Hadoop,HBase分布式集群和solr环境搭建的相关文章

Hadoop+Hbase分布式集群架构“完全篇

1.认识Hadoop和Hbase 1.1 hadoop简单介绍 Hadoop是一个使用java编写的Apache开放源代码框架,它允许使用简单的编程模型跨大型计算机的大型数据集进行分布式处理.Hadoop框架工作的应用程序可以在跨计算机群集提供分布式存储和计算的环境中工作.Hadoop旨在从单一服务器扩展到数千台机器,每台机器都提供本地计算和存储. 1.2 Hadoop架构 Hadoop框架包括以下四个模块: Hadoop Common:这些是其他Hadoop模块所需的Java库和实用程序.这些

[推荐]Hadoop+HBase+Zookeeper集群的配置

Hadoop+HBase+Zookeeper集群的配置  http://wenku.baidu.com/view/991258e881c758f5f61f67cc.html?re=view HDFS+MapReduce+Hive+HBase十分钟快速入门   http://wenku.baidu.com/view/7db2fcd276eeaeaad1f33055.html Hadoop+Zookeeper+HBase部署指南  http://wenku.baidu.com/view/02e4ad

Hadoop全分布式集群环境配置

Hadoop是一个由Apache基金会所开发的分布式系统基础架构. 用户可以在不了解分布式底层细节的情况下,开发分布式程序.充分利用集群的威力进行高速运算和存储. Hadoop实现了一个分布式系统(Hadoop Distributed File System),简称HDFS.HDFS有高容错的特点,并且设计用来部署在低廉的(low-cost)硬件上:而且它提供高吞吐量(high throughput)来访问应用程序的数据,适合那些有着超大数据集(large data set)的应用程序.HDFS

Hadoop伪分布式集群搭建总结

Hadoop伪分布式集群搭建总结 一.所需软件VMware15!CentOS6.5JDK1.8Hadoop2.7.3二.安装注意:对文件进行编辑:输入a,表示对该文件进行编辑,最后保存该文件,操作为:点击键盘上的Esc按钮,然后输入英文的:字符,再输入wq,点击回车,完成文件的保存.1.关闭防火墙和禁用SELINUX(1).永久关闭防火墙,重启Linux系统(2) .禁用SELINUX:修改文件参数 重启Linux使其生效(3).检查防火墙是否运行,显示下图即为关闭2.配置hostname与IP

Hadoop完全分布式集群搭建

Hadoop的运行模式 Hadoop一般有三种运行模式,分别是: 单机模式(Standalone Mode),默认情况下,Hadoop即处于该模式,使用本地文件系统,而不是分布式文件系统.,用于开发和调试. 伪分布式模式(Pseudo Distrubuted Mode),使用的是分布式文件系统,守护进程运行在本机机器,模拟一个小规模的集群,在一台主机模拟多主机,适合模拟集群学习. 完全分布式集群模式(Full Distributed Mode),Hadoop的守护进程运行在由多台主机搭建的集群上

安装hbase分布式集群出现的报错- ERROR:org.apache.hadoop.hbase.PleaseHoldException: Master is initializing

可能的原因如下: 1. 时间没有同步 HBase需要结点间的时间必须是同步的,可以使用date命令在Linux查看时间(同步时间命令:ntpdate 1.cn.pool.ntp.org) 2. 底层采用的不是hdfs协议 这个可以通过查看hbase-site.xml中参数hbase.rootdir的值来群定,一些其它的协议比如file协议等等, HBase也 是支持的 3.  ZooKeeper 1) 查看zookeeper的状态是否正常,可以使用 zkServer.sh status 查看状态

hadoop伪分布式集群搭建与安装(ubuntu系统)

1:Vmware虚拟软件里面安装好Ubuntu操作系统之后使用ifconfig命令查看一下ip; 2:使用Xsheel软件远程链接自己的虚拟机,方便操作.输入自己ubuntu操作系统的账号密码之后就链接成功了: 3:修改主机的名称vi /etc/hostname和域名和主机映射对应的关系 vi /etc/hosts,改过之后即生效,自己可以ping一下,我这里ip对应master,比如ping master之后发现可以ping通即可: 4:修改过主机名称和主机名与ip对应的关系之后:开始上传jd

Hadoop伪分布式集群搭建-此文章在个人51.cto转载

一.HDFS伪分布式环境搭建 Hadoop分布式文件系统(HDFS)被设计成适合运行在通用硬件(commodity hardware)上的分布式文件系统.它和现有的分布式文件系统有很多共同点.但同时,它和其他的分布式文件系统的区别也是很明显的.HDFS是一个高度容错性的系统,适合部署在廉价的机器上.HDFS能提供高吞吐量的数据访问,非常适合大规模数据集上的应用.HDFS放宽了一部分POSIX约束,来实现流式读取文件系统数据的目的.HDFS在最开始是作为Apache Nutch搜索引擎项目的基础架

Hadoop伪分布式集群的安装部署

一.如何为虚拟机做快照? 1.什么是快照? 快照就是对当前的虚拟机状态进行拍照,保留虚拟机当前状态的操作信息. 2.为什么要为虚拟机做快照? 第一:为克隆不同状态的虚拟机提前做准备. 第二:当对虚拟机的某些操作执行错误而且改正比较麻烦的时候,可以切换到之前正常的虚拟机状态重新进行相关的操作. 3.如何为虚拟机做快照? (1)选择要克隆的虚拟机,然后“右键”,选择“快照”,然后选择“拍摄快照”. (2)可以为快照取个名称,也可以为虚拟机当前的状态做个描述,然后点击“拍摄快照”. 4.如何转到某一特