hadoop zookeepers Hbase部署 增加节点

一、环境配置

1、服务器信息

master: 192.2.0.44   cpu:4核  内存:8G   主机名:Appsvr5

slave:192.2.0.137  cpu:4核 内存:8G  主机名:Appsvr6

 

2、禁用防火墙

# service iptables stop    -----停防火墙

# chkconfig iptables off    ----设置防火墙开机不启动

 

3、关闭SElinux

# cd /etc/selinux/

# vi config

SELINUX=disabled

# reboot

 

二、安装hadoop

1、创建用户

# groupadd hadoop

# useradd hadoop -g hadoop

# passwd hadoop

将用户加到sudo列表

# vi /etc/sudoers

hadoop         ALL=(ALL)       ALL

 

2、实现linux的ssh无密码验证配置

(1)master上的操作

 # ssh-keygen -t rsa     -----------一直回车

 # scp /root/.ssh/id_rsa.pub Appsvr5:/root/authorized_keys

 

下面语句在slave上执行

[root@Appsvr5 ~]# cat /root/authorized_keys >>/root/.ssh/authorized_keys

[root@Appsvr5 ~]# chmod 600 /root/.ssh/authorized_keys

 

(2)slaves上的操作

 # ssh-keygen -t rsa      -----------一直回车

# scp /root/.ssh/id_rsa.pub Appsvr6:/root/authorized_keys

 

下面语句在master上执行

[root@Appsvr6 ~]# cat /root/authorized_keys >>/root/.ssh/authorized_keys

[root@Appsvr6 ~]# chmod 600 /root/.ssh/authorized_keys

slaves上的操作

#su - haddop

$  ssh-keygen -t rsa

$ scp /home/hadoop/.ssh/id_rsa.pub Appsvr6:~/authorized_keys

 

下面语句在master上执行

$ cat ~/authorized_keys >> ~/.ssh/authorized_keys

$ chmod 600 ~/.ssh/authorized_keys

 

 

3、添加主机名自动解析

# vi /etc/hosts

192.2.0.137  Appsvr6

192.2.0.44   Appsvr5

 

4、安装JDK,并配置环境变量

(1)卸载系统自带的JDK

 # rpm -qa|grep java

 xxx

 # rpm -qa|grep gcj

 xxx

 # rpm -e --nodeps xxx

 

(2)安装JDK(jdk1.6或者以上)

# pwd

/usr/java

# ls

jdk-7u45-linux-x64.tar.gz

# tar xzf jdk-7u45-linux-x64.tar.gz

 

(3)配置环境变量

#vi /etc/profile   ---添加以下四行

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

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

#export PATH USER LOGNAME MALL HOSTNAME HISTSIZE INPUTRC

# source /etc/ profile

 

5、安装Hadoop

----master上操作

(1)解压软件包

$ pwd

/home/hadoop

$ ls

hadoop-2.5.0-cdh5.3.0.tar.gz

$ tar -zxvf hadoop-2.5.0-cdh5.3.0.tar.gz

 

配置hadoop的环境变量

# vi /etc/profile

export HADOOP_HOME=/home/hadoop/hadoop-2.5.0-cdh5.3.0

export LD_LIBRARY_PATH=$LD_LIBRARY_PATH:/usr/lib/hadoop/lib/native

 

(2)修改/home/hadoop/hadoop-2.5.0-cdh5.3.0/etc/hadoop下的core-site.xml、hdfs-site.xml、

mapred-site.xml、yarn-site.xml四个配置文件

 #vi core-site.xml
 <configuration>
        <property>
                <name>fs.defaultFS</name>
                <value>hdfs://Appsvr5:8020</value>
        </property>
        <property>
                <name>fs.trash.interval</name>
                <value>1</value>
        </property>
        <property>
                <name>fs.trash.checkpoint.interval</name>
                <value>10080</value>
        </property>
        <property>
                <name>io.native.lib.available</name>
                <value>true</value>
        </property>
</configuration>


