专栏首页Spark / Hadoop生态系列CentOS集群安装CDH Hadoop环境 操作指引 及Yarn Hbase Spark配置安装
原创

CentOS集群安装CDH Hadoop环境 操作指引 及Yarn Hbase Spark配置安装

toc

CentOS集群安装CDH Hadoop环境 操作指引 及Hbase Spark安装

此篇博客主要记录集群安装Hadoop环境的流程及配置讲解。这里的IP已换成192.168.0.*

集群一共五台机器,各节点的安装服务如下:

IP:192.168.0.1
namenode(active)  journalnode nodemanager zkfc hbase-master zookeeper
IP:192.168.0.2
namenode(standby)  journalnode nodemanager zkfc hbase-master zookeeper
IP:192.168.0.3
spark journalnode nodemanager resourcemanager(active)    hbase-regionserver zookeeper
IP:192.168.0.4
spark journalnode nodemanager resourcemanager(standby)   hbase-regionserver zookeeper
IP:192.168.0.5
spark journalnode nodemanager resourcemanager(standby)   hbase-regionserver zookeeper

1. 前期部署:

1.1 每台机器安装JDK

#wget --no-cookies --no-check-certificate --header "Cookie: gpw_e24=http%3A%2F%2Fwww.oracle.com%2F; oraclelicense=accept-securebackup-cookie" "http://download.oracle.com/otn-pub/java/jdk/8u141-b15/336fa29ff2bb4ef291e347e091f7f4a7/jdk-8u141-linux-x64.tar.gz"
#tar xf /usr/local/jdk-8u141-linux-x64.tar.gz;mv /usr/local/jdk1.8.0_141 /usr/local/jdk1.8;echo -e "export JAVA_HOME=/usr/local/jdk1.8 \nexport PATH=\$PATH:\$JAVA_HOME/bin" >> #/etc/profile;source /etc/profile

1.2 修改主机名:

192.168.0.1:
#hostnamectl set-hostname hdfs01.hdfscluster
192.168.0.2:
#hostnamectl set-hostname hdfs02.hdfscluster
192.168.0.3:
#hostnamectl set-hostname hdfs03.hdfscluster
192.168.0.4:
#hostnamectl set-hostname hdfs04.hdfscluster
192.168.0.5:
#hostnamectl set-hostname hdfs05.hdfscluster

1.3 每台机器改hosts:

vi /etc/hosts
192.168.0.1 hdfs01 hdfs01.hdfscluster
192.168.0.2 hdfs02 hdfs02.hdfscluster
192.168.0.3 hdfs03 hdfs03.hdfscluster
192.168.0.4 hdfs04 hdfs04.hdfscluster
192.168.0.5 hdfs05 hdfs05.hdfscluster

1.4 192.168.0.1作为主节点免密登录到其它机器:

# ssh-keygen -t rsa
#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.0.1
#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.0.2
#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.0.3
#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.0.4
#ssh-copy-id -i /root/.ssh/id_rsa.pub 192.168.0.5

2. Zookeeper服务部署

2.1 单主机节点下载CDH版本

# cd /usr/local;wget  

2.2 各节点创建数据目录

#mkdir /data/zookeeper/{logs,data}

2.3 单节点安装配置并scp其它节点:

#tar xf /usr/local/zookeeper-latest.tar.gz -C /usr/local/
#ln -sv /usr/local/zookeeper-3.4.5-cdh5.16.2 /usr/local/zookeeper
#vi /etc/profile   #追加配置
export ZOOKEEPER_HOME=/usr/local/zookeeper
export PATH=$ZOOKEEPER_HOME/bin:$PATH
souce /etc/profile
#vi $ZOOKEEPER_HOME/conf/zoo.cfg
tickTime=2000
initLimit=10
syncLimit=5
dataDir=/data/zookeeper/data
dataLogDir=/data/zookeeper/logs
clientPort=2181
server.1=192.168.0.1:2888:3888
server.2=192.168.0.2:2888:3888
server.3=192.168.0.3:2888:3888
server.4=192.168.0.4:2888:3888
server.5=192.168.0.5:2888:3888
#scp -r /usr/local/zookeeper 192.168.0.2:/usr/local/
#scp -r /usr/local/zookeeper 192.168.0.3:/usr/local/
#scp -r /usr/local/zookeeper 192.168.0.4:/usr/local/
#scp -r /usr/local/zookeeper 192.168.0.5:/usr/local/
#scp /etc/profile  192.168.0.2:/etc/
#scp /etc/profile  192.168.0.3:/etc/
#scp /etc/profile  192.168.0.4:/etc/
#scp /etc/profile  192.168.0.5:/etc/

