Zookeeper安装和Hadoop安装

Zookeeper 安装

关闭防火墙!!!

下载 JDK 1.8 版本

下载 Zookeeper 安装包

下载链接

解压到 Linux 的路径下(一般是 /usr/local )

配置 Linux 环境变量

配置 JAVA_HOME 和 ZOOKEERER_HOME

配置 Zookeeper 单节点

  1. 在 zookeeper 文件夹下创建 data 文件夹和 logs 文件夹,用于存放数据和日志

  2. 进入 conf 中,将 zoo_sample.cfg 复制一份并重命名为 zoo.cfg

  3. 配置 zoo.fg

    1
    2
    3
    4
    tickTime=2000
    dataLogDir=/usr/local/zookeeper*/logs
    dataDir=/usr/local/zookeeper*/data
    clientPort=2181
  4. 配置完成后即可开启单节点模式

配置 Zookeeper 多节点模式(分布式)

  1. 先多搞几台虚拟机(具体多少台开心就好,最好 3 台起步,之后用 scp 复制文件到其他虚拟机)

  2. 配置 hosts 文件

  3. 配置 ssh 免密登录

  4. 给所有虚拟机搞上 JDK 和 Zookeeper

  5. 每台虚拟机的 Zookeeper 的目录下创建 data 和 logs 目录

  6. 配置 zoo.cfg(和单节点一样搞出来的)

    1
    2
    3
    4
    5
    6
    7
    8
    9
    tickTime=2000
    dataDir=/var/lib/zookeeper
    clientPort=2181
    initLimit=5
    syncLimit=2
    # 主机名、心跳端口、数据端口
    server.1=zoo1:2888:3888
    server.2=zoo2:2888:3888
    server.3=zoo3:2888:3888
  7. 给每个节点加上 myid(myid 是放到 zookeeper 配置的 dataDir 的路径下的)

    1
    2
    3
    iweb5 : echo '1'>/usr/local/zookeeper/data/myid
    iweb6 : echo '2'>/usr/local/zookeeper/data/myid
    iweb7 : echo '3'>/usr/local/zookeeper/data/myid
  8. 最后就可以启动集群了

Hadoop 安装

关闭防火墙!!!

这玩意儿环境配置老费劲了

直接跳过单节点模式,要是 hadoop 玩单节点就没有必要搞集群了

PS:Hadoop 是在 Zookeeper 环境配置好了的基础上安装的

JDK || 环境变量 || SSH 免密 || hosts 文件配置

这里要把 HADOOP_HOME 配置进去,添加到 PATH 里面的时候要把 /bin 和 /sbin 都配置进去

架设虚拟机(实验用的两台,加上 Zookeeper 一共 5 台)