# vi hdfs-site.xml
<configuration>
         <property>
                <name>dfs.namenode.name.dir</name>
                <value>file:///home/hadoop/dfs/nn</value>
        </property>
        <property>
                <name>dfs.permissions.superusergroup</name>
                <value>hadoop</value>
        </property>
        <property>
                <name>dfs.client.read.shortcircuit</name>
                <value>true</value>
        </property>
        <property>
                <name>dfs.datanode.data.dir</name>
                <value>file:///home/hadoop/dfs/dn</value>
        </property>
        <property>
                <name>dfs.domain.socket.path</name>
                <value>/var/lib/hadoop-hdfs/dn_socket</value>
        </property>
        <property>
                <name> dfs.namenode.http-address</name>
                <value>Appsvr5:50070</value>
        </property>
        <property>
                <name>dfs.webhdfs.enabled</name>
                <value>true</value>
        </property>
        <property>
                <name>dfs.datanode.hdfs-blocks-metadata.enabled</name>
                <value>true</value>
        </property>
        <property>
                <name>dfs.client.file-block-storage-locations.timeout.millis</name>
                <value>10000</value>
        </property>
        <property>
                <name>dfs.blocksize</name>
                <value>268435456</value>
        </property>
        <property>
                <name>hadoop.tmp.dir</name>
                <value>/home/hadoop/hadoop-tmp[路径手动建]</value>
        </property>
        <property>
                <name>dfs.replication</name>
                <value>2</value>
        </property>
        <property>
                <name>dfs.datanode.max.transfer.threads</name>
                <value>8092</value>
        </property>
</configuration>


# vi mapred-site.xml
<configuration>
        <property>
                <name>mapreduce.framework.name</name>
                <value>yarn</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.address</name>
                <value>Appsvr5:10020</value>
        </property>
        <property>
                <name>mapreduce.jobhistory.webapp.address</name>
                <value>Appsvr5:19888</value>
        </property>
        <property>
                <name>mapred.job.tracker</name>
                <value>Appsvr5:9001</value>
        </property>
        <!-- sqoop settings -->
        <property>
                <name>mapred.system.dir</name>
                <value>file:/home/hadoop/hadoop-tmp/mapred/system</value>
                <final>true</final>
        </property>
        <property>
                <name>mapred.local.dir</name>
                <value>file:/home/hadoop/hadoop-tmp/mapred/local</value>
                <final>true</final>
        </property>
</configuration>


# vi yarn-site.xml
<configuration>
        <!-- Site specific YARN configuration properties -->
        <property>
                <name>yarn.resourcemanager.address</name>
                <value>Appsvr5:8032</value>
        </property>
        <property>
                <name>yarn.resourcemanager.scheduler.address</name>
                <value>Appsvr5:8030</value>
        </property>
        <property>
                <name>yarn.resourcemanager.resource-tracker.address</name>
                <value>Appsvr5:8031</value>
        </property>
        <property>
                <name>yarn.resourcemanager.admin.address</name>
                <value>Appsvr5:8033</value>
        </property>
        <property>
                <name>yarn.resourcemanager.webapp.address</name>
                <value>Appsvr5:8088</value>
        </property>
        <!-- sqoop settings -->
        <property>
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce.shuffle</value>
        </property>
        <!-- add by jiachx
             config yarn resource limits -->
        <property>
                <name>yarn.nodemanager.vmem-pmem-ratio</name>
                <value>4.2</value>
        </property>
        <property>
                <name>yarn.nodemanager.vmem-check-enabled</name>
                <value>false</value>
        </property>
        <!--
        <property>
                <name>yarn.nodemanager.resource.cpu-vcores</name>
                <value>60</value>
        </property>
        <property>
                <name>yarn.nodemanager.resource.memory-mb</name>
                <value>61440</value>
        </property>
        -->
</configuration>

 

修改文件slaves

vi slaves

Appsvr5

 

运行前的准备

$ vi .bash_profile

#jdk

JAVA_HOME=/usr/java/jdk1.7.0_45

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

PATH=$JAVA_HOME/bin:$PATH

export JAVA_HOME CLASSPATH PATH

#hadoop

export HADOOP_HOME=/home/hadoop/hadoop-2.5.0-cdh5.3.0

export HADOOP_MAPRED_HOME=${HADOOP_HOME}

export HADOOP_COMMON_HOME=${HADOOP_HOME}