2.4 配置节点标识

192.168.0.1:
#echo "1" > /data/zookeeper/data/myid
192.168.0.2:
#echo "2" > /data/zookeeper/data/myid
192.168.0.3:
#echo "3" > /data/zookeeper/data/myid
192.168.0.4:
#echo "4" > /data/zookeeper/data/myid
192.168.0.5:
#echo "5" > /data/zookeeper/data/myid

2.5 各节点启动并查看此节点状态

#/usr/local/zookeeper/bin/zkServer.sh start 
#/usr/local/zookeeper/bin/zkServer.sh status

3. hadoop软件配置安装

3.1 下载hadoop,hbase后scp其它节点

#cd /usr/local/
#wget https://archive.cloudera.com/cdh5/cdh/5/hbase-latest.tar.gz
#wget https://archive.cloudera.com/cdh5/cdh/5/hadoop-latest.tar.gz
#wget https://archive.cloudera.com/cdh5/cdh/5/spark-latest.tar.gz

3.2 各节点解压

#cd /usr/local
#tar xf hadoop-latest.tar.gz ;mv hadoop-2.6.0-cdh5.9.3 hadoop;
#tar xf hbase-latest.tar.gz; mv hbase-1.2.0-cdh5.16.2 hbase
#tar xf spark-latest.tar.gz

3.3 各节点添加到profile文件结尾

#vi /etc/profile
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin
export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin

3.4 各节点刷新变量

#source /etc/profile

3.5 各节点机器创建目录

#mkdir /data/hadoop/{data,name,tmp,log,checkpoint,journalnode} -p

3.6 hadoop的数据节点创建目录

192.168.0.3 14 15机器创建目录:

#mkdir /data{1,2,3,4}/hadoop/{data,name,tmp,log,checkpoint,journalnode} -p

3.7 配置Hadoop Yarn服务

先配置主节点192.168.0.1然后scp其它节点

core-site.xml

#vi $HADOOP_HOME/etc/hadoop/core-site.xml
    <configuration>
      <property>
        <name>fs.defaultFS</name>
        <value>hdfs://hdfscluster</value>
      </property>
      <property>
        <name>dfs.journalnode.edits.dir</name>
        <value>/data/hadoop/journalnode</value>
      </property>
      <property>
        <name>hadoop.tmp.dir</name>
        <value>/data/hadoop/tmp</value>
      </property>
      <property>
        <name>fs.trash.interval</name>
        <value>1440</value>
      </property>
      <property>
        <name>io.file.buffer.size</name>
        <value>131702</value>
      </property>
      <property>
        <name>ha.zookeeper.quorum</name>
     <value>192.168.0.1:2181,192.168.0.2:2181,192.168.0.3:2181,192.168.0.4:2181,192.168.0.5:2181</value>
      </property>
    </configuration>
  • fs.defaultFS:表示集群namenode的地址,对于namenode HA来说,需要取一个cluster id来作区分,以便于区分跟hadoop联邦的其它namenode,这里取hdcluster作为该集群的ID
  • dfs.journalnode.edits.dirhadoop.tmp.dir:表示journalnode的数据文件路径、临时文件路径
  • fs.trash.interval:表示回收站的保留时间(分钟),也即hdfs的文件删除后,在回收站里面保留的时长
  • io.file.buffer.size:表示读取文件的字节数(byte)
  • ha.zookeeper.quorum:表示zookeeper集群的主机与端口

