[카테고리:] Cloud & Infra

  • RAID Chunk Size and Workload Strategies

    When discussing storage performance, many focus only on RAID levels (0, 1, 5, 6, 10, etc.). However, one of the most overlooked yet critical factors that directly impacts real-world RAID performance is the RAID chunk size. Chunk size defines the smallest unit of data distributed across disks, and this value determines both the degree of…

  • RAID Chunk Size와 워크로드별 전략

    스토리지 성능을 논할 때 많은 사람들이 RAID 레벨(0, 1, 5, 6, 10 등)만 생각한다. 하지만 실제로 RAID의 체감 성능을 크게 좌우하는 요소는 RAID chunk size다. chunk size는 데이터를 디스크에 분산 저장할 때 잘라내는 최소 단위로, 이 값에 따라 디스크의 참여율과 I/O 패턴이 달라진다. 결국 chunk size가 RAID의 읽기·쓰기 성능을 사실상 결정한다 해도 과언이 아니다. 읽기,…

  • An Operating System Is Essentially an L3 Device

    Seeing an operating system only as an application runtime is a limited perspective. From a networking standpoint, Linux and Unix function as software-based L3(Layer 3) routers. The kernel receives packets, consults the routing table, determines the next hop, and forwards them through the right interface. At its core, this is no different from what a…

  • OS도 결국 하나의 L3 장비다

    운영체제를 단순히 애플리케이션 실행 환경으로만 이해하는 것은 반쪽짜리 시각이다. Linux와 Unix는 네트워크 관점에서 보면 하나의 소프트웨어 기반 L3 라우터다. 커널은 패킷을 받아 라우팅 테이블을 조회하고, 다음 홉을 결정해 인터페이스로 내보낸다. 구조는 전용 라우터와 본질적으로 다르지 않다. 라우팅 테이블과 RIB 라우터가 유지하는 RIB(Routing Information Base)는 목적지 네트워크와 다음 홉, 인터페이스 정보를 저장한다. Linux의 라우팅 테이블이 정확히…

  • Preventing Split Brain: MySQL HA with Pacemaker and Corosync

    1. Introduction In the previous post, we looked at the concept of Split Brain and introduced MySQL HA as a representative example.In this article, we will expand on that discussion and, based on an actual production environment, explain how to prevent Split Brain using a Pacemaker + Corosync + MySQL Dual Master Replication setup. This…

  • Split Brain 방지: Pacemaker + Corosync 기반 MySQL HA 운영 가이드

    1. 서론 이전 글에서 Split Brain 개념과, 그 대표적인 예시로 MySQL HA 환경을 간단히 다뤘다.이번 글에서는 그 내용을 조금 더 확장하여, 실제 운영했던 환경을 기반으로 Pacemaker + Corosync + MySQL Dual Master Replication 구조에서 Split Brain을 방지하는 방법을 구체적으로 살펴본다. 다만 이 글은 예전에 운영했던 환경을 기억을 되살려 정리한 가이드이므로, 최신 환경에 그대로 적용하기보다는 자기…

  • Split Brain: Mitigation Strategies with a MySQL HA Example (using Pacemaker)

    1. What Is Split Brain? Split brain is an abnormal state in a cluster where two or more nodes simultaneously believe they are the primary (master).It often occurs after a short network partition when health checks misfire, allowing both sides to become active.When the network reconnects, the result is data conflicts, corruption, and inconsistency.This is…

  • Split Brain : MySQL HA 예시로 보는 대응 전략 (using pacemaker)

    1. Split Brain 이란 스플릿 브레인은 클러스터 환경에서 둘 이상의 노드가 동시에 자신을 마스터(Primary)라고 판단하는 비정상 상태다.짧은 네트워크 단절 후 헬스 체크 오판으로 양쪽이 동시에 활성화되고, 네트워크가 복구되는 순간 데이터 충돌, 손실, 불일치가 발생한다.데이터베이스, 스토리지 등 무결성이 중요한 서비스에서 특히 치명적이다. 2. 전형적 예시 대표적인 사례로 Pacemaker + Corosync + MySQL Dual Master Replication 구성을…

  • Automating AWS WAF IP Blocklists with Lambda (S3 + EventBridge, CloudFront WAFv2)

    Back when I led an infra/security team at a finance-related company, we needed to automatically apply the security provider’s periodic IP block list to AWS WAF. I’m documenting a slightly cleaned-up version of that setup here. Goals Why do we need two Lambda functions? The source format varies by provider/environment: If formats change over time…

  • AWS Lambda로 WAF IP 차단 리스트 자동화 (S3+EventBridge, CloudFront WAFv2)

    예전 금융권 관련 회사에서 인프라/보안 팀장을 맡았을 때, 관제사에서 주기적으로 주는 차단 IP 목록을 AWS WAF에 자동 반영해야 할 필요가 있었다. 그때 구성했던 방식을 약간 가공하여 정리해 둔다. 목표 왜 “두 가지” Lambda가 필요한가? 관제에서 주는 원본이 환경마다 다르다. 현장에서 관제 포맷이 바뀌거나 공급자가 여러 곳이면, 두 케이스를 각각 지원하면 운영이 편하다. (같은 Lambda 안에서…