前期服务器配置##

  1. 修改/etc/hosts文件,添加以下信息(如果正常IP)

    119.23.163.113 master

    120.79.116.198 slave1

    120.79.116.23 slave2

    如果安全组内的IP,通过ip a方式查询内部IP并添加到/etc/hosts;

  2. 确认三个服务器之间可以互相ping通

  3. 给三个机器生成密钥文件

    1. 三台机器上执行以下命令

      ssh-keygen
    2. 生成公共密钥,先在master服务器上生成,之后复制到其他两个服务器
      1. 以下为正常免密方式
      • touch /root/.ssh/authorized_keys
      • cat /root/.ssh/id_rsa.pub >> /root/.ssh/authorized_keys
      • vim /root/.ssh/authorized_keys
        • 将其他两个机器的/root/.ssh/id_rsa.pub的内容复制到authorized_keys文件中
      • chmod 600 /root/.ssh/authorized_keys
      • chmod 700 /root/.ssh/
      1. 以下为公司内安全组方式的互相免密方式
      • ssh-copy-id -i ~/.ssh/id_rsa.pub $ip
  4. 解压hadoop\zookeeper\hbase包

  5. 重命名解压后的文件名

    mv hadoop-2.6.0-cdh5.6.0/ hadoop/

    mv hbase-1.0.0-cdh5.6.0/ hbase

    mv zookeeper-3.4.5-cdh5.6.0/ zookeeper

  6. 安装Java环境

    1. 解压包
    2. 配置/etc/profile

      export JAVA_HOME=/opt/cdh/jdk1.8.0_144

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

      export PATH=$PATH:$JAVA_HOME/bin
    3. 使生效 source /etc/profile
    4. 验证 java -version

hadoop分布式部署##

  1. 进入配置文件目录cd hadoop/etc/hadoop/,修改配置文件

    1. vim core-site.xml
	<property>
<name>hadoop.tmp.dir</name>
<value>/opt/cdh/hadoop-env/tmp</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.default.name</name>
<value>hdfs://master:9000</value>
</property>
2. vim hadoop-env.sh
export JAVA_HOME=/opt/cdh/jdk1.8.0_144
3. vim hdfs-site.xml
<property>
<name>dfs.name.dir</name>
<value>/opt/cdh/hadoop-env/dfs/name</value>
<description>Path on the local filesystem where theNameNode stores the namespace and transactions logs persistently.</description>
</property>
<property>
<name>dfs.data.dir</name>
<value>/opt/cdh/hadoop-env/dfs/data</value>
<description>Comma separated list of paths on the localfilesystem of a DataNode where it should store its blocks.</description>
</property>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.permissions</name>
<value>true</value>
<description>need not permissions</description>
</property>
4. cp mapred-site.xml.template mapred-site.xml
vim mapred-site.xml
	<property>
<name>mapred.job.tracker</name>
<value>master:49001</value>
</property>
<property>
<name>mapred.local.dir</name>
<value>/opt/cdh/hadoop-env/var</value>
</property>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
5. vim slaves
	slave1
slave2
6. vim yarn-site.xml
   <property>
<name>yarn.resourcemanager.hostname</name>
<value>master</value>
</property>
<property>
<description>The address of the applications manager interface in the RM.</description>
<name>yarn.resourcemanager.address</name>
<value>${yarn.resourcemanager.hostname}:8032</value>
</property>
<property>
<description>The address of the scheduler interface.</description>
<name>yarn.resourcemanager.scheduler.address</name>
<value>${yarn.resourcemanager.hostname}:8030</value>
</property>
<property>
<description>The http address of the RM web application.</description>
<name>yarn.resourcemanager.webapp.address</name>
<value>${yarn.resourcemanager.hostname}:8088</value>
</property>
<property>
<description>The https adddress of the RM web application.</description>
<name>yarn.resourcemanager.webapp.https.address</name>
<value>${yarn.resourcemanager.hostname}:8090</value>
</property>
<property>
<name>yarn.resourcemanager.resource-tracker.address</name>
<value>${yarn.resourcemanager.hostname}:8031</value>
</property>
<property>
<description>The address of the RM admin interface.</description>
<name>yarn.resourcemanager.admin.address</name>
<value>${yarn.resourcemanager.hostname}:8033</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
<property>
<name>yarn.scheduler.maximum-allocation-mb</name>
<value>8182</value>
<discription>每个节点可用内存,单位MB,默认8182MB</discription>
</property>
<property>
<name>yarn.nodemanager.vmem-pmem-ratio</name>
<value>2.1</value>
</property>
<property>
<name>yarn.nodemanager.resource.memory-mb</name>
<value>8182</value>
</property>