hdfs-site.xml

#vi $HADOOP_HOME/etc/hadoop/hdfs-site.xml
    <configuration>
      <property>
        <name>dfs.replication</name>
        <value>2</value>
      </property>
      <property>
        <name>dfs.namenode.name.dir</name>
        <value>/data/hadoop/name</value>
      </property>
      <property>
        <name>dfs.blocksize</name>
        <value>134217728</value>
      </property>
      <property>
        <name>dfs.datanode.data.dir</name>
        <value>/data1/hadoop/data,/data2/hadoop/data,/data3/hadoop/data,/data4/hadoop/data</value>
      </property>
      <property>
        <name>dfs.namenode.checkpoint.dir</name>
        <value>/data/hadoop/checkpoint</value>
      </property>
      <property>
        <name>dfs.namenode.handler.count</name>
        <value>10</value>
      </property>
      <property>
        <name>dfs.datanode.handler.count</name>
        <value>10</value>
      </property>
      <property>
        <name>dfs.nameservices</name>
        <value>hdfscluster</value>
      </property>
      <property>
        <name>dfs.ha.namenodes.hdfscluster</name>
        <value>nn1,nn2</value>
      </property>
      <property>
        <name>dfs.namenode.rpc-address.hdfscluster.nn1</name>
        <value>hdfs01:9000</value>
      </property>
      <property>
        <name>dfs.namenode.rpc-address.hdfscluster.nn2</name>
        <value>hdfs02:9000</value>
      </property>
      <property>
        <name>dfs.namenode.http-address.hdfscluster.nn1</name>
        <value>hdfs01:50070</value>
      </property>
      <property>
        <name>dfs.namenode.http-address.hdfscluster.nn2</name>
        <value>hdfs02:50070</value>
      </property>
      <property>
        <name>dfs.namenode.shared.edits.dir</name>
        <value>qjournal://hdfs01:8485;hdfs02:8485;hdfs03:8485;hdfs04:8485;hdfs05:8485/hdfscluster</value>
      </property>
      <property>
        <name>dfs.client.failover.proxy.provider.hdfscluster</name>
        <value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
      </property>
      <property>
        <name>dfs.ha.automatic-failover.enabled</name>
        <value>true</value>
      </property>
      <property>
        <name>dfs.ha.fencing.methods</name>
        <value>shell(/bin/true)</value>
      </property>
    </configuration>

配置说明:

  • dfs.replication:表示hdfs的数据块备份数量,默认是3
  • dfs.namenode.name.dirdfs.datanode.data.dirdfs.namenode.checkpoint.dir:表示namenode、datanode、checkpoint的数据路径
  • dfs.blocksize:表示数据块的大小,默认为64M,可根据需要改为128M,甚至256M
  • dfs.namenode.handler.countdfs.datanode.handler.count:表示在namenode、datanode的进程数
  • dfs.nameservices:表示集群namenode的ID,这里命名为hdcluster,注意要跟 core-size.xml 里面的配置项 fs.defaultFS 中的集群ID一致
  • dfs.ha.namenodes.hdcluster:表示namenode的id,这里有两个namenode节点,因此使用nn1,nn2命名
  • dfs.namenode.rpc-address.hdcluster.nn1dfs.namenode.rpc-address.hdcluster.nn2:表示nn1、nn2的远程调用主机和端口
  • dfs.namenode.http-address.hdcluster.nn1dfs.namenode.http-address.hdcluster.nn2:表示 nn1、nn2的所在节点http服务和端口
  • dfs.namenode.shared.edits.dir:表示namenode共享的元数据路径,在配置HA时,使用journalnode来保存元数据,维持namenode元数据的一致性
  • dfs.client.failover.proxy.provider.hdcluster:表示HDFS客户端连接到Active NameNode的一个java类(默认)
  • dfs.ha.automatic-failover.enabled.hdcluster:表示当namenode ha的active namenode出现故障时,是否自动切换
  • dfs.ha.fencing.methods:表示故障时自动切换使用的方法