开始配置 Hadoop

  1. 先配置 hadoop*/etc/hadoop/hadoop-env.sh,将里面的 ${JAVA_HOME} 改成当前 JAVA_HOME 的路径

  2. 配置 hadoop*/etc/hadoop/core-site.xml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    <configuration>

    <property>
    <name>fs.defaultF Sname>
    <value>hdfs://nsvalue>
    property>


    <property>
    <name>hadoop.tmp.dirname>
    <value>/usr/local/hadoop-2.8.4/tmpvalue>
    property>


    <property>
    <name>ha.zookeeper.quorumname>
    <value>bigdata1:2181,bigdata2:2181,bigdata3:2181value>
    property>
    configuration>
  3. 配置 hadoop*/etc/hadoop/hdfs-site.xml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    57
    58
    59
    60
    61
    62
    63
    64
    65
    66
    67
    68
    69
    70
    71
    72
    73
    74
    75
    <configuration>

    <property>
    <name>dfs.replicationname>
    <value>2value>
    property>

    <property>
    <name>dfs.nameservicesname>
    <value>nsvalue>
    property>

    <property>
    <name>dfs.ha.namenodes.nsname>
    <value>nn1,nn2value>
    property>

    <property>
    <name>dfs.namenode.rpc-address.ns.nn1name>
    <value>bigdata5:9000value>
    property>

    <property>
    <name>dfs.namenode.http-address.ns.nn1name>
    <value>bigdata5:50070value>
    property>

    <property>
    <name>dfs.namenode.rpc-address.ns.nn2name>
    <value>bigdata6:9000value>
    property>

    <property>
    <name>dfs.namenode.http-address.ns.nn2name>
    <value>bigdata6:50070value>
    property>

    <property>
    <name>dfs.namenode.shared.edits.dirname>
    <value>qjournal://bigdata1:8485;bigdata2:8485;bigdata3:8485/nsvalue>
    property>

    <property>
    <name>dfs.journalnode.edits.dirname>
    <value>/usr/local/hadoop-2.8.4/journaldatavalue>
    property>

    <property>
    <name>dfs.ha.automatic-failover.enabledname>
    <value>truevalue>
    property>

    <property>
    <name>dfs.client.failover.proxy.provider.nsname>
    <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvidervalue>
    property>

    <property>
    <name>dfs.ha.fencing.methodsname>
    <value>
    sshfence
    shell(/bin/true)
    value>
    property>

    <property>
    <name>dfs.ha.fencing.ssh.private-key-filesname>
    <value>/root/.ssh/id_rsavalue>
    property>

    <property>
    <name>dfs.ha.fencing.ssh.connect-timeoutname>
    <value>30000value>
    property>
    configuration>
  4. 配置 hadoop*/etc/hadoop/mapred-site.xml

    1
    2
    3
    4
    5
    6
    7
    <configuration>

    <property>
    <name>mapreduce.framework.namename>
    <value>yarnvalue>
    property>
    configuration>
  5. 配置 hadoop*/etc/hadoop/yarn-site.xml

    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
    41
    42
    43
    44
    45
    46
    47
    <configuration>

    <property>
    <name>yarn.resourcemanager.ha.enabledname>
    <value>truevalue>
    property>

    <property>
    <name>yarn.resourcemanager.cluster-idname>
    <value>yrcvalue>
    property>

    <property>
    <name>yarn.resourcemanager.ha.rm-idsname>
    <value>rm1,rm2value>
    property>

    <property>
    <name>yarn.resourcemanager.hostname.rm1name>
    <value>bigdata5value>
    property>
    <property>
    <name>yarn.resourcemanager.hostname.rm2name>
    <value>bigdata6value>
    property>

    <property>
    <name>yarn.resourcemanager.zk-addressname>
    <value>bigdata1:2181,bigdata2:2181,bigdata3:2181value>
    property>
    <property>
    <name>yarn.nodemanager.aux-servicesname>
    <value>mapreduce_shufflevalue>
    property>
    <property>
    <name>yarn.resourcemanager.addressname>
    <value>hadoopMaster:8032value>
    property>
    <property>
    <name>yarn.resourcemanager.scheduler.addressname>
    <value>hadoopMaster:8030value>
    property>
    <property>
    <name>yarn.resourcemanager.resource-tracker.addressname>
    <value>hadoopMaster:8031value>
    property>
    configuration>

同步配置

通过 scp 命令将 hadoop*/ 发送给所有主机

集群启动准备工作(所有命令官方文档都有)

  1. 在 Zookeeper 的主机上启动 journalnode

    (这里我必须要说一句,一定要先启动 journalnode,我就是忘记要启动 journalnode,最后耗费了我一个多小时才启动成功)

  2. 格式化 namenode (在 active 主机上执行)

    hdfs namenode -format

  3. 格式化 zkfc(在 active 主机上执行)

    hdfs zkfc -formatZK

  4. 启动 active 上的 namenode

    hadoop-daemon.sh start namenode

  5. 在 standby 执行

    hdfs namenode -bootstrapStandby

  6. 手动启动以下程序

    [ hdfs ]

    • namenode
    • zkfc
    • datanode

    [ yarn ]

    • resourcemanager
    • nodemanager
  7. 启动 Web 客户端查看信息

你可能感兴趣的:(Zookeeper安装和Hadoop安装)