zookeeper部署##

  1. 进入zookeeper配置目录cd /opt/cdh/zookeeper/conf

    • cp zoo_sample.cfg zoo.cfg
    • vim zoo.cfg
dataDir=/opt/cdh/zookeeper-env
dataLogDir=/opt/cdh/zookeeper-env/logs server.1=master:2888:3888
server.2=slave1:2888:3888
server.3=slave2:2888:3888

2.. 配置各服务器zookeeperID

+ 进入每个服务器的dataDir,每个服务器ID不一样比如以下是echo 1,其他的就是echo 2或者echo 3

cd /opt/cdh/zookeeper-env

echo 1 > myid

hbase部署##

  1. 进入hbase配置目录cd /opt/cdh/hbase/conf

    1. vim hbase-env.sh
	export JAVA_HOME=/opt/cdh/jdk1.8.0_144
export HBASE_CLASSPATH=/opt/cdh/hbase/conf
export HBASE_MANAGES_ZK=false #此配置信息,设置由hbase自己管理zookeeper,不需要单独的zookeeper。
export HBASE_HOME=/opt/cdh/hbase
export HADOOP_HOME=/opt/cdh/hadoop
export HBASE_LOG_DIR=/opt/cdh/hbase-env/logs #Hbase日志目录
2. vim hbase-site.xml
   <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.master</name>
<value>master:60000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>slave1,slave2</value>
</property>
3. vim regionservers
	slave1
slave2

启动集群##

  1. 启动hadoop,只在master上启动

    1. /opt/cdh/hadoop/bin/hadoop namenode -format
    2. /opt/cdh/hadoop/sbin/start-all.sh
  2. 启动zookeeper,现在slave服务器启动,再启动master上的zookeeper
    1. /opt/cdh/zookeeper/bin/zkServer.sh start
  3. 启动hbase,只在master启动
    1. /opt/cdh/hbase/bin/start-hbase.sh

hadoop+zookeeper+hbase分布式安装的更多相关文章

  1. hadoop生态圈安装详解(hadoop+zookeeper+hbase+pig+hive)

    -------------------------------------------------------------------* 目录 * I   hadoop分布式安装   * II zoo ...

  2. Hadoop HA高可用集群搭建(Hadoop+Zookeeper+HBase)

    声明:作者原创,转载注明出处. 作者:帅气陈吃苹果 一.服务器环境 主机名 IP 用户名 密码 安装目录 master188 192.168.29.188 hadoop hadoop /home/ha ...

  3. 大数据hbase分布式安装及其部署。

    大数据hbase分布式安装及其部署. 首先要启动Hadoop以及zookeeper,可以参考前面发布的文章. 将hbase的包上传至master节点 这里我使用的是1.3.6的版本,具体的根据自己的版 ...

  4. ZooKeeper完全分布式安装与配置

    Apache ZooKeeper是一个为分布式应用所设计开源协调服务,其设计目是为了减轻分布式应用程序所承担的协调任务.可以为用户提供同步.配置管理.分组和命名服务. 1.环境说明 在三台装有cent ...

  5. Hadoop开发第3期---Hadoop的伪分布式安装

    一.准备工作 1. 远程连接工具的安装 PieTTY 是在PuTTY 基础上开发的,改进了Putty 的用户界面,提供了多语种支持.Putty 作为远程连接linux 的工具,支持SSH 和telne ...

  6. zookeeper伪分布式安装

    本文介绍zookeeper伪分布式安装. 所谓 “伪分布式集群” 就是在1台PC中启动多个zookeeper的实例.“完全分布式集群” 是每1台PC启动1个ZooKeeper实例. 由于我的测试环境P ...

  7. Hadoop、Zookeeper、Hbase分布式安装教程

    参考: Hadoop安装教程_伪分布式配置_CentOS6.4/Hadoop2.6.0   Hadoop集群安装配置教程_Hadoop2.6.0_Ubuntu/CentOS ZooKeeper-3.3 ...

  8. mysql 和 hive 和分布式zookeeper和HBASE分布式安装教程

    一,mysql 安装mysql5.7完整教程1. yum -y install mysql-server直接执行语句后等待就好已安装: mysql-community-server.x86_64 0: ...

  9. hadoop +zookeeper + hbase 单节点安装

    项目描述: 今天花了680元买了阿里云的一台内存1G, 带宽1M 的云主机. 想以后方便测试用,而且想把自己的博客签到自己的主机上.所以自己就搭了一个测试的环境. 可以用来进行基本的hbase 入库, ...

