728x90
반응형

고가용성 21

kpatch

개요kpatch는 Linux 시스템에서 커널을 재부팅하지 않고도 실시간으로 보안 패치나 버그 수정 코드를 적용할 수 있게 해주는 Red Hat 기반의 오픈소스 라이브 커널 패치 기술입니다. 서비스 중단 없이 커널 함수 수준에서 코드를 대체할 수 있어 고가용성 환경에서 매우 유용합니다.1. 개념 및 정의 항목 설명 정의실행 중인 커널에 대해 런타임 중 함수 단위 패치를 적용하는 동적 패치 기술목적재부팅 없이 커널 취약점/버그 수정필요성서비스 중단 없는 시스템 운영 및 보안성 유지kpatch는 모듈 형태의 패치 코드를 커널에 삽입하고, 함수 레벨에서 기존 코드를 교체함2. 특징특징설명비교재부팅 불필요실행 중 패치 적용기존 커널 업데이트는 reboot 필요함수 단위 패치변경된 함수만 동적으로 교체kexec는..

Topic 2026.02.02

CRUSH(Controlled Replication Under Scalable Hashing)

개요CRUSH는 Ceph 분산 파일 시스템에서 사용하는 데이터 배치 알고리즘으로, 데이터의 위치를 중앙 메타데이터 없이 결정하는 탈중앙화된 방식의 해시 기반 알고리즘입니다. 확장성과 안정성, 데이터 균형 유지가 핵심이며, OSD(Object Storage Daemon) 간에 데이터를 자동으로 분산 배치합니다.1. 개념 및 정의 항목 설명 정의분산 환경에서 데이터를 해시 기반으로 배치하고 복제하는 알고리즘목적데이터 균형, 확장성, 장애 복구 최적화필요성중앙 집중식 메타데이터로 인한 병목 제거, 자동 분산 배치 필요노드 추가/제거 시에도 일관된 데이터 분포와 최소한의 재배치 보장2. 특징특징설명비교메타데이터 비의존중앙 서버 없이 데이터 위치 계산HDFS는 네임노드 필요가중치 기반 분산디바이스 용량 비례로 ..

Topic 2026.01.27

Viewstamped Replication (VSR)

개요Viewstamped Replication(VSR)은 분산 시스템에서 고가용성과 데이터 일관성을 보장하기 위한 복제 프로토콜로, 장애 허용(fault-tolerant) 환경에서의 리더 기반 합의를 통해 시스템 무결성을 유지합니다. Paxos 및 Raft와 유사한 계열의 프로토콜로, 주로 로그 복제, 상태머신 복제(State Machine Replication)에 사용되며, 복잡한 장애 상황에서도 데이터 정합성을 보장합니다.1. 개념 및 정의 항목 내용 비고 정의장애 상황에서도 데이터 일관성을 유지하기 위한 리더 기반 복제 합의 프로토콜MIT, 1988년 최초 발표목적서버 장애 발생 시에도 일관된 요청 처리 보장Primary-backup 모델 기반필요성클러스터 환경에서 복제본 간 데이터 동기화 및 ..

Topic 2025.12.29

GlusterFS

개요GlusterFS는 오픈소스 기반의 분산 파일 시스템으로, 여러 서버의 스토리지 리소스를 하나의 통합 볼륨으로 구성하여 대규모 데이터 저장 및 관리가 가능한 시스템입니다. Red Hat에서 주도적으로 관리하며, 클라우드, 컨테이너, 빅데이터 환경 등에서 고가용성(HA)과 확장성을 제공하여 대규모 스토리지 인프라 구축에 널리 활용됩니다.1 항목 내용 비고 정의여러 서버의 디스크를 네트워크를 통해 하나의 파일 시스템으로 통합하는 분산 스토리지 솔루션POSIX 호환 파일시스템목적확장성, 고가용성, 유연한 스토리지 관리 제공Scale-Out 구조필요성데이터 폭증 및 클라우드 네이티브 인프라 대응단일 장애점(SPOF) 제거2. 특징항목내용비고확장성노드를 추가함으로써 용량과 성능을 수평 확장Scale-Out..

Topic 2025.12.15

ESI-LAG(Ethernet Segment Identifier Link Aggregation Group)