export HADOOP_HDFS_HOME=${HADOOP_HOME}

export YARN_HOME=${HADOOP_HOME}

export HADOOP_YARN_HOME=${HADOOP_HOME}

export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop

export HDFS_CONF_DIR=${HADOOP_HOME}/etc/hadoop

export YARN_CONF_DIR=${HADOOP_HOME}/etc/hadoop

export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

 

$ source .bash_profile

 

#su - hadoop(如果安转过程中建立了hadoop用户,就用hadoop用户操作,如果没有就用现有用户)

$ pwd

/home/hadoop/hadoop-2.5.0-cdh5.3.0/bin

$ hdfs namenode -format   -----格式化(可以在搭建用户执行)

$ ./start-all.sh

 

以下问题解决方式

 

WARN org.apache.hadoop.util.NativeCodeLoader: Unable to load native-hadoop library for your platform... using builtin-java classes where applicable

把hadoop-native-cdh4.4.0.tar.gz包加压到一下路径

/home/hadoop/hadoop-2.5.0-cdh5.3.0/lib

 

java.io.IOException: failed to stat a path component: '/var/run/hadoop-hdfs'.  error code 2 (No such file or directory)

 

解决:

# mkdir -p /var/run/hadoop-hdfs

# chown -R hadoop:hadoop /var/run/hadoop-hdfs

 

 

2015-04-13 17:58:32,733 FATAL org.apache.hadoop.yarn.server.nodemanager.containermanager.AuxServices: Failed to initialize mapreduce.shuffle

java.lang.IllegalArgumentException: The ServiceName: mapreduce.shuffle set in yarn.nodemanager.aux-services is invalid.The valid service name should only contain a-zA-Z0-9_ and can not start with numbers

 

解决:

        <property>  
                <name>yarn.nodemanager.aux-services</name>
                <value>mapreduce_shuffle</value>
        </property>

 

验证是否主节点是否验证成功

$ jps   

81262 ResourceManager

81558 NodeManager

94956 Jps

80959 DataNode

80818 NameNode

81113 SecondaryNameNode

成功的话有一下五个进程,如果缺少那 可以到/home/hadoop/hadoop-2.5.0-cdh5.3.0/logs/下面找对应的日志,根据日志排查问题

 

 

(3)修改Slaves文件主节点上操作

$ ./stop-all.sh

$cd /home/hadoop/hadoop-2.5.0-cdh5.3.0/etc/hadoop

$ vi slaves 

Appsvr6    -----slave节点

Appsvr5    ---在主节点上也启一个datanode

 

拷贝主节点的hadoop到slave节点上

[hadoop@Appsvr5 ~]$ pwd

/home/hadoop

[hadoop@Appsvr5 ~]$ ls

hadoop-2.5.0-cdh5.3.0  hadoop-2.5.0-cdh5.3.0.tar.gz  hadoop-tmp

[hadoop@Appsvr5 ~]$ scp -r hadoop-2.5.0-cdh5.3.0 hadoop@Appsvr6:/home/hadoop

 

$ ./start-all.sh ----在主节点上操作

 

 

常用命令(验证集群搭建情况):

$ hdfs dfs -mkdir /hadoop

$ hdfs dfs -ls /

Found 1 items

drwxr-xr-x   - hadoop supergroup          0 2015-04-14 13:52 /hadoop

$ hdfs dfs -put /home/test.txt /hadoop

$ hdfs dfs -ls /hadoop

Found 1 items

-rw-r--r--   1 hadoop supergroup          0 2015-04-14 13:55 /hadoop/test.txt

 

三、安装zookeepers(奇数个点)

1、搭建时间同步服务,这里用以前搭建好的ntp

直接在服务器上设计划任务

*/2 * * * * /usr/sbin/ntpdate -u 192.2.0.188 &

 

----注:以下操作都在master上操作

2、解压zookeepers

$ tar -zxvf zookeeper-3.4.5-cdh5.3.0.tar.gz

 

$vi zoo.cfg 

# Licensed to the Apache Software Foundation (ASF) under one or more

# contributor license agreements.  See the NOTICE file distributed with

# this work for additional information regarding copyright ownership.

# The ASF licenses this file to You under the Apache License, Version 2.0