随机推荐

  1. java——包装类中的equals方法

    基本数据类型包装类中的equals方法用于比对相同包装类中的值是否相等,如果两者比较的包装类类型不同则返回false: Byte public boolean equals(Object obj) { ...

  2. HashSet——add remove contains方法底层代码分析(hashCode equals 方法的重写)

    引言:我们都知道HashSet这个类有add   remove   contains方法,但是我们要深刻理解到底是怎么判断它是否重复加入了,什么时候才移除,什么时候才算是包括????????? add ...

  3. Windows Class Styles

    CS_VREDRAW:当窗口水平方向的宽度变化时重绘整个窗口 CS_HREDRAW:当窗口垂直方向的宽度变化时重绘整个窗口 CS_DBLCLKS:指针在属于此类的窗体内部,并且用户双击时,收到一个双击 ...

  4. Pr PS 笔记

    1. 保存窗口配置    窗口-新建工作区 2. 添加快捷键  编辑-自定义快捷键 3. 添加关键帧,需要下拉轨道 4. 关闭PR声音 5. 视频稳定器 选中素材,右键选择嵌套,嵌套后在子序列把视频画 ...

  5. linux系统编程相关

    基本的概念:程序,进程,并发,单道程序设计,多道程序设计,时钟中断. 存储介质:寄存器(操作系统的位数是针对寄存器而言的,32位识字节,64位就是8字节).缓存cache.内存,硬盘,网络. cpu的 ...

  6. jvm自带的监控机制

    Jdk为我们提供了查看java服务运行时的监控情况 1.如下图所示,打开指定目录下的jconsole.exe应用程序文件. 2.双击后跳出如下界面,可以看到,我们可以监视本地的,也可以监视远程服务.本 ...

  7. #!/usr/bin/node 是什么意思

    // 调用系统环境变量中的解释器执行文件 #!/usr/bin/node //如果不是默认安装位置这个地方可能就找不到,那么文件就是报错,所以有了另一种写法 #!/usr/bin/env node

  8. js小功能3:一个简单的计算器功能

    html: <input type='text' id='txt1' /> <select id='select'> <option value='+'>+< ...

  9. TCP/IP——内网IP

    版权声明:本文系博主原创文章,转载或引用请注明出处. 1)背景 REC 1918留出了3块IP地址空间(1个A类地址段,16个B类地址段,256个C类地址段)作为私有的内部使用的地址. 在这个范围内的 ...

  10. 《Python基础教程》第二章:列表和元组(1)

    列表可以修改,元组则不能 字符串就是一个由字符组成的序列 使用分片操作来访问一定范围内的元素,分片操作的实现需要提供两个索引作为边界,第一个索引的元素是包含在分片内的,而第二个不包含在分片内. 如果分 ...