개요ESI-LAG(Ethernet Segment Identifier - Link Aggregation Group)는 EVPN(Ethernet VPN) 환경에서 구현되는 멀티홈링 기술로, 기존의 MLAG(Multi-Chassis Link Aggregation Group)를 대체하는 차세대 구조이다. EVPN의 제어 평면을 기반으로 여러 장비 간 링크를 논리적으로 하나의 LAG로 묶어, 루프 없는 L2 연결과 고가용성(High Availability)을 동시에 달성한다.1. 개념 및 정의ESI-LAG는 하나의 CE(Customer Edge)가 두 개 이상의 PE(Provider Edge)에 연결될 때, 동일한 **Ethernet Segment Identifier(ESI)**를 사용하여 해당 링크를 하나의 L..

Topic 2025.12.02

EVPN Multihoming

개요EVPN Multihoming(Ethernet VPN Multihoming)은 데이터센터 및 서비스 프로바이더 네트워크에서 다중 링크(링크 중복) 연결을 제공하는 기술로, **고가용성(High Availability)**과 **루프 없는 이더넷 포워딩(Loop-free Forwarding)**을 동시에 달성한다. 이는 전통적인 MLAG(Multi-Chassis Link Aggregation) 구조를 대체하며, EVPN(BGP 기반) 제어 평면을 통해 분산 환경에서도 안정적인 트래픽 분산을 구현한다.1. 개념 및 정의EVPN Multihoming은 **BGP EVPN(Control Plane)**을 이용하여 다수의 PE(Provider Edge) 장비가 동일한 CE(Customer Edge) 장비와 연..

Topic 2025.12.02

ZAB(Zookeeper Atomic Broadcast)

개요ZAB(Zookeeper Atomic Broadcast)는 Apache Zookeeper에서 분산 시스템의 데이터 일관성과 합의를 보장하기 위해 설계된 원자적 브로드캐스트(Atomic Broadcast) 프로토콜이다. Paxos와 유사한 구조를 가지지만, Zookeeper의 리더-팔로워(Leader-Follower) 아키텍처에 특화되어 고가용성과 일관성(consistency)을 모두 달성한다.ZAB는 데이터 복제, 리더 선출, 장애 복구 과정에서 핵심적인 역할을 하며, 모든 노드가 동일한 순서로 동일한 상태 변경(Log)을 적용하도록 보장한다.1. 개념 및 정의ZAB는 ‘원자적 브로드캐스트(Atomic Broadcast)’를 기반으로, 분산된 노드 간에 동일한 순서의 상태 업데이트를 보장하는 프로토콜..

Topic 2025.11.28

Vitess

개요Vitess는 MySQL을 기반으로 한 클라우드 네이티브 데이터베이스 클러스터링 시스템으로, 수평적 확장성과 분산 쿼리 처리를 지원합니다. YouTube에서 처음 개발되어 현재는 CNCF(Cloud Native Computing Foundation) 프로젝트로 운영되며, 대규모 트래픽을 처리하는 글로벌 애플리케이션에서 널리 사용됩니다.1. 개념 및 정의 항목 설명 비고 정의MySQL을 수평적으로 확장할 수 있는 클라우드 네이티브 데이터베이스 클러스터링 시스템CNCF Incubating Project목적대규모 데이터와 트래픽을 효율적으로 처리글로벌 서비스 환경 최적화필요성단일 MySQL 인스턴스의 확장 한계 극복대규모 분산 환경 지원글로벌 트래픽을 처리할 수 있는 DB 솔루션입니다.2. 특징특징설명..

Topic 2025.10.17

YugabyteDB

개요YugabyteDB는 PostgreSQL 호환성을 제공하는 오픈소스 분산 SQL 데이터베이스로, 클라우드 네이티브 환경에 최적화되어 높은 확장성, 탄력성, 글로벌 분산 운영을 지원합니다. 전통적인 RDBMS의 SQL 기능과 NoSQL의 확장성을 결합하여 차세대 애플리케이션에 적합한 데이터베이스로 주목받고 있습니다.1. 개념 및 정의 항목 설명 비고 정의PostgreSQL 호환 오픈소스 분산 SQL 데이터베이스Apache 2.0 라이선스목적고가용성과 글로벌 서비스 환경에 적합한 DB 제공클라우드 네이티브 아키텍처필요성기존 RDBMS의 확장성 한계 극복 및 글로벌 데이터 일관성 확보PostgreSQL과 API 호환SQL 기능과 글로벌 분산 확장성을 동시에 제공합니다.2. 특징특징설명비교PostgreS..

