# ha

Published articles for ha.

This is one page of public article previews, not the complete archive. Follow Next page to continue. Summaries are not the original full articles.

## 【kube-apiserver】运维与升级：HA、flags、graceful shutdown 与 etcd 联检

DevFeed: [【kube-apiserver】运维与升级：HA、flags、graceful shutdown 与 etcd 联检](<https://devfeed.tech/articles/kube-apiserver-ha-flags-graceful-shutdown-etcd-33970.md>)

Original publisher: [Read original article](<https://quant67.com/post/apiserver/14-ops-upgrade/14-ops-upgrade.html>)

Author: Liao Tonglang

Published: 2026-08-28T00:00:00Z

Content type: tutorial

Language: zh

Sources: [土法炼钢 - 系统与基础设施](<https://devfeed.tech/sources/source-4.md>)

Topics: [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Encryption](<https://devfeed.tech/topics/encryption.md>)

Tags: [api](<https://devfeed.tech/tags/api.md>), [apiserver](<https://devfeed.tech/tags/apiserver.md>), [audit](<https://devfeed.tech/tags/audit.md>), [backend](<https://devfeed.tech/tags/backend.md>), [config](<https://devfeed.tech/tags/config.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [encryption](<https://devfeed.tech/tags/encryption.md>), [etcd](<https://devfeed.tech/tags/etcd.md>), [flag](<https://devfeed.tech/tags/flag.md>), [graceful-shutdown](<https://devfeed.tech/tags/graceful-shutdown.md>), [ha](<https://devfeed.tech/tags/ha.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [leader-election](<https://devfeed.tech/tags/leader-election.md>), [load-balancer](<https://devfeed.tech/tags/load-balancer.md>), [operations](<https://devfeed.tech/tags/operations.md>), [retry](<https://devfeed.tech/tags/retry.md>), [servers](<https://devfeed.tech/tags/servers.md>), [upgrade](<https://devfeed.tech/tags/upgrade.md>), [v1-30-3](<https://devfeed.tech/tags/v1-30-3.md>)

### AI overview

This Chinese-language operations tutorial explains kube-apiserver high availability and upgrades for Kubernetes v1.30.3. It clarifies that multiple apiserver instances run concurrently without internal leader election, sharing an etcd cluster, and covers key flags, graceful shutdown, encryption configuration, audit webhooks, upgrade checks, and version-skew guidance.

### Source excerpt

kube-apiserver 高可用模式：多实例共享 etcd、无需内部 leader election；核心 flag 语义（--etcd-servers、--etcd-servers-overrides、--shutdown-delay-duration、encryption-provider-config）；与 etcd/14 的联合升级检查单；Kubernetes 版本偏差策略与 etcd 矩阵指针。

## Multipath en Linux: failover y HA con cabinas SAN

DevFeed: [Multipath en Linux: failover y HA con cabinas SAN](<https://devfeed.tech/articles/multipath-en-linux-failover-y-ha-con-cabinas-san-34070.md>)

Original publisher: [Read original article](<https://tengoping.com/blog/multipath-linux-failover-cabinas-san/>)

Author: Antonio Pérez

Published: 2026-08-01T14:00:00Z

Content type: tutorial

Language: es

Sources: [tengoping.com](<https://devfeed.tech/sources/tengoping-com.md>)

Topics: [Linux](<https://devfeed.tech/topics/linux.md>), [RAID](<https://devfeed.tech/topics/raid.md>), [LVM](<https://devfeed.tech/topics/lvm.md>), [Kernel](<https://devfeed.tech/topics/kernel.md>), [Mdadm](<https://devfeed.tech/topics/mdadm.md>), [Debian](<https://devfeed.tech/topics/debian.md>), [rhel](<https://devfeed.tech/topics/rhel.md>), [Ubuntu](<https://devfeed.tech/topics/ubuntu.md>)

Tags: [debian](<https://devfeed.tech/tags/debian.md>), [failover](<https://devfeed.tech/tags/failover.md>), [ha](<https://devfeed.tech/tags/ha.md>), [kernel](<https://devfeed.tech/tags/kernel.md>), [linux](<https://devfeed.tech/tags/linux.md>), [lvm](<https://devfeed.tech/tags/lvm.md>), [mdadm](<https://devfeed.tech/tags/mdadm.md>), [raid](<https://devfeed.tech/tags/raid.md>), [rhel](<https://devfeed.tech/tags/rhel.md>), [ubuntu](<https://devfeed.tech/tags/ubuntu.md>), [wwid](<https://devfeed.tech/tags/wwid.md>)

### AI overview

A Spanish tutorial explains how DM-Multipath on Linux provides redundant paths to SAN storage. It distinguishes path failover from RAID-based disk protection, describes active-active load balancing, and explains how WWIDs identify the same LUN across multiple paths.

### Source excerpt

Configura DM-Multipath en Linux para eliminar puntos únicos de fallo hacia la cabina SAN: instalación, multipath.conf y failover.

## Building High Availability PostgreSQL Clusters with Patroni and Other Integrated Approaches

DevFeed: [Building High Availability PostgreSQL Clusters with Patroni and Other Integrated Approaches](<https://devfeed.tech/articles/building-high-availability-postgresql-clusters-with-patroni-and-other-integrated-approaches-19110.md>)

Original publisher: [Read original article](<https://severalnines.com/blog/building-high-availability-postgresql-clusters-with-patroni-and-other-integrated-approaches/>)

Author: Agus Syafaat

Published: 2026-05-21T07:20:00Z

Content type: tutorial

Language: en

Sources: [SeveralNines](<https://devfeed.tech/sources/severalnines.md>)

Topics: [postgresql clusters](<https://devfeed.tech/topics/postgresql-clusters.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [Replication](<https://devfeed.tech/topics/replication.md>), [Resilience](<https://devfeed.tech/topics/resilience.md>), [Automation](<https://devfeed.tech/topics/automation.md>), [configuration](<https://devfeed.tech/topics/configuration.md>), [Open Source](<https://devfeed.tech/topics/open-source.md>)

Tags: [automation](<https://devfeed.tech/tags/automation.md>), [availability](<https://devfeed.tech/tags/availability.md>), [configuration](<https://devfeed.tech/tags/configuration.md>), [consensus](<https://devfeed.tech/tags/consensus.md>), [database](<https://devfeed.tech/tags/database.md>), [distributed](<https://devfeed.tech/tags/distributed.md>), [failover](<https://devfeed.tech/tags/failover.md>), [ha](<https://devfeed.tech/tags/ha.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [open-source](<https://devfeed.tech/tags/open-source.md>), [patroni](<https://devfeed.tech/tags/patroni.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [postgresql-clusters](<https://devfeed.tech/tags/postgresql-clusters.md>), [recovery-repair](<https://devfeed.tech/tags/recovery-repair.md>), [replication](<https://devfeed.tech/tags/replication.md>)

### AI overview

This article explains how to build highly available PostgreSQL clusters with Patroni and related tools. It describes Patroni's use of replication, distributed consensus, a distributed configuration store, leader election, health checks, and YAML configuration to support automated failover. It also discusses operational challenges and the possible use of ClusterControl in the workflow.

### Source excerpt

In modern application stacks, downtime is a direct threat to business continuity, customer trust, and revenue. Regardless of whether it is an e-commerce platform, a fintech application, or a critical internal system, the expectation is 24/7 availability, underscoring the critical importance of High Availability (HA) and automated failover mechanisms within PostgreSQL clusters. HA ensures that [...] The post Building High Availability PostgreSQL Clusters with Patroni and Other Integrated Approaches appeared first on Severalnines.

## Inside PostgreSQL: Architecture for HA, Speed & Reliability

DevFeed: [Inside PostgreSQL: Architecture for HA, Speed & Reliability](<https://devfeed.tech/articles/inside-postgresql-architecture-for-ha-speed-reliability-31.md>)

Original publisher: [Read original article](<https://blog.abhimanyu-saharan.com/posts/inside-postgresql-architecture-for-ha-speed-and-reliability>)

Author: Abhimanyu Saharan

Published: 2025-07-06T00:00:00Z

Content type: article

Language: en

Sources: [Abhimanyu Saharan](<https://devfeed.tech/sources/abhimanyu-s-blog.md>)

Topics: [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [Resilience](<https://devfeed.tech/topics/resilience.md>), [data](<https://devfeed.tech/topics/data.md>)

Tags: [architecture](<https://devfeed.tech/tags/architecture.md>), [developers](<https://devfeed.tech/tags/developers.md>), [ha](<https://devfeed.tech/tags/ha.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [integrity](<https://devfeed.tech/tags/integrity.md>), [performance](<https://devfeed.tech/tags/performance.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [resilience](<https://devfeed.tech/tags/resilience.md>), [software-engineering](<https://devfeed.tech/tags/software-engineering.md>)

### AI overview

An overview of PostgreSQL architecture focused on high availability, data integrity, resilience, and performance.

### Source excerpt

Explore PostgreSQL's architecture with a focus on high availability, data integrity, resilience, and performance; ideal for developers, DBAs, and tech leads.

## Automating Keycloak Deployments for Fun and Profit

DevFeed: [Automating Keycloak Deployments for Fun and Profit](<https://devfeed.tech/articles/automating-keycloak-deployments-for-fun-and-profit-25132.md>)

Original publisher: [Read original article](<https://blog.brakmic.com/automating-keycloak-deployments-for-fun-and-profit/>)

Author: brakmic

Published: 2024-12-24T22:31:29Z

Content type: tutorial

Language: en

Sources: [Harris Brakmic - Coding](<https://devfeed.tech/sources/harris-brakmic-coding.md>)

Topics: [Deployment](<https://devfeed.tech/topics/deployment.md>), [Kubernetes](<https://devfeed.tech/topics/kubernetes.md>), [Helm charts](<https://devfeed.tech/topics/helm-charts.md>), [Docker](<https://devfeed.tech/topics/docker.md>), [DevOps](<https://devfeed.tech/topics/devops.md>), [Testing](<https://devfeed.tech/topics/testing.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [sealed secrets](<https://devfeed.tech/topics/sealed-secrets.md>), [kubectl](<https://devfeed.tech/topics/kubectl.md>), [Debian](<https://devfeed.tech/topics/debian.md>)

Tags: [bash](<https://devfeed.tech/tags/bash.md>), [build](<https://devfeed.tech/tags/build.md>), [coding](<https://devfeed.tech/tags/coding.md>), [debian](<https://devfeed.tech/tags/debian.md>), [deployment](<https://devfeed.tech/tags/deployment.md>), [devops](<https://devfeed.tech/tags/devops.md>), [docker](<https://devfeed.tech/tags/docker.md>), [examples](<https://devfeed.tech/tags/examples.md>), [ha](<https://devfeed.tech/tags/ha.md>), [helm](<https://devfeed.tech/tags/helm.md>), [helm-charts](<https://devfeed.tech/tags/helm-charts.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [iam](<https://devfeed.tech/tags/iam.md>), [java](<https://devfeed.tech/tags/java.md>), [keycloak](<https://devfeed.tech/tags/keycloak.md>), [kubectl](<https://devfeed.tech/tags/kubectl.md>), [kubernetes](<https://devfeed.tech/tags/kubernetes.md>), [nginx](<https://devfeed.tech/tags/nginx.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [sealed-secrets](<https://devfeed.tech/tags/sealed-secrets.md>), [testing](<https://devfeed.tech/tags/testing.md>)

### AI overview

A practical tutorial for automating a local Keycloak deployment designed to resemble a production environment. It uses Certificate Manager, Sealed Secrets, PostgreSQL high availability, and provides both a Bash script and Helm charts for redeployment.

### Source excerpt

This article will be a practical one as I intend to showcase a fully automated setup of Keycloak for local testing. However, unlike so many examples out there, this article aims to deploy a production-level Keycloak deployment that uses a Certificate Manager, Sealed Secrets, and PostgreSQL HA (high-availability variant). The goal is to create a [...]

## Tutorial: Building a Highly Available PostgreSQL Cluster with etcd, Patroni, HAProxy, and keepalived

DevFeed: [Tutorial: Building a Highly Available PostgreSQL Cluster with etcd, Patroni, HAProxy, and keepalived](<https://devfeed.tech/articles/postgressql-clustering-the-hard-way-10634.md>)

Original publisher: [Read original article](<https://technotim.com/posts/postgresql-high-availability/>)

Author: Techno Tim

Published: 2024-12-07T13:00:00Z

Content type: tutorial

Language: en

Sources: [Techno Tim](<https://devfeed.tech/sources/techno-tim.md>)

Topics: [postgresql clusters](<https://devfeed.tech/topics/postgresql-clusters.md>), [PostgreSQL](<https://devfeed.tech/topics/postgresql.md>), [Tutorial](<https://devfeed.tech/topics/tutorial.md>), [Database](<https://devfeed.tech/topics/database.md>)

Tags: [clustering](<https://devfeed.tech/tags/clustering.md>), [ha](<https://devfeed.tech/tags/ha.md>), [patroni](<https://devfeed.tech/tags/patroni.md>), [postgres](<https://devfeed.tech/tags/postgres.md>), [postgresql](<https://devfeed.tech/tags/postgresql.md>), [production](<https://devfeed.tech/tags/production.md>), [self-hosted](<https://devfeed.tech/tags/self-hosted.md>), [tutorial](<https://devfeed.tech/tags/tutorial.md>)

### AI overview

A tutorial for building a highly available and fault-tolerant PostgreSQL cluster with etcd, Patroni, HAProxy, and keepalived. It covers PostgreSQL node setup, certificate-based communication, etcd configuration, and cluster verification.

### Source excerpt

Today is the day that you start running PostgresSQL in a cluster! In this tutorial we'll be setting up a production ready Postgres cluster that's highly available and fault tolerant using PostgreSQL, etcd, Patroni, HA Proxy, and keepalived. This resilient combination will ensure that you can always reach your database even when a node in the cluster goes down! 📺 Watch Video Nodes # ha pr...

## Limitations of High Availability in Stateful Firewall Clusters

DevFeed: [Limitations of High Availability in Stateful Firewall Clusters](<https://devfeed.tech/articles/stateful-firewall-cluster-high-availability-theater-10978.md>)

Original publisher: [Read original article](<https://blog.ipspace.net/2024/04/firewall-ha-theater/>)

Published: 2024-04-10T05:59:00Z

Content type: opinion

Language: en

Sources: [ipSpace.net blog](<https://devfeed.tech/sources/ipspace-net-blog.md>)

Topics: [Firewall](<https://devfeed.tech/topics/firewall.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [BGP](<https://devfeed.tech/topics/bgp.md>), [networking](<https://devfeed.tech/topics/networking.md>)

Tags: [bgp](<https://devfeed.tech/tags/bgp.md>), [failover](<https://devfeed.tech/tags/failover.md>), [firewall](<https://devfeed.tech/tags/firewall.md>), [ha](<https://devfeed.tech/tags/ha.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [stateful](<https://devfeed.tech/tags/stateful.md>)

### AI overview

The article examines single-control-plane high-availability designs for stateful firewall clusters. It explains how synchronized sessions and forwarding state can preserve traffic through failover, while BGP Graceful Restart can keep peers forwarding as the new primary rebuilds its control plane. It argues that the shared control-plane design retains potential single points of failure and downtime.

### Source excerpt

Dmitry Perets wrote an excellent description of how typical firewall cluster solutions implement control-plane high availability, in particular, the routing protocol Graceful Restart feature (slightly edited): Most of the HA clustering solutions for stateful firewalls that I know implement a single-brain model, where the entire cluster is seen by the outside network as a single node. The node that is currently primary runs the control plane (hence, I call it single-brain). Sessions and the forwarding plane are synchronized between the nodes. Read more ...

## Apache Airflow 2.0 is here!

DevFeed: [Apache Airflow 2.0 is here!](<https://devfeed.tech/articles/apache-airflow-2-0-is-here-32551.md>)

Original publisher: [Read original article](<https://airflow.apache.org/blog/airflow-two-point-oh-is-here/>)

Author: Apache Airflow

Published: 2020-12-17T00:00:00Z

Content type: release

Language: en

Sources: [Apache Airflow Blog](<https://devfeed.tech/sources/apache-airflow-blog.md>)

Topics: [airflow](<https://devfeed.tech/topics/airflow.md>), [API](<https://devfeed.tech/topics/api.md>), [REST API](<https://devfeed.tech/topics/rest-api.md>), [OpenAPI Specification](<https://devfeed.tech/topics/openapi.md>), [resiliency](<https://devfeed.tech/topics/resiliency.md>)

Tags: [airflow](<https://devfeed.tech/tags/airflow.md>), [announce](<https://devfeed.tech/tags/announce.md>), [apache-airflow](<https://devfeed.tech/tags/apache-airflow.md>), [api](<https://devfeed.tech/tags/api.md>), [api-documentation](<https://devfeed.tech/tags/api-documentation.md>), [ha](<https://devfeed.tech/tags/ha.md>), [improvements](<https://devfeed.tech/tags/improvements.md>), [openapi](<https://devfeed.tech/tags/openapi.md>), [release](<https://devfeed.tech/tags/release.md>), [rest-api](<https://devfeed.tech/tags/rest-api.md>), [scheduler](<https://devfeed.tech/tags/scheduler.md>)

### AI overview

Apache Airflow 2.0.0 has been released with the TaskFlow API for authoring DAGs, a fully supported REST API with an OpenAPI specification, scheduler performance improvements, support for multiple highly available schedulers, and Task Groups for organizing tasks.

### Source excerpt

I am proud to announce that Apache Airflow 2.0.0 has been released. The full changelog is about 3,000 lines long (already excluding everything backported to 1.10), so for now I'll simply share some of the major features in 2.0.0 compared to 1.10.14: A new way of writing dags: the TaskFlow API (AIP-31) (Known in 2.0.0alphas as Functional DAGs.) DAGs are now much much nicer to author especially when using PythonOperator. Dependencies are handled more clearly and XCom is nicer to use Read more here: TaskFlow API Tutorial TaskFlow API Documentation A quick teaser of what DAGs can now look like: from airflow.decorators import dag, task from airflow.utils.dates import days_ago @dag(default_args={'owner': 'airflow'}, schedule_interval=None, start_date=days_ago(2)) def tutorial_taskflow_api_etl(): @task def extract(): return {"1001": 301.27, "1002": 433.21, "1003": 502.22} @task def transform(order_data_dict: dict) -> dict: total_order_value = 0 for value in order_data_dict.values(): total_order_value += value return {"total_order_value": total_order_value} @task() def load(total_order_value: float): print("Total order value is: %.2f" % total_order_value) order_data = extract() order_summary = transform(order_data) load(order_summary["total_order_value"]) tutorial_etl_dag = tutorial_taskflow_api_etl() Fully specified REST API (AIP-32) We now have a fully supported, no-longer-experimental API with a comprehensive OpenAPI specification Read more here: REST API Documentation. Massive Scheduler performance improvements As part of AIP-15 (Scheduler HA+performance) and other work Kamil did, we significantly improved the performance of the Airflow Scheduler. It now starts tasks much, MUCH quicker. Over at Astronomer.io we've benchmarked the scheduler--it's fast (we had to triple check the numbers as we don't quite believe them at first!) Scheduler is now HA compatible (AIP-15) It's now possible and supported to run more than a single scheduler instance. This is super useful for bot

## Customer Invisible Maintenance of the CSC Object Storage Servers

DevFeed: [Customer Invisible Maintenance of the CSC Object Storage Servers](<https://devfeed.tech/articles/customer-invisible-maintenance-of-the-csc-object-storage-servers-19761.md>)

Original publisher: [Read original article](<https://cloud.blog.csc.fi/2018/03/customer-invisible-maintenance-of-csc.html>)

Author: Unknown (noreply@blogger.com)

Published: 2018-03-14T07:36:00Z

Content type: article

Language: en

Sources: [CSC - IT Center For Science - Cloud Team](<https://devfeed.tech/sources/csc-it-center-for-science-cloud-team.md>)

Topics: [BGP](<https://devfeed.tech/topics/bgp.md>), [networking](<https://devfeed.tech/topics/networking.md>), [Load Balancing](<https://devfeed.tech/topics/load-balancing.md>), [Availability](<https://devfeed.tech/topics/availability.md>), [round robin](<https://devfeed.tech/topics/round-robin.md>)

Tags: [bgp](<https://devfeed.tech/tags/bgp.md>), [ceph](<https://devfeed.tech/tags/ceph.md>), [cpouta](<https://devfeed.tech/tags/cpouta.md>), [dns](<https://devfeed.tech/tags/dns.md>), [exabgp](<https://devfeed.tech/tags/exabgp.md>), [failover](<https://devfeed.tech/tags/failover.md>), [ha](<https://devfeed.tech/tags/ha.md>), [high-availability](<https://devfeed.tech/tags/high-availability.md>), [load-balancing](<https://devfeed.tech/tags/load-balancing.md>), [maintenance](<https://devfeed.tech/tags/maintenance.md>), [network](<https://devfeed.tech/tags/network.md>), [networking](<https://devfeed.tech/tags/networking.md>), [object-storage](<https://devfeed.tech/tags/object-storage.md>), [radosgw](<https://devfeed.tech/tags/radosgw.md>), [round-robin](<https://devfeed.tech/tags/round-robin.md>), [routing](<https://devfeed.tech/tags/routing.md>), [server](<https://devfeed.tech/tags/server.md>)

### AI overview

The CSC Pouta Cloud Team describes using ExaBGP on object storage servers to combine round-robin DNS load balancing with BGP routing for high availability and failover during maintenance.

### Source excerpt

Hello! It's the CSC Pouta Cloud Team again! You may recognize us from other object storage films such as: http://pouta.blog.csc.fi/2018/02/admin-stories-implement-object-storage.html where we go through in excruciating detail how we configured CEPH RadosGW and why we configured it like we did http://pouta.blog.csc.fi/2018/01/objectively-speaking-in-cpouta.html where we announced object storage! In this episode we're going to talk a bit about how we implemented invisible(*) maintenance for our Object Storage customers. Configuration of ExaBGP with Object Storage CSC - IT Center for Science Ltd. has a close collaboration with the Finnish University and Research Network - FUNET, and because of that we are in a great position to do some fun network stuff. Actually, as long as your network has a BGP relationship with its internet provider you can also do what we have done. When we first launched Object Storage we just had a DNS entry pointing to two IP addresses. This gave us some load balancing and if we really wanted to we could take a node out of the DNS and do maintenance. But we wanted more! *ExaBGP enters the stage* In short we installed ExaBGP on our object storage linux servers, configured one dummy network interface per server and started to announce two IP addresses from each server. Then we pointed object.pouta.csc.fi DNS entry to these two IP addresses. The objective was to use round-robin DNS for load-balancing and BGP routing for High Availability. For failover this means that if one node goes down, the other IP is reachable on the other node and stuff will keep magically(*) working! There are some other BGP softwares out there, like BIRD or Quagga. Despite this, we never actually tried any other software since ExaBG has some great qualities such as: it came recommended by the network team at CSC who uses it for some services its low resource footprint and small number of software dependencies it is not a full routing suite - it is meant to be used for basi