mapred-site.xml

#vi $HADOOP_HOME/etc/hadoop/mapred-site.xml
<configuration>
    <property>
        <name>mapreduce.framework.name</name>
        <value>yarn</value>
    </property>
</configuration>

该配置表示使用yarn框架


yarn-site.xml

#vi $HADOOP_HOME/etc/hadoop/yarn-site.xml
<configuration>
  <property>
    <name>yarn.nodemanager.aux-services</name>
    <value>mapreduce_shuffle</value>
  </property>
  <property>
    <name>yarn.resourcemanager.ha.enabled</name>
    <value>true</value>
  </property>
  <property>
    <name>yarn.resourcemanager.cluster-id</name>
    <value>hdfscluster</value>
  </property>
  <property>
    <name>yarn.resourcemanager.ha.rm-ids</name>
    <value>rm1,rm2,rm3</value>
  </property>
  <property>
    <name>yarn.resourcemanager.hostname.rm1</name>
    <value>hdfs03</value>
  </property>
  <property>
    <name>yarn.resourcemanager.hostname.rm2</name>
    <value>hdfs04</value>
  </property>
  <property>
    <name>yarn.resourcemanager.hostname.rm3</name>
    <value>hdfs05</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address.rm1</name>
    <value>hdfs03:8088</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address.rm2</name>
    <value>hdfs04:8088</value>
  </property>
  <property>
    <name>yarn.resourcemanager.webapp.address.rm3</name>
    <value>hdfs05:8088</value>
  </property>
  <property>
    <name>yarn.resourcemanager.zk-address</name>
    <value>192.168.0.1:2181,192.168.0.2:2181,192.168.0.3:2181,192.168.0.4:2181,192.168.0.5:2181</value>
  </property>
  <property>
    <name>yarn.nodemanager.resource.memory-mb</name>
    <value>51200</value>
  </property>
  <property>
     <name>yarn.scheduler.minimum-allocation-mb</name>
     <value>1024</value>
  </property>
  <property>
     <name>yarn.scheduler.maximum-allocation-mb</name>
     <value>51200</value>
  </property>
  <property>
     <name>yarn.app.mapreduce.am.resource.mb</name>
     <value>2048</value>
  </property>
</configuration>
  • yarn.nodemanager.aux-services:NodeManager上运行的附属服务,需配置成mapreduce_shuffle,才可运行MapReduce程序,否则会报错
  • yarn.resourcemanager.ha.enabled:表示启动resourcemanager HA高可用
  • yarn.resourcemanager.cluster-id:表示resourcemanager的集群ID,不要与别的集群混淆即可,这里命名为hdcluster
  • yarn.resourcemanager.ha.rm-ids:表示resourcemanager的节点id,这里有两个节点,使用rm1,rm2作为ID
  • yarn.resourcemanager.hostname.rm1yarn.resourcemanager.hostname.rm2:表示rm1,rm2的主机,这里取hd3、hd4
  • yarn.resourcemanager.webapp.address.rm1yarn.resourcemanager.webapp.address.rm2:表示rm1,rm2的网页访问地址和端口,也即通过该地址和端口可访问作业情况
  • yarn.resourcemanager.zk-address:表示使用zookeeper来协助管理resourcemanager主备的zookeeper集群主机与端口

其他配置:

#vi $HADOOP_HOME/etc/hadoop/slaves
hdfs03
hdfs04
hdfs05
#vi $HADOOP_HOME/etc/hadoop/log4j.properties
hadoop.log.dir=/data/hadoop/log
hadoop.log.file=hadoop.log
修改日志的路径
#vi $HADOOP_HOME/etc/hadoop/hadoop-env.sh
export JAVA_HOME=/usr/local/jdk1.8

3.8 各节点配置scp

#cd $HADOOP_HOME/etc/hadoop/
#scp hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slaves log4j.properties 192.168.0.2:`pwd`
#scp hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slaves log4j.properties 192.168.0.3:`pwd`
#scp hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slaves log4j.properties 192.168.0.4:`pwd`
#scp hadoop-env.sh core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml slaves log4j.properties 192.168.0.5:`pwd`

