环境准备和计划:
5台 Centos 7 虚拟机, 规划如下:
HostName | Softwares | Process | comments |
kencentos1 | JDK, hadoop | namenode, zkfc (active), resourceManager | namenode 1, resourceManger |
kencentos2 | JDK, hadoop | namenode, zkfc (active), resourceManager | namenode 2, resourceManger |
kencentosClient1 | JDK, hadoop,zookeeper | QuorumPeefMain(zookeeper),journnode, datanode,nodeManger | datanode 3 |
kencentosClient2 | JDK, hadoop,zookeeper | QuorumPeefMain(zookeeper),journnode, datanode,nodeManger | datanode 1 |
kencentosClient3 | JDK, hadoop,zookeeper | QuorumPeefMain(zookeeper),journnode, datanode,nodeManger | datanode 2 |
Hadoop: 2.8.3,
JDK: 1.8.60
Zookeeper:3.4.9
step1 :centos 7 准备,这个百度上搜搜很容易装好。
step2: JDK 安装和环境变量设置。百度一下都可以解决。
Step3: 下载Hadoop 和 Zookeeper。去Apache 官方找到下载的地方。
Step4:hadoop HA集群配置
这一步需要在 dfs.journalnode.edits.dir 指定的地方建相对应的空文件夹。
core-site.xml:
<configuration>
<property>
<name>hadoop.tmp.dir</name>
<value>/opt/hadoop/data</value>
<description>Abase for other temporary directories.</description>
</property>
<property>
<name>fs.defaultFS</name>
<value>hdfs://kenns</value>
</property>
<property>
<name>ha.zookeeper.quorum</name>
<value>kencentosClient1:2181,kencentosClient3:2181,kencentosClient2:2181</value>
</property>
</configuration>
hdfs-site.xml:
这一步需要在hadoop.tmp.dir指定的地方建相对应的空文件夹。
<configuration>
<property>
<name>dfs.replication</name>
<value>2</value>
</property>
<property>
<name>dfs.block.size</name>
<value>64M</value>
</property>
<property>
<name>dfs.nameservices</name>
<value>kenns</value>
</property>
<property>
<name>dfs.ha.namenodes.kenns</name>
<value>nn1,nn2</value>
</property>
<property>
<name>dfs.namenode.rpc-address.kenns.nn1</name>
<value>kencentos1:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.kenns.nn1</name>
<value>kencentos1:50070</value>
</property>
<property>
<name>dfs.namenode.rpc-address.kenns.nn2</name>
<value>kencentos2:9000</value>
</property>
<property>
<name>dfs.namenode.http-address.kenns.nn2</name>
<value>kencentos2:50070</value>
</property>
<property>
<name>dfs.namenode.shared.edits.dir</name>
<value>qjournal://kencentosClient1:8485;kencentosClient2:8485;kencentosClient3:8485/kenns</value>
</property>
<!-- JournalNode data location -->
<property>
<name>dfs.journalnode.edits.dir</name>
<value>/opt/hadoop/journal</value>
</property>
<!-- name node fail over -->
<property>
<name>dfs.ha.automatic-failover.enabled</name>
<value>true</value>
</property>
<!-- fail over way -->
<property>
<name>dfs.client.failover.proxy.provider.kenns</name>
<value>org.apache.hadoop.hdfs.server.namenode.ha.ConfiguredFailoverProxyProvider</value>
</property>
<property>
<name>dfs.ha.fencing.methods</name>
<value>
sshfence
shell(/bin/true)
</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.private-key-files</name>
<value>/root/.ssh/id_rsa</value>
</property>
<property>
<name>dfs.ha.fencing.ssh.connect-timeout</name>
<value>30000</value>
</property>
</configuration>
mapred-site.xml:
<configuration>
<property>
<name>mapreduce.framework.name</name>
<value>yarn</value>
</property>
</configuration>
yarn-site.xml:
<configuration>
<property>
<name>yarn.resourcemanager.ha.enabled</name>
<value>true</value>
</property>
<!-- cluster id -->
<property>
<name>yarn.resourcemanager.cluster-id</name>
<value>yrc</value>
</property>
<!-- RM name -->
<property>
<name>yarn.resourcemanager.ha.rm-ids</name>
<value>rm1,rm2</value>
</property>
<!-- RM address -->
<property>
<name>yarn.resourcemanager.hostname.rm1</name>
<value>kencentos1</value>
</property>
<property>
<name>yarn.resourcemanager.hostname.rm2</name>
<value>kencentos2</value>
</property>
<!-- ZK cluster -->
<property>
<name>yarn.resourcemanager.zk-address</name>
<value>kencentosClient1:2181,kencentosClient2:2181,kencentosClient3:2181</value>
</property>
<property>
<name>yarn.nodemanager.aux-services</name>
<value>mapreduce_shuffle</value>
</property>
</configuration>
slaves:
kencentosClient3
kencentosClient2
kencentosClient1
Step 5: 配置SSH 免密登陆,各个机器之间。这个可以百度一下,要保证各个节点之间都要能连上。
Step6:将配置好的hadoop copy到其它节点。
scp -r
step7:启动zookeeper集群
分别在kencentosClient1,kencentosClient2, kencentosClient3 机器上执行启动指令:./zkServer.sh start 查看zookeeper状态:./zkServer.sh status, 正确的状态是一个leader,两个follower。
这里如果没有这只zookeeper 的home,请在zookeeper 的bin 下面执行。
step 8: 启动journalnode
分别在kencentosClient1,kencentosClient2,kencentosClient3机器上执行启动指令:sbin/hadoop-daemon.sh start journalnode。 启动成功后会多出一个JournalNode进程。
step9:格式化namenode
选取一个namenode 节点,执行:hdfs namenode -format
Step10:格式化zkfc
在格式化的namenode上执行格式化指令: hdfs zkfc -formatZK
格式化成功后会在zookeeper集群建立新的文件路径(该路径下存放zkfc监控namenode节点的信息)
step11:启动格式化过的namenode:
hadoop-daemon.sh start namenode
Step 12: 在另外一个namenode上执行下面的命令,此步骤是copy格式化好的配置到另外一个节点上。
hdfs namenode -bootstrapStandby
Step13: 启动集群。
完成上面的步骤,就可以stop namenode或者不停也可以。执行下面的命令在namenode 上:
./start-dfs.sh
然后:
./start-yarn.sh.
可以用各自的namenode:50070 去查看是否都已经成功启动了。
相关推荐
搭建Hadoop HA涉及以下几个主要步骤: 1. **环境准备**:确保拥有至少两台服务器作为NameNode节点,一台作为ResourceManager节点,其余作为DataNode和NodeManager。所有机器之间需要有良好的网络连接。 2. **安装...
- 指定RM地址,如`yarn.resourcemanager.address.hacluster=hostname1:8032`,`yarn.resourcemanager.webapp.address.hacluster=hostname1:8088`,以及nn2的对应设置。 4. 配置mapred-site.xml: - 设置MapReduce...
搭建Hadoop HA的步骤如下: 1. **环境准备**:确保多台服务器(至少三台,包括NameNode、DataNode和ResourceManager节点)安装了相同版本的Hadoop和Java环境。 2. **配置网络**:设置主机名解析,确保所有节点间...
"hadoop 集群搭建.txt"很可能包含了详细的Hadoop集群搭建步骤和配置说明,"kafka 安装.txt"则可能涵盖了Apache Kafka的安装过程,Kafka是一个分布式流处理平台,常用于实时数据处理和消息传递,与Hadoop生态系统紧密...
如`dfs.nameservices`定义了集群的名称,`dfs.ha.namenodes.mycluster`指定了NameNode实例,`dfs.namenode.rpc-address`和`dfs.namenode.http-address`分别设置了NameNode的RPC和HTTP地址。`dfs.namenode.shared....
本教程将详细介绍如何在Linux环境下搭建一个高可用(HA)的Hadoop完全分布式集群,主要涉及到HDFS(Hadoop Distributed File System)的HA以及YARN(Yet Another Resource Negotiator)的高可用设置。 1. **HDFS HA**: ...
journalnodes.txt`可能是启动JournalNodes的脚本,`hbase分布式环境搭建.docx`提供了HBase环境搭建的详细指南,`hbase环境搭建脚本`包含自动化部署HBase的脚本,`hadoop环境搭建`文件可能包含Hadoop集群的配置步骤,...
总之,在CentOS 7上搭建Hadoop 2.10高可用集群涉及多个步骤,包括环境配置、SSH无密码登录、Hadoop组件安装与配置,以及Zookeeper的集成。这一过程需要细心操作,确保每个环节都正确无误,从而构建一个可靠的Hadoop ...
通过以上步骤,我们不仅能够成功地在多台虚拟机上搭建Hadoop分布式集群,而且还能够确保其稳定运行。在实际部署过程中,还需要注意根据具体环境调整配置参数,比如更改存储路径、增加更多的从节点等。此外,还可以...
- 设置`dfs.ha.namenodes.hadoopcluster`参数为`nn1,nn2`。 - 在Master节点上启动Hadoop服务,并检查`nn1`和`nn2`服务的状态。 4. **验证配置** - 在`slave1`节点上查看服务进程,确认Hadoop HA配置成功。 **...
4. **启动集群**:通过`start-cluster.sh`脚本启动集群,这将初始化JobManager和TaskManager的进程。 5. **验证HA集群进程**:使用`jps`命令查看每个节点上运行的Flink进程,可以通过访问JobManager的Web UI界面来...
以上步骤涵盖了 Spark Standalone 分布式集群的基本搭建方法及其核心概念,对于理解和应用 Spark 在分布式环境中至关重要。通过这些步骤,开发者可以快速搭建起一个可扩展且高效的 Spark 集群。
总之,搭建一个Flink集群需要熟悉Hadoop环境、配置Flink相关参数、理解Flink的数据处理模型和API,以及掌握容错机制。通过以上步骤,你就可以在企业环境中部署并运行Flink作业,实现高效的大数据处理。
24. 搭建Spark集群步骤:搭建Spark集群需要配置好环境变量,安装依赖软件包,配置集群管理器。 25. Spark的三种提交模式:Spark有local模式、Standalone模式和Mesos模式。 26. Spark内核架构原理:Spark内核架构...
在安装Spark之前,需要先搭建好软件环境,包括操作系统(如Linux)、Java开发环境(JDK 1.8或以上版本)、SSH连接工具(如Xshell)以及Hadoop环境。Hadoop是Spark常用的数据存储和管理平台,通常会与Spark一起部署,...