# (the "License"); you may not use this file except in compliance with

# the License.  You may obtain a copy of the License at

#

#     http://www.apache.org/licenses/LICENSE-2.0

#

# Unless required by applicable law or agreed to in writing, software

# distributed under the License is distributed on an "AS IS" BASIS,

# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.

# See the License for the specific language governing permissions and

# limitations under the License.

 

maxClientCnxns=50

# The number of milliseconds of each tick

tickTime=2000

# The number of ticks that the initial

# synchronization phase can take

initLimit=10

# The number of ticks that can pass between

# sending a request and getting an acknowledgement

syncLimit=5

# the directory where the snapshot is stored.

dataDir=/var/lib/zookeeper

dataLogDir=/var/lib/zookeeper/log

# the port at which the clients will connect

clientPort=2181

#server.1=Appsvr5:2881:3881

#server.2=Appsvr6:2882:3882

#server.3=slave2:2888:3888

#server.4=slave3:2888:3888

#server.5=slave4:2888:3888

 

----建对应的目录

# mkdir -p /var/lib/zookeeper

# mkdir -p /var/lib/zookeeper/log

# chown -R hadoop:hadoop /var/lib/zookeeper

# chown -R hadoop:hadoop /var/lib/zookeeper/log

 

 

----拷贝到slave节点上

$ scp -r /home/hadoop/zookeeper-3.4.5-cdh5.3.0 hadoop@Appsvr6:/home/hadoop/

 

----建对应的目录

# mkdir -p /var/lib/zookeeper

# mkdir -p /var/lib/zookeeper/log

# chown -R hadoop:hadoop /var/lib/zookeeper

# chown -R hadoop:hadoop /var/lib/zookeeper/log

 

---启动zookeeper(两台服务都要执行)

$ pwd

/home/hadoop/zookeeper-3.4.5-cdh5.3.0/bin

$ ./zkServer.sh start

 

$ lsof -i:2181  ---看zookeeper是否起来

 

-----查看日志

$ pwd

/home/hadoop/zookeeper-3.4.5-cdh5.3.0/bin

$ more zookeeper.out

[myid:] - ERROR [main:QuorumPeerMain@86] - Invalid config, exiting abnormally

org.apache.zookeeper.server.quorum.QuorumPeerConfig$ConfigException: Error processing /home/hadoop/zookeeper-3.4.5-cdh5.3.0/bin/../conf/zoo.cfg

        at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:121)

        at org.apache.zookeeper.server.quorum.QuorumPeerMain.initializeAndRun(QuorumPeerMain.java:106)

        at org.apache.zookeeper.server.quorum.QuorumPeerMain.main(QuorumPeerMain.java:79)

Caused by: java.lang.IllegalArgumentException: /var/lib/zookeeper/myid file is missing

        at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parseProperties(QuorumPeerConfig.java:344)

        at org.apache.zookeeper.server.quorum.QuorumPeerConfig.parse(QuorumPeerConfig.java:117)

        ... 2 more

Invalid config, exiting abnormally

 

解决:

$vi /var/lib/zookeeper/myid

1

---内容根据下面server:后面的数字

server.1=Appsvr5:2881:3881

server.2=Appsvr6:2882:3882

 

再次查看服务是否启动

[hadoop@Appsvr5 bin]$ ./zkServer.sh start

JMX enabled by default

Using config: /home/hadoop/zookeeper-3.4.5-cdh5.3.0/bin/../conf/zoo.cfg

Starting zookeeper ... STARTED

[hadoop@Appsvr5 bin]$ jps

106882 Jps

103968 NameNode

104298 ResourceManager

106853 QuorumPeerMain

104151 SecondaryNameNode

[hadoop@Appsvr5 bin]$

 

四、配置Hbase

以下配置均在master上操作

1、解压软件包

$ tar -zxf hbase-0.98.6-cdh5.3.0.tar.gz

 

2、修改文件hbase-env.sh

$ pwd

/home/hadoop/hbase-0.98.6-cdh5.3.0/conf你看看文档吧

$ vi hbase-env.sh

添加以下几行

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

export HBASE_LOG_DIR=/home/hadoop/hbase-0.98.6-cdh5.3.0/logs