3.9 首次格式化启动顺序

启动 journalnode(hd1,hd2,hd3,hd4,hd5)

#hadoop-daemon.sh start journalnode 

格式化 namenode(hd1)

#hdfs namenode -format

初始化 HA 状态到 zk(hd1)

#hdfs zkfc -formatZK 

启动 namenode active(hd1)

#hadoop-daemon.sh start namenode

同步 namenode(hd2)

#hdfs namenode -bootstrapStandby

启动 namenode standby(hd2)

#hadoop-daemon.sh start namenode

启动ZookeeperFailoverController(hd1,hd2)

#hadoop-daemon.sh start zkfc

启动 datanode(hd3,hd4,hd5)

#hadoop-daemon.sh start datanode

启动 resourcemanager(hd3,hd4,hd5)

#yarn-daemon.sh start resourcemanager

启动 nodemanager(hd3,hd4,hd5)

#yarn-daemon.sh start nodemanager

3.10 各节点查看服务:

  • shell 查看:
    #jps
  • WEB查看
浏览器访问方式该地址时需要进行隧道配置,本地50070端口映射192.168.0.1的50070端口:
访问方式:http://127.0.0.1:50070
http://192.168.0.1:50070

4. hbase 软件安装配置

4.1 主节点配置

#cp $HADOOP_HOME/etc/hadoop/hdfs-site.xml $HBASE_HOME/conf/
#vi $HBASE_HOME/conf/hbase-site.xml
<configuration>
  <property>
    <name>hbase.zookeeper.property.clientPort</name>
    <value>2181</value>
  </property>
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>192.168.0.1,192.168.0.2,192.168.0.3,192.168.0.4,192.168.0.5</value>
    <description>The directory shared by RegionServers.
    </description>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/data/zookeeper/data</value>
    <description>
        注意这里的zookeeper数据目录与hadoop ha的共用,也即要与 zoo.cfg 中配置的一致
        Property from ZooKeeper config zoo.cfg.
        The directory where the snapshot is stored.
    </description>
  </property>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://hdfs01:9000/hbase</value>
    <description>
        The directory shared by RegionServers.
        官网多次强调这个目录不要预先创建,hbase会自行创建,否则会做迁移操作,引发错误
        至于端口,有些是8020,有些是9000,看 $HADOOP_HOME/etc/hadoop/hdfs-site.xml 里面的配置,本实验配置的是
        dfs.namenode.rpc-address.hdfscluster.nn1 , dfs.namenode.rpc-address.hdfscluster.nn2
    </description>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
    <description>
        分布式集群配置,这里要设置为true,如果是单节点的,则设置为false
        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)
    </description>
  </property>
</configuration>

region server 配置

#vi $HBASE_HOME/conf/regionservers
hdfs03
hdfs04
hdfs05

master backup 配置

#vi $HBASE_HOME/conf/backup-masters
hdfs02

环境配置

#vi $HBASE_HOME/conf/hbase-env.sh
export JAVA_HOME=/usr/local/jdk1.8
export HBASE_MANAGES_ZK=false

4.2 配置Scp到其它节点

#cd $HBASE_HOME/conf/
#scp hdfs-site.xml hbase-site.xml regionservers backup-masters hbase-env.sh 192.168.0.5:`pwd`
#scp hdfs-site.xml hbase-site.xml regionservers backup-masters hbase-env.sh 192.168.0.4:`pwd`
#scp hdfs-site.xml hbase-site.xml regionservers backup-masters hbase-env.sh 192.168.0.3:`pwd`
#scp hdfs-site.xml hbase-site.xml regionservers backup-masters hbase-env.sh 192.168.0.2:`pwd`

4.3 启动Hbase

启动Hbase master(hdfs01)

#hbase-daemon.sh start master 

启动Hbase regionserver(hdfs03、hdfs04、hdfs05)

#hbase-daemon.sh start regionserver 

启动Hbase backup-master(hdfs02)