Topic 2025.10.16

CockroachDB

개요CockroachDB는 클라우드 환경에 최적화된 분산형 SQL 데이터베이스로, 구글 스패너(Google Spanner)에서 영감을 받아 개발되었습니다. 고가용성, 수평 확장성, 강력한 일관성을 제공하며, 클라우드 네이티브 애플리케이션을 위한 차세대 데이터베이스로 주목받고 있습니다.1. 개념 및 정의 항목 설명 비고 정의클라우드 네이티브 환경에서 운영 가능한 분산 SQL 데이터베이스오픈소스 기반목적글로벌 서비스 환경에서 무중단·무정지 데이터베이스 제공클라우드 최적화필요성전통적 RDBMS의 한계(확장성, 복원력) 극복PostgreSQL 호환성 지원글로벌 분산 환경에 적합한 SQL 데이터베이스입니다.2. 특징특징설명비교수평 확장성노드를 추가하여 성능과 용량 확장전통적 RDBMS는 수직 확장 중심강력한 ..

Topic 2025.10.16

BFD (Bidirectional Forwarding Detection)

개요BFD(Bidirectional Forwarding Detection)는 두 네트워크 장비 간의 연결 상태를 빠르게 감지하여 링크 장애에 신속하게 대응할 수 있도록 설계된 경량의 네트워크 프로토콜입니다. 특히 라우터나 스위치 간의 고가용성 환경에서 빠른 장애 탐지를 위한 핵심 메커니즘으로 활용됩니다.1. 개념 및 정의 항목 설명 비고 정의네트워크 링크의 이중(양방향) 포워딩 상태를 검출하는 프로토콜RFC 5880에 정의됨목적전송 경로의 빠른 장애 감지를 통해 빠른 라우팅 수렴 제공수 밀리초 수준의 감지 시간필요성기존 프로토콜의 느린 장애 감지 한계를 극복OSPF, BGP와 연동 시 유용빠른 장애 탐지를 통해 네트워크 안정성과 가용성을 확보합니다.2. 특징특징설명비교경량성헤더 구조가 단순하고 자원 ..

Topic 2025.10.14

CRIU (Checkpoint/Restore in Userspace)

개요CRIU(Checkpoint/Restore in Userspace)는 리눅스 환경에서 실행 중인 프로세스의 메모리, 파일 핸들, 네트워크 연결 상태를 포함한 전체 실행 컨텍스트를 저장(checkpoint)하고, 이후 이를 동일하거나 다른 환경에서 복원(restore)할 수 있는 기술입니다. 이는 컨테이너 라이브 마이그레이션, 디버깅, 고가용성(HA) 등의 분야에서 핵심적으로 활용됩니다.1. 개념 및 정의 항목 설명 정의CRIU는 실행 중인 프로세스의 상태를 저장하고, 동일/다른 환경에서 복원하는 리눅스 기반 유저스페이스 도구입니다.목적프로세스 중단 없는 마이그레이션 및 복원 제공필요성컨테이너와 VM 환경에서 무중단 운영 및 고가용성 확보리눅스 컨테이너 기술 발전의 핵심 요소 중 하나입니다.2. 특징..

Topic 2025.10.03

Hot-Patch Rolling Upgrade

개요Hot-Patch Rolling Upgrade는 시스템 또는 서비스 운영 중 무중단으로 패치나 기능 개선을 적용하는 배포 전략입니다. 특히 고가용성이 요구되는 시스템에서 서비스 중단 없이 변경 사항을 적용하는 데 효과적이며, 운영 리스크를 최소화하고 고객 경험을 극대화할 수 있습니다.1. 개념 및 정의Hot-Patch는 애플리케이션 또는 시스템을 재시작하지 않고 실행 중인 상태에서 코드나 설정을 실시간으로 변경하는 기술입니다. Rolling Upgrade는 전체 인프라를 한 번에 교체하지 않고, 일정 단위로 나누어 점진적으로 배포하는 방식입니다.Hot-Patching: 리스타트 없이 수정사항을 적용해 중단 최소화Rolling Upgrade: 점진적 배포로 안정성과 모니터링 확보조합 효과: 고가용성 +..

