<?xml version="1.0" encoding="utf-8" standalone="yes"?><rss version="2.0" xmlns:atom="http://www.w3.org/2005/Atom"><channel><title>High-Availability on 李先生的树洞</title><link>https://blog.pblhlyr.top/tags/high-availability/</link><description>Recent content in High-Availability on 李先生的树洞</description><generator>Hugo -- gohugo.io</generator><language>zh-cn</language><managingEditor>pblh123@126.com (John Lee)</managingEditor><webMaster>pblh123@126.com (John Lee)</webMaster><copyright>© 2026 John Lee</copyright><lastBuildDate>Fri, 29 May 2026 00:00:00 +0000</lastBuildDate><atom:link href="https://blog.pblhlyr.top/tags/high-availability/index.xml" rel="self" type="application/rss+xml"/><item><title>Docker Big Data Cluster HA Deployment</title><link>https://blog.pblhlyr.top/en/posts/docker-big-data-cluster-ha-deployment/</link><pubDate>Fri, 29 May 2026 00:00:00 +0000</pubDate><author>pblh123@126.com (John Lee)</author><guid>https://blog.pblhlyr.top/en/posts/docker-big-data-cluster-ha-deployment/</guid><description>&lt;h1 class="relative group"&gt;Docker Big Data Cluster HA Deployment
 &lt;div id="docker-big-data-cluster-ha-deployment" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#docker-big-data-cluster-ha-deployment" aria-label="锚点"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h1&gt;
&lt;p&gt;Docker Compose orchestrated 32-container full-stack HA big data cluster for local testing and learning.&lt;/p&gt;

&lt;h2 class="relative group"&gt;Architecture Overview
 &lt;div id="architecture-overview" class="anchor"&gt;&lt;/div&gt;
 
 &lt;span
 class="absolute top-0 w-6 transition-opacity opacity-0 -start-6 not-prose group-hover:opacity-100 select-none"&gt;
 &lt;a class="text-primary-300 dark:text-neutral-700 !no-underline" href="#architecture-overview" aria-label="锚点"&gt;#&lt;/a&gt;
 &lt;/span&gt;
 
&lt;/h2&gt;
&lt;div class="highlight-wrapper"&gt;&lt;div class="highlight"&gt;&lt;pre tabindex="0" class="chroma"&gt;&lt;code class="language-text" data-lang="text"&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ┌─────────────────────────────────────────────────┐
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Docker Bridge: bigdata-net │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ 172.25.0.0/16 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; ├─────────────────────────────────────────────────┤
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 0 (base): MySQL + ZooKeeper x3 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 1 (storage): JournalNode x3 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 2 (storage): NameNode x2 + ZKFC x2 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 3 (storage): DataNode x3 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 4 (compute): ResourceManager x2 + NM x3 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 5 (analytics): Hive Metastore/Server2 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 6 (analytics): HBase x5 + Kafka x3 │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; │ Layer 7 (analytics): Spark + Flink History │
&lt;/span&gt;&lt;/span&gt;&lt;span class="line"&gt;&lt;span class="cl"&gt; └─────────────────────────────────────────────────┘&lt;/span&gt;&lt;/span&gt;&lt;/code&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/div&gt;
&lt;table&gt;
	&lt;thead&gt;
			&lt;tr&gt;
					&lt;th&gt;Component&lt;/th&gt;
					&lt;th&gt;Version&lt;/th&gt;
					&lt;th&gt;HA Strategy&lt;/th&gt;
					&lt;th&gt;Containers&lt;/th&gt;
			&lt;/tr&gt;
	&lt;/thead&gt;
	&lt;tbody&gt;
			&lt;tr&gt;
					&lt;td&gt;HDFS&lt;/td&gt;
					&lt;td&gt;3.3.6&lt;/td&gt;
					&lt;td&gt;Dual NameNode + 3 JN + ZKFC&lt;/td&gt;
					&lt;td&gt;10&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;YARN&lt;/td&gt;
					&lt;td&gt;3.3.6&lt;/td&gt;
					&lt;td&gt;Dual RM + ZK State Store&lt;/td&gt;
					&lt;td&gt;6&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;ZooKeeper&lt;/td&gt;
					&lt;td&gt;3.7.1&lt;/td&gt;
					&lt;td&gt;3-node quorum&lt;/td&gt;
					&lt;td&gt;3&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;HBase&lt;/td&gt;
					&lt;td&gt;2.6.4&lt;/td&gt;
					&lt;td&gt;Dual Master + ZK discovery&lt;/td&gt;
					&lt;td&gt;5&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Hive&lt;/td&gt;
					&lt;td&gt;3.1.3&lt;/td&gt;
					&lt;td&gt;Metastore + Server2 (separate)&lt;/td&gt;
					&lt;td&gt;2&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Kafka&lt;/td&gt;
					&lt;td&gt;2.8.0&lt;/td&gt;
					&lt;td&gt;3 Broker + ZK coordination&lt;/td&gt;
					&lt;td&gt;3&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Spark&lt;/td&gt;
					&lt;td&gt;3.5.8&lt;/td&gt;
					&lt;td&gt;History Server (YARN on-demand)&lt;/td&gt;
					&lt;td&gt;1&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;Flink&lt;/td&gt;
					&lt;td&gt;1.19.1&lt;/td&gt;
					&lt;td&gt;History Server (YARN on-demand)&lt;/td&gt;
					&lt;td&gt;1&lt;/td&gt;
			&lt;/tr&gt;
			&lt;tr&gt;
					&lt;td&gt;MySQL&lt;/td&gt;
					&lt;td&gt;5.7&lt;/td&gt;
					&lt;td&gt;—&lt;/td&gt;
					&lt;td&gt;1&lt;/td&gt;
			&lt;/tr&gt;
	&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;&lt;strong&gt;Total: 32 containers, ~10-11GB RAM&lt;/strong&gt;&lt;/p&gt;</description></item></channel></rss>