#hbase-daemon.sh start master --backup

4.4 查看Hbase服务

  • 通过shell查看
#jps
  • 进入hbase查看
#hbase shell
>status
1 active master, 1 backup masters, 3 servers, 0 dead, 25.3333 average load

5. spark on yarn 软件安装配置

spark只利用三台主机部署:

hdfs03 hdfs04 hdfs05

5.1 安装配置

#cd /usr/local/
#tar xf spark-latest.tar.gz
#mv spark-1.6.0-cdh5.16.2 spark
#cd /usr/local/spark
#cp spark-env.sh.template spark-env.sh
vim spark-env.sh
export JAVA_HOME=/usr/local/jdk1.8
export SCALA_HOME=/home/software/scala2.11
export HADOOP_HOME=/usr/local/hadoop
export HADOOP_CONF_DIR=/usr/local/hadoop/etc/hadoop
#vi spark-defaults.conf 
spark.yarn.jars=hdfs://hdfs01:9000/spark_jars/*
#vi slaves
hdfs04
hdfs05

5.2 JAR包路径创建

在HDFS上,创建一个目录,用来存放spark的依赖jar包。

此目录是spark-defaults.conf目录中配置的目录名称,命令如下:

#hadoop fs -mkdir /spark_jars

进入spark安装目录的jars目录,执行:

#hadoop fs -put ./* /spark_jars

5.3 启动spark shell

进入Spark安装目录的bin目录,执行如下命令:

#sh spark-shell --master yarn-client

有些关于Spark on YARN部署的博客,实际上介绍的是Spark的 standalone运行模式。如果启动Spark的master和worker服务,这是Spark的 standalone运行模式,不是Spark on YARN运行模式。

原创声明,本文系作者授权云+社区发表,未经许可,不得转载。

如有侵权,请联系 yunjia_community@tencent.com 删除。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • Hbase 基础 Rowkey CF 架构 概述 预分区及Rowkey设计 学习笔记

    HBase类似于数据库的存储层,HBase适用于结构化存储,并且为列式分布式数据库。

    大鹅
  • Kafka入门教程 消息队列基本概念与学习笔记

    Apache Kafka是基于发布/订阅的容错消息系统,由Scala和Java编写,是一个分布式消息队列,具有高性能、持久化、多副本备份、横向扩展能力。

    大鹅
  • Spark 基本概念及 jobs stages tasks 等 解释

    还有一个是范围的依赖,即RangeDependency,它仅仅被org.apache.spark.rdd.UnionRDD使用。UnionRDD是把多个RDD合...

    大鹅
  • 【Hadoop】HDFS NameNode Federation联盟架构

    版权声明:本文为博主原创文章,转载请注明出处。 https://blog.csdn.net/...

    魏晓蕾
  • hadoop搭建完全分布式集群

    后面的启动步骤可以用一步来代替,进入hadoop安装目录的sbin目录,执行:start-dfs.sh 。但建议还是按部就班来执行,比较可靠。

    用户7649162
  • hadoop ha搭建

    修改zoo.cfg,创建对应的目录,在data目录下创建myid文件,一切完毕后进行启动

    yiduwangkai
  • Spring - 通过SpEL为bean赋值(4)

    <property name = "prefix" value="#{prefixGenerator}"/>

    桑鱼
  • hadoop集群篇--从0到1搭建hadoop集群

    本来有套好好的集群,可是不知道为什么虚拟机镜像文件损坏,结果导致集群不能用。所以不得不重新搭套集群,借此机会顺便再重新搭套吧,顺便提醒一句大家,自己虚拟机的集群...

    LhWorld哥陪你聊算法
  • 大数据-Hadoop的使用指南

    1.x版本系列:hadoop版本当中的第二代开源版本,主要修复0.x版本的一些bug等

    cwl_java
  • Hadoop完全分布式安装

    完全分布式安装部署,其实步骤上来说与伪分布式没有太大的区别,主要增加2台虚拟机部署称为一个3台的集群

    我脱下短袖

扫码关注云+社区

领取腾讯云代金券