Topic 2025.07.02

Blast Radius

개요Blast Radius(블라스트 레이디우스)는 시스템에서 장애 또는 변경이 발생했을 때 영향을 받는 범위를 시각적으로 정의한 개념입니다. 주로 클라우드 인프라, 마이크로서비스 아키텍처, 보안 사고 분석, 변화 관리(Change Management) 등에서 활용되며, 안정성 중심의 시스템 설계와 운영 전략을 수립하는 데 핵심 기준으로 작용합니다.1. 개념 및 정의Blast Radius는 한 요소의 실패 또는 변경이 얼마나 많은 다른 구성요소나 사용자에게 영향을 미치는지를 나타내는 리스크 범위의 시각화입니다.주요 목적시스템 설계 시 장애 전파 최소화변경 배포 시 리스크 범위 사전 예측모니터링과 롤백 계획의 기준 수립2. 특징 항목 설명 효과 영향 기반 분류단일 포인트 실패 시 전파 범위 시각화고가용성..

Topic 2025.06.28

Paxos Consensus

개요Paxos Consensus는 분산 시스템 환경에서 여러 노드가 하나의 값에 대해 합의를 이루는 과정을 정의하는 알고리즘입니다. 네트워크 지연, 메시지 손실, 노드 장애 등의 비동기 환경에서도 일관성과 신뢰성을 확보하기 위해 설계되었으며, 많은 현대 분산 시스템의 기반이 되는 이론적 표준으로 자리잡고 있습니다.1. 개념 및 정의 항목 설명 비고 정의분산 환경에서 하나의 정합된 값을 합의하기 위한 프로토콜비동기 네트워크 환경 가정목적하나의 정답에 대해 여러 노드가 동일한 결정을 내리도록 보장리더 선출, 상태 동기화 등 활용주요 조건Safety(안전성), Liveness(생존성)FLP 이론의 실용적 해석Paxos는 “무결성을 해치지 않으면서 시스템이 합의에 도달할 수 있는 최소 조건”을 제공함2. 특..

Topic 2025.06.08

Gossip Protocol

개요Gossip Protocol은 분산 시스템에서 노드 간 상태 정보를 주기적으로 주고받으며 전파하는 확산형(감염형) 통신 프로토콜입니다. 감염병처럼 일부 노드에서 시작된 정보가 전체 네트워크로 빠르게 퍼지는 원리를 기반으로 하며, 확장성과 신뢰성을 모두 만족시킬 수 있어 대규모 분산 환경에서 널리 사용됩니다.1. 개념 및 정의 항목 설명 비고 정의노드가 이웃 노드와 주기적으로 정보를 교환하면서 전체 시스템에 상태를 확산시키는 통신 방식Epidemic Protocol로도 불림목적전체 노드의 상태 동기화, 장애 감지, 구성 정보 전달 등분산 환경에서 필수적용 대상P2P, 분산 DB, 컨테이너 오케스트레이션 등Cassandra, Consul 등 사용“정확도보다 확산속도” — 고가용 시스템의 빠른 수렴을 ..

Topic 2025.06.07

Blue-Green Deployment

개요Blue-Green Deployment는 애플리케이션을 무중단으로 배포하고, 신속하게 롤백할 수 있도록 돕는 배포 전략입니다. 기존 버전(Blue)과 신규 버전(Green)을 동시에 운영하면서, 실제 트래픽을 전환하는 방식으로 서비스 중단 없이 업데이트가 가능합니다. 주로 DevOps, CI/CD 파이프라인, 클라우드 네이티브 환경에서 사용되며, 품질 보장과 릴리스 속도를 동시에 만족시키는 강력한 전략으로 주목받고 있습니다.1. 개념 및 정의 항목 내용 정의Blue-Green Deployment는 기존 애플리케이션(Blue)과 신규 버전(Green)을 나란히 배포하고, 트래픽을 전환하여 무중단으로 릴리스하는 방식입니다.목적시스템 가용성과 안정성을 보장하면서 배포 리스크를 최소화하는 것필요성배포 실패..