export HBASE_MANAGES_ZK=false

export HBASE_HOME=/home/hadoop/hbase-0.98.6-cdh5.3.0

export HBASE_HEAPSIZE=4096

export HBASE_LIBRARY_PATH=$HBASE_LIBRARY_PATH:$HBASE_HOME/lib/native:/usr/lib/hadoop/lib/native

 

注意要在这个路径下解压native   

/usr/lib/hadoop/lib/native

 

 

----建目录

# mkdir -p /home/hadoop/hbase-0.98.6-cdh5.3.0/logs

# chown hadoop:hadoop /home/hadoop/hbase-0.98.6-cdh5.3.0/logs

 

3、修改文件hbase-site.xml

<configuration>
    <property>
        <name>hbase.rootdir</name>
        <value>hdfs://Appsvr5:9000/hbase</value>  
    </property>
    <property>
        <name>hbase.master.port</name>
        <value>60005</value>
    </property>
    <property>
        <name>hbase.cluster.distributed</name>
        <value>true</value>
    </property>
    <property>
        <name>hbase.client.write.buffer</name>
        <value>2097152</value>
    </property>
    <property>
        <name>hbase.client.pause</name>
        <value>100</value>
    </property>
    <property>
        <name>hbase.client.retries.number</name>
        <value>35</value>
    </property>
    <property>
        <name>hbase.client.scanner.caching</name>
        <value>100</value>
    </property>
    <property>
        <name>hbase.client.keyvalue.maxsize</name>
        <value>10485760</value>
    </property>
    <property>
        <name>hbase.rpc.timeout</name>
        <value>60000</value>
    </property>
    <property>
        <name>hbase.snapshot.enabled</name>
        <value>true</value>
    </property>
    <property>
        <name>hbase.security.authentication</name>
        <value>simple</value>
    </property>
    <property>
        <name>zookeeper.session.timeout</name>
        <value>60000</value>
    </property>
    <property>
        <name>zookeeper.znode.parent</name>
        <value>/hbase</value>
    </property>
    <property>
        <name>zookeeper.znode.rootserver</name>
        <value>root-region-server</value>
    </property>
    <property>
        <name>hbase.zookeeper.quorum</name>
        <value> Appsvr5</value>
    </property>
    <property>
        <name>hbase.zookeeper.property.clientPort</name>
        <value>2181</value>
    </property>
    <property>
        <name>hbase.regionserver.handler.count</name>
        <value>100</value>
    </property>
    <property>
        <name>dfs.replication</name>
        <value>2</value>
    </property>
</configuration>

4、修改文件regionservers

$ pwd

/home/hadoop/hbase-0.98.6-cdh5.3.0/conf

$ vi regionservers

Appsvr5

Appsvr6

 

5、修改bin权限

# chown -R root:root /home/hadoop/hbase-0.98.6-cdh5.3.0/bin

# chmod a+x -R /home/hadoop/hbase-0.98.6-cdh5.3.0/bin

 

6、拷贝

$ scp -r hbase-0.98.6-cdh5.3.0 hadoop@Appsvr6:/home/hadoop/

 

在slave上执行

# chown -R root:root /home/hadoop/hbase-0.98.6-cdh5.3.0/bin

# chmod a+x -R /home/hadoop/hbase-0.98.6-cdh5.3.0/bin

 

 

7、启动(root下执行)master上执行

# pwd

/home/hadoop/hbase-0.98.6-cdh5.3.0/bin

 

# ./start-hbase.sh

 

 

 

 

 

$ hdfs dfs -mkdir /hbase

$hdfs dfs -chmod 777 /hbase

 

 

 

测试:

[root@Appsvr5 bin]# ./hbase shell

2015-04-21 17:18:55,723 INFO  [main] Configuration.deprecation: hadoop.native.lib is deprecated. Instead, use io.native.lib.available

HBase Shell; enter 'help<RETURN>' for list of supported commands.

Type "exit<RETURN>" to leave the HBase Shell

Version 0.98.6-cdh5.3.0, rUnknown, Tue Dec 16 19:18:44 PST 2014

 

hbase(main):002:0> list

TABLE                                                                                                                                                                           

t1                                                                                                                                                                              

1 row(s) in 1.6930 seconds

 

=> ["t1"]

hbase(main):003:0> create 'qgws',{NAME=>'content',COMPRESSION=>'SNAPPY',VERSION=>1,BLOCKCACHE=>'false'},{NAME=>'property',VERSION=>1,BLOCKCACHE=>'false'},{NAME=>'analyze',COMPRESSION=>'SNAPPY',VERSION=>1,BLOCKCACHE=>'false'}

Unknown argument ignored for column family content: 1.8.7

Unknown argument ignored for column family property: 1.8.7

Unknown argument ignored for column family analyze: 1.8.7

0 row(s) in 1.4150 seconds

 

=> Hbase::Table - qgws

hbase(main):004:0> list

TABLE                                                                                                                                                                           

qgws                                                                                                                                                                            

t1                                                                                                                                                                              

2 row(s) in 0.0150 seconds

 

=> ["qgws", "t1"]

hbase(main):005:0>alter 'qgws',METHOD=>'table_att','coprocessor'=>'|org.apache.hadoop.hbase.coprocessor.AggregateImplementation||'

Updating all regions with the new schema...

0/1 regions updated.

1/1 regions updated.

Done.

0 row(s) in 2.2890 seconds

 

hbase(main):006:0>count ‘表名’

 

五、增加节点

(一)配置服务器

1、服务器信息

slave2:192.2.0.45  cpu:4核 内存:8G  主机名:Appsvr7


2、禁用防火墙

# service iptables stop    -----停防火墙

# chkconfig iptables off    ----设置防火墙开机不启动

 

3、关闭SElinux

# cd /etc/selinux/

# vi config

SELINUX=disabled

# reboot

 

4、创建用户

# groupadd hadoop

# useradd hadoop -g hadoop

# passwd hadoop

将用户加到sudo列表

# vi /etc/sudoers

hadoop         ALL=(ALL)       ALL

#vi /etc/group

root:x:0:root,hadoop

 

5、在三个节点上增加域名解析
vi /etc/hosts
192.2.0.137  Appsvr6

192.2.0.44   Appsvr5

192.2.0.45   Appsvr7

 

6、root配置ssh无密码登陆
master---->slave2
master上的操作

# scp /root/.ssh/id_rsa.pub Appsvr7:/root/authorized_keys

 

下面语句在slave2上执行

[root@Appsvr5 ~]# cat /root/authorized_keys >>/root/.ssh/authorized_keys

[root@Appsvr5 ~]# chmod 600 /root/.ssh/authorized_keys

 

slave---->slave2
slave上的操作

# scp /root/.ssh/id_rsa.pub Appsvr7:/root/authorized_keys

 

下面语句在slave2上执行

[root@Appsvr5 ~]# cat /root/authorized_keys >>/root/.ssh/authorized_keys

[root@Appsvr5 ~]# chmod 600 /root/.ssh/authorized_keys

 

slave2---->master

slave2上的操作

# ssh-keygen -t rsa     -----------一直回车

 # scp /root/.ssh/id_rsa.pub Appsvr5:/root/authorized_keys

 

下面语句在master上执行

[root@Appsvr5 ~]# cat /root/authorized_keys >>/root/.ssh/authorized_keys

[root@Appsvr5 ~]# chmod 600 /root/.ssh/authorized_keys

 

slave2---->slave

slave2上的操作

# scp /root/.ssh/id_rsa.pub Appsvr6:/root/authorized_keys

 

下面语句在slave上执行

# cat /root/authorized_keys >>/root/.ssh/authorized_keys

# chmod 600 /root/.ssh/authorized_keys

 

7、配置时钟同步服务

* * * * * /usr/sbin/ntpdate -u 192.2.0.188 &

 

8、安装JDK,并配置环境变量

(1)卸载系统自带的JDK

 # rpm -qa|grep java

 xxx

 # rpm -qa|grep gcj

 xxx

 # rpm -e --nodeps xxx

 从主节点上拷贝jak
 scp -r/usr/java/ jdk1.7.0_45/ root@192.2.0.45:/usr/java/

 

9、设备环境变量

(3)配置环境变量

#vi /etc/profile   ---添加以下四行

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

export CLASSPATH=.:$JAVA_HOME/lib:$JAVA_HOME/jre/lib

#export PATH USER LOGNAME MALL HOSTNAME HISTSIZE INPUTRC

 

# chmod +x profile

# source profile

 

 

(二)拷贝环境到新节点上

 主节点上进行
 scp -r /home/hadoop/* root@192.2.0.45:/home/hadoop

 

 

配置hadoop的环境变量

# vi /etc/profile

export HADOOP_HOME=/home/hadoop/hadoop-2.5.0-cdh5.3.0

export PATH=$JAVA_HOME/bin:$JAVA_HOME/jre/bin:$HADOOP_HOME/bin:$HADOOP_HOME/sbin:$PATH
拷贝完成后对比一下文件目录权限

 

添加节点(三个节点都是操作)
#cd  /home/hadoop/hadoop-2.5.0-cdh5.3.0/etc/hadoop
#vi slave

Appsrv5

Appsrv6

Appsrv7

#cd  /home/hadoop/hbase-0.98.6-cdh5.3.0/conf
#vi regionservers
Appsrv5

Appsrv6

Appsrv7

 

启动集群(在主节点上操作)

启动hadoop
#su - hadoop

$ pwd

/home/hadoop/hadoop-2.5.0-cdh5.3.0/sbin

$ ./start-all.sh --服务密码为hadoop

 

启动zookeeper

$ pwd

/home/hadoop/zookeeper-3.4.5-cdh5.3.0/bin

$ ./zkServer.sh start

 

启动hbase

# pwd

/home/hadoop/hbase-0.98.6-cdh5.3.0/bin

# ./start-hbase.sh   ---输入的密码是服务器的密码

 

启动完成后的进程乳腺

查看进程

主节点
# jps

82395 QuorumPeerMain

81737 SecondaryNameNode

81574 DataNode

82197 NodeManager

81893 ResourceManager

82708 HRegionServer

82540 HMaster

81426 NameNode

82838 Jps

  

两个salve节点
# jps

105082 NodeManager

105686 Jps

104939 DataNode

105300 HRegionServer

 

 

 

http://192.2.0.44:50070/dfshealth.html#tab-overview------查看hadoop节点

 

显示3表示hadoop节点正常

 

http://192.2.0.44:60010/master-status#compactStas-----查看hbase节点

 

三个都在表示正常的

 

 

 

HadoopZookeeperHBase和Docker都是大数据领域中常用的技术工具。 Hadoop是一个分布式计算框架,它可以将大数据分散到多个计算机集群上进行处理和存储。Hadoop的主要组件包括HDFS(分布式文件系统)和MapReduce(分布式计算模型),通过这两个组件,Hadoop可以实现对大规模数据的分布式处理和分布式存储。 Zookeeper是一个开源的分布式协调服务,它可以用于在分布式系统中管理和协调各个节点之间的状态和配置信息。Zookeeper提供了高可用性、一致性以及可靠性的特性,可以用于处理分布式应用程序中的诸多问题,比如选举机制、配置管理、命名服务等。 HBase是建立在Hadoop之上的分布式列式数据库,它提供了高度可扩展、高性能和高可靠性的存储和访问大规模结构化数据的能力。HBase基于Hadoop HDFS存储数据,同时将数据按照列族存储,具有快速随机读写的特性,适合处理海量数据。 Docker是一种容器化平台,它可以在操作系统层面上实现虚拟化,将应用程序及其依赖项打包成一个独立的容器,从而实现跨平台、快速部署和可移植性。在使用Docker时,可以将HadoopZookeeperHBase等组件打包成容器,方便在不同环境中进行部署和管理。同时,Docker还提供了简单易用的容器管理工具,可以进行容器的快速启动、停止和扩展。 综上所述,HadoopZookeeperHBase和Docker都是大数据领域中常用的技术工具。Hadoop用于分布式计算和存储,Zookeeper用于分布式协调和管理,HBase用于大规模结构化数据的存储和访问,而Docker则提供了容器化平台,方便部署和管理这些大数据技术组件。这些工具的使用可以帮助提高大数据处理的性能、可靠性和可扩展性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Walter Sun

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值