设为首页 收藏本站
查看: 1757|回复: 0

[经验分享] 配置密码分布式集群环境hadoop、hbase、zookeeper搭建(全)

[复制链接]

尚未签到

发表于 2015-9-6 14:13:39 | 显示全部楼层 |阅读模式
  新手发帖,很多方面都是刚入门,有错误的地方请大家见谅,欢迎批评指正
  

1、环境说明
  群集环境少至要需3个节点(也就是3台服务器设备):1个Master,2个Slave,节点之间局域网连接,可以互相ping通,面下举例说明,配置节点IP分配如下:
  

HostnameIP新建户用新建户用密码
Master10.10.10.213hadoop123456
Slave110.10.10.214hadoop123456
Slave210.10.10.215hadoop123456
  三个节点均用使centos 6.3系统,为了便于维护,群集环境配置项最好用使同相户用名、户用密码、同相hadoop、hbase、zookeeper录目结构。
  

2、准备工作
  

2.1、修改Hostname
  为了群集可以畸形稳定的运行,我们要需将个每节点的hostname别分配置为对应的Master、Slave1、Slave2。
  (1)在Master服务器中执行以下令命:

hostname Master//前当效有
vi /etc/sysconfig/network//启重后失效
HOSTNAME=Master
  (2)在Slave1服务器中执行以下令命:

hostname Slave1//前当效有
vi /etc/sysconfig/network//启重后失效
HOSTNAME=Slave1
  (3)在Slave2服务器中执行以下令命:

hostname Slave2//前当效有
vi /etc/sysconfig/network//启重后失效
HOSTNAME=Slave2
  

2.2、添加Hosts映射系关
  别分在三个节点下通过如下令命修改hosts映射系关:

vi /etc/hosts
  添加内容如下:

Master10.10.10.213
Slave110.10.10.214
Slave210.10.10.215
  

2.3、配置JDK环境
  Hadoop群集必须赖依JDK环境,所以这里我们首先要需配置好JDK环境,样同为了管理,我们议建服务器中的节点JDK安装环境均在同相径路下。
  

2.3.1、解压安装包
  拷贝jdk件文jdk-6u25-linux-x64.bin到/usr/lib/java件文录目(该录目可自行义定)下,解压安装包,如果件文权限被制约,可通过如下令命停止赋权限作操:

chmod u+w jdk-6u25-linux-x64.bin
  

2.3.2、修改环境配置息信

vi /etc/profile
  在最后加上:

export JAVA_HOME=/usr/lib/java/jdk1.6.0_25
export PATH=$PATH:$JAVA_HOME/bin
export CLASSPATH=.:$JAVA_HOME/lib/tools.jar:$JAVA_HOME/lib/rt.jar
  通过销注或者以下令命使修改失效:

source /etc/profile
  

2.3.3、检查前当JDK版本息信

java -version
  

2.3.4、充补(可选)
  如果查看前当的JDK版本不是刚才设置的JDK版本,则可以停止默许JDK版本设置作操:

sudo update-alternatives --install /usr/bin/java java /usr/lib/java/jdk1.6.0_25/bin/java 300   
sudo update-alternatives --install /usr/bin/javac javac /usr/lib/java/jdk1.6.0_25/bin/javac 300   
sudo update-alternatives --config java(选择jdk1.6.0_25版本的序号就行)
  

2.4、安装SSH
  Centos系统安装时默许可以选择安装SSH,ubuntu下可以通过如下令命停止安装(提前是必须联网):

sudo apt-get install ssh
sudo apt-get install rsync
  

2.5、新建户用
  为了hadoop群集的全安与便利管理,我们要另外新建户用,并设置密码,令命如下:

sudo adduser hadoop
sudo passwd hadoop
  上述令命中,第一行令命新建了一个user为hadoop的户用,第二行令命是为这个hadoop户用设置密码,样同最好服务器之间均保持一致。
  

2.6、配置群集之间SSH无密码登岸
  群集环境的用使必须通过ssh无密码登岸来执行,本机登岸本机必须无密码登岸,主机与从机之间必须可以向双无密码登岸,从机与从机之间无制约。以本次为例,比如Master与Slave1之间的无密码登岸设置骤步如下:
  (1)进入Master服务器,停止无密码自登岸设置