Topic 2025.06.06

Multipath QUIC (MP-QUIC)

개요Multipath QUIC(MP-QUIC)는 기존 QUIC(Quick UDP Internet Connections) 프로토콜을 확장한 형태로, 하나의 연결에서 여러 네트워크 경로(path)를 동시에 사용할 수 있도록 지원하는 전송 계층 기술입니다. MP-QUIC는 모바일 환경, 고속 네트워크, IoT 등에 적합한 고신뢰·고성능 통신을 가능하게 하며, 기존 TCP나 단일 경로 QUIC의 한계를 극복합니다. 본 글에서는 MP-QUIC의 개념, 동작 방식, 기술 구조, 장점과 실제 적용 사례를 포함한 통찰을 제공합니다.1. 개념 및 정의 항목 설명 정의MP-QUIC는 QUIC 프로토콜 위에서 여러 네트워크 경로(예: Wi-Fi + LTE)를 동시에 활용할 수 있도록 하는 IETF 표준화 확장 프로토콜입니..

Topic 2025.05.13

Scale Out vs Scale Up

개요IT 시스템의 확장은 비즈니스 성장과 트래픽 증가에 대응하기 위한 핵심 과제입니다. 이때 시스템 확장을 위한 전략으로 크게 'Scale Up(스케일 업)'과 'Scale Out(스케일 아웃)'이 존재합니다. 각각은 하드웨어 성능 향상을 통한 수직 확장과 서버 수를 늘리는 수평 확장 방식으로, 목적, 비용, 기술 환경에 따라 적절히 선택되어야 합니다. 클라우드 환경과 고성능 컴퓨팅 시대에 있어 필수적으로 이해해야 할 개념입니다.1. 개념 및 정의구분정의핵심 개념Scale Up기존 서버의 CPU, RAM, 저장장치 등 성능을 향상시키는 수직 확장 방식더 강력한 하드웨어로 교체하거나 업그레이드Scale Out서버를 추가하여 부하를 분산시키는 수평 확장 방식여러 대의 서버를 병렬로 구성2. 구조 비교항목Sc..

Topic 2025.04.22

Auto Scaling(자동 스케일링)

개요Auto Scaling(자동 스케일링)은 애플리케이션의 부하에 따라 컴퓨팅 자원(서버 인스턴스, 컨테이너 등)을 자동으로 확장하거나 축소하는 기능을 말합니다. 클라우드 컴퓨팅 환경에서 핵심적인 인프라 관리 기술로, 사용량 변화에 따라 시스템의 성능을 유지하면서도 비용을 최적화하는 데 매우 효과적입니다.1. 개념 및 정의Auto Scaling은 설정된 조건(트래픽, CPU 사용률, 네트워크 지연 등)에 따라 인프라 리소스를 자동으로 늘리거나 줄여주는 기능입니다. 클라우드 서비스 제공업체(AWS, Azure, GCP 등)는 이를 기본 서비스로 제공하며, 애플리케이션 가용성과 성능을 보장하는 데 필수적인 역할을 수행합니다.핵심 목적:수요 변화에 따른 서비스 안정성 유지유휴 리소스 제거를 통한 비용 효율성 ..

Topic 2025.04.05

서버 이중화

개요서버 이중화(Server Redundancy)는 시스템의 가용성을 극대화하고 장애 발생 시 무중단 서비스를 제공하기 위해 필수적인 기술입니다. 서버 이중화 방식에는 하드웨어 기반(예: L4 스위치)과 소프트웨어 기반(예: 로드 밸런서 및 클러스터링) 접근 방식이 있으며, 각각의 방식은 장단점이 존재합니다. 본 글에서는 서버 이중화의 개념과 L4 스위치 기반 및 소프트웨어 기반 이중화 방식의 특징, 비교 및 활용 사례를 살펴봅니다.1. 서버 이중화란?서버 이중화는 하나의 서버가 장애가 발생하더라도 다른 서버가 동일한 서비스를 제공할 수 있도록 설계하는 기술입니다. 이를 통해 서비스의 연속성을 보장하고 다운타임을 최소화할 수 있습니다.1.1 서버 이중화의 필요성고가용성(High Availability, ..

Topic 2025.03.12
728x90
반응형