ssh hadoop@Master//登岸Master
ssh-keygen  -t  rsa  -P  ''  -f  ~/.ssh/id_rsa
cat  ~/.ssh/id_rsa.pub  >>  ~/.ssh/authorized_keys//成生密钥
chmod 700 ~/.ssh && chmod 600 ~/.ssh/*//设置权限
  如果不知道是不是配置胜利,可通过如下令命停止验证:

ssh localhost
  如果上述令命不要需输入密码则表现配置胜利。
  进入Slave1服务器,停止无密码自登岸设置,作操同上,只要将对应的Master为改Slave1可即,此处省略。
  (2)进入Master服务器,设置Master->Slave1的无密码登岸

ssh hadoop@Master//登岸Master
cat ~/.ssh/id_rsa.pub | ssh hadoop@Slave1 'cat - >> ~/.ssh/authorized_keys'
ssh hadoop@Slave1//若此处不要需输入密码则配置胜利
  (3)进入Slave1服务器,设置Slave1->Master的无密码登岸

ssh hadoop@Slave1//登岸Slave1
cat ~/.ssh/id_rsa.pub | ssh hadoop@Master 'cat - >> ~/.ssh/authorized_keys'
ssh hadoop@Master//若此处不要需输入密码则胜利
  以上就是Master与Slave1之间的向双无密码登岸配置。Master与Slave2之间的配置道理同上述基本一样,所以不再赘述。
  

3、Hadoop群集安装配置
  

3.1、修改hadoop配置件文


    每日一道理
漫漫人生路,谁都难免会遭遇各种失意或厄运。在凄风苦雨 惨雾愁云的考验面前,一个强者,是不会向命运低头的。风再冷,不会永远不息;雾再浓,不会经久不散。风息雾散,仍是阳光灿烂。
  在centos系统下解压hadoop安装包hadoop-1.0.3.tar.gz,修改conf录目下的6个件文:
  (1)core-site.xml

<configuration>
<property>
<name>fs.default.name</name>
<value>hdfs://Master:9000</value>
</property>
</configuration>
  (2)hadoop-env.sh
  在该件文中加上如下一行码代:

export JAVA_HOME=(你配置的jdk径路,比如:/usr/java/jdk1.6.0_25)
  (3)hdfs-site.xml

<configuration>
<property>
<name>dfs.name.dir</name>
<value>/home/hadoop/temp/hadoop</value>
</property>
<property>
<name>dfs.data.dir</name>
<value>/home/hadoop/temp/hadoop</value>
</property>
<property>
<name>dfs.replication</name>
<value>1</value>
</property>
<property>
<name>dfs.support.append</name>
<value>true</value>
</property>
</configuration>
  (4)mapred-site.xml

<configuration>
<property>
<name>mapred.job.tracker</name>
<value>Master:9001</value>
</property>
<property>
<name>mapred.acls.enabled</name>
<value>false</value>
</property>
</configuration>
  (5)Masters

Master
  (6)Slaves

Slave1
Slave2
  

3.2、步同安装包
  将解压修改后的hadoop-1.0.3件文夹别分拷贝到Master、Slave1、Slave2的同相hadoop安装径路下。
  

3.3、启动Hadoop群集
  进入Master的hadoop-1.0.3录目,执行以下作操:

bin/hadoop namenode -format//式格化namenode,第一次启动服务前执行的作操,后以不要需执行
bin/start-all.sh //启动hadoop
jps//用jps令命能看到除jps外有5个进程
  至此,hadoop群集配置进程结束。可通过浏览器地址http://10.10.10.213:50070 查看节点用启状态验证配置是不是胜利。
  

4、Zookeeper群集安装配置
  

4.1、修改zookeeper配置件文zoo.cfg
  在centos系统下解压zookeeper安装包zookeeper-3.4.3.tar.gz ,进入到conf录目,将zoo_sample.cfg拷贝一份命名为zoo.cfg(Zookeeper 在启动时会找这个件文作为默许配置件文),开打该件文停止修为改以下式格(注意权限问题,如果最后配置有问题请检查进程中权限是不是准确)。

dataDir=/home/hadoop/temp/zookeeper/data
server.0=10.10.10.213:2888:3888
server.1=10.10.10.214:2888:3888
server.2=10.10.10.215:2888:3888
  

4.2、新建录目、新建并编辑myid件文
  (本次配置myid件文放在/home/hadoop/temp/zookeeper/data录目下)

mkdir /home/hadoop/temp/zookeeper/data//dataDir录目
vi /home/hadoop/temp/zookeeper/data/myid
  注意myid件文中的内容为:Master中为0,Slave1中为1,Slave2中为2,别分与zoo.cfg中对应起来。
  

4.3、步同安装包
  将解压修改后的zookeeper-3.4.3件文夹别分拷贝到Master、Slave1、Slave2的同相zookeeper安装径路下。注意:myid件文的内容不是一样的,各服务器中别分是对应zoo.cfg中的设置。
  

4.4、启动zookeeper
  Zookeeper的启动与hadoop不一样,要需个每节点都执行,别分进入3个节点的zookeeper-3.4.3录目,启动zookeeper:

bin/zkServer.sh start
  注意:此时如果报错先不会理,继承在另两台服务器中执行同相作操。
  

4.5、检查zookeeper是不是配置胜利
  待3台服务器均启动后,如果进程准确的话zookeeper应当经已主动选好leader,进入每台服务器的zookeeper-3.4.3录目,执行以下作操查看zookeeper启动状态:

bin/zkServer.sh status
  如果涌现以下码代表现安装胜利了。

[java] view plaincopy
JMX enabled by default  
Using config: /home/hadoop/zookeeper-3.4.3/bin/../conf/zoo.cfg  
Mode: follower//或者有且只有一个leader
  

5、HBase群集安装配置
  

5.1、修改hbase配置件文
  在centos系统下解压hadoop安装包hadoop-1.0.3.tar.gz,修改conf录目下的3个件文:
  (1)hbase-env.sh

export JAVA_HOME=/usr/lib/java/jdk1.6.0_25//JDK的安装录目
export HBASE_CLASSPATH=/home/hadoop/hadoop-1.0.3/conf//hadoop的安装录目
export HBASE_MANAGES_ZK=true
  (2)hbase-site.xml

<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://Master:9000/hbase</value>
</property>  
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.property.clientPort</name>
<value>2181</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>Master</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/hadoop/temp/zookeeper</value>
</property>
<property>
<name>dfs.support.append</name>
<value>true</value>
</property>
</configuration>
  (3)regionservers

Slave1
Slave2
  

5.2、步同安装包
  将解压修改后的hbase-0.94.1-security件文夹别分拷贝到Master、Slave1、Slave2的同相hbase安装径路下。
  

5.3、启动HBase
  进入Master的hbase-0.94.1-security录目,执行以下作操:

bin/start-hbase.sh//之后用jps查看是不是全部进程都已启动
  至此,hbase服务配置进程结束。可通过浏览器地址http://10.10.10.213:60010 查看hbase是不是可用。
  也可以执行以下令命,进入hbase shell停止验证。
  

6、结语
  


  关于hadoop、zookeeper、hbase的启动与闭关序顺:启动时hadoop和zookeeper意随前后,但是hbase必须最后启动,闭关时hbase必须首先闭关,然后意随前后闭关hadoop、zookeeper。否则,会涌现异常。
  关于各软件的安装包可以去官网下载,不同版本的安装配置可能会有少量的变化,而且版本搭配如果不一样的话也可能涌现问题,有问题就针对性地去查,这样学习才有步进。
  文章结束给大家分享下程序员的一些笑话语录: 打赌
飞机上,一位工程师和一位程序员坐在一起。程序员问工程师是否乐意和他一起玩一种有趣的游戏。工程师想睡觉,于是他很有礼貌地拒绝了,转身要睡觉。程序员坚持要玩并解释说这是一个非常有趣的游戏:"我问你一个问题,如果你不知道答案,我付你5美元。然后你问我一个问题,如果我答不上来,我付你5美元。"然而,工程师又很有礼貌地拒绝了,又要去睡觉。  程序员这时有些着急了,他说:"好吧,如果你不知道答案,你付5美元;如果我不知道答案,我付50美元。"果然,这的确起了作用,工程师答应了。程序员就问:"从地球到月球有多远?"工程师一句话也没有说,给了程序员5美元。  现在轮到工程师了,他问程序员:"什么上山时有三条腿,下山却有四条腿?"程序员很吃惊地看着工程师,拿出他的便携式电脑,查找里面的资料,过了半个小时,他叫醒工程师并给了工程师50美元。工程师很礼貌地接过钱又要去睡觉。程序员有些恼怒,问:"那么答案是什么呢?"工程师什么也没有说,掏出钱包,拿出5美元给程序员,转身就去睡觉了。

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-110200-1-1.html 上篇帖子: 分布式协调服务---Zookeeper 下篇帖子: (转)zookeeper学习记录--附browser
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表