검색 상세

Dynamic Erasure Coding Adjustment for IDC Topology-Aware Object Storage in Geo-Distributed Kubernetes Cluster

초록 (요약문)

Multi-IDC 환경에서 오브젝트 스토리지는 99.99% 이상의 높은 가용성과 서비스 안정성을 요구 받지만, 지리적 분산으로 인한 네트워크 지연 및 IDC 간 대역폭 소모와 같은 도전 과제를 안고 있다. 또한 현대 IT 환경에서 스토리지 비용 절감은 중요한 기술적 요구사항인데 Kubernetes는 동적 리소스 관리와 운영 확장성을 통해 이러한 요구를 지원한다. Cloud Native 기술이 Stateless 애플리케이션을 넘어 Stateful 애플리케이션을 지원하게 되었으나, Multi-IDC 환경에서 IDC Topology를 활용한 대규모 장애 대응 솔루션은 아직 부족하다. IDC 장애는 드물지만 발생 시 막대한 피해를 초래하며, 2022년 판교 SK C&C 데이터센터 화재 사건이 이를 입증한다. 기존 스토리지 시스템의 IDC 장애 대응 메커니즘은 주로 물리 장비에 맞춰져 있으며, Kubernetes 클러스터 환경에서의 동적 대응은 미흡하다. MinIO와 같은 오브젝트 스토리지 애플리케이션은 Kubernetes 친화적으로 개발되었지만, IDC Topology 개념이 없어 Kubernetes 클러스터 리소스 상태(IDC Topology 정보)를 직접 전달받는 메커니즘 개발이 필요하다. 이에 본 연구는 Multi-IDC Kubernetes 클러스터 환경에서 IDC 장애 발생 시 신규 Multipart Upload 및 Download를 안정적으로 제공하기 위한 동적 Erasure Coding 파라미터 설정 조정 메커니즘을 제안한다. 기존 연구들은 단일 IDC 환경에서의 Erasure Coding 최적화나 데이터 복제 전략에 초점을 맞추었고 Multi-IDC 환경, 런타임 동적 조정, 또는 Kubernetes 기반 운영을 종합적으로 다루지 못했다. 이 연구는 IDC Topology CRD를 활용한 Topology-Aware 접근법을 통해 오브젝트 스토리지의 IDC 장애 대응 메커니즘을 새롭게 구현하여 이러한 한계를 극복한다. 시스템은 IDC의 노드 가용성을 모니터링하여 장애 시 Erasure Coding 파라미터를 조정하고, 정상 IDC에만 데이터를 분산 저장한다. 실험 결과, 제안된 메커니즘은 Multi-IDC Kubernetes 환경에서 IDC 장애 시 시스템 안정성을 유지하며, Multipart Upload Latency를 최대 64.70%, Download Latency를 최대 47.80% 감소시켜 유의미한 성능 개선을 입증했다. 본 연구는 IDC 장애 복구 후의 파라미터 전환 및 대규모 클러스터(3,000대 노드) 확장성 검증 부족이라는 한계를 가진다. 그러나 이 메커니즘은 3개 IDC를 넘어 N개 IDC 환경으로 일반화될 수 있으며, IDC 내 장애 빈도를 고려한 Rack 단위의 Erasure Coding 파라미터 설정 및 데이터 배치 전략으로 확장될 수 있는 여지를 가진다. Keyword: Multi-IDC, Kubernetes, Object Storage, Erasure Coding, MinIO

more

초록 (요약문)

Object storage in a Multi-IDC environment demands high availability and service stability exceeding 99.99%, but it faces challenges such as network latency due to geographical distribution and increased bandwidth consumption from inter-IDC data synchronization. Furthermore, in the modern IT environment, storage cost reduction is a crucial technical requirement, and Kubernetes supports this demand through dynamic resource management and operational scalability. Although Cloud Native technology has expanded its scope beyond Stateless applications to support Stateful applications(such as storage and databases), large-scale disaster recovery solutions leveraging IDC Topology in Multi-IDC environments are still lacking. While IDC failures are rare, they cause immense damage when they occur. The 2022 Pangyo SK C&C data center fire incident attests to this. Existing storage system mechanisms for IDC failure response are primarily tailored for physical machine(PM) environments, and dynamic responses in Kubernetes cluster environments are inadequate. Although object storage applications like MinIO are developed to be Kubernetes-friendly, they lack an inherent IDC Topology concept, necessitating the development of a mechanism to directly receive Kubernetes cluster resource status(IDC Topology information). Therefore, this study proposes a dynamic Erasure Coding parameter adjustment mechanism for IDC Topology-Aware object storage in a Multi-IDC Kubernetes cluster environment, aiming to reliably provide new Multipart Upload and Download operations even when an IDC failure occurs. Existing studies primarily focused on Erasure Coding optimization or data replication strategies in single-IDC environments and did not comprehensively address Multi-IDC environments, runtime dynamic adjustment, or Kubernetes-based operations. This study overcomes these limitations by newly implementing an IDC failure response mechanism for object storage through a Topology-Aware approach utilizing IDC Topology CRD. The system monitors IDC node availability, adjusts Erasure Coding parameters upon failure, and distributes data only to healthy IDCs. Experimental results demonstrated that the proposed mechanism maintains system stability during IDC failures in a Multi-IDC Kubernetes environment, and it proved significant performance improvements by reducing Multipart Upload Latency by up to 64.70% and Download Latency by up to 47.80%. This study has limitations, including the lack of parameter transition after IDC failure recovery and insufficient scalability validation for large-scale clusters(3,000 nodes). However, this mechanism can be generalized to N-IDC environments beyond three IDCs, and it has the potential to be extended into Erasure Coding parameter configuration and data placement strategies at the rack level, considering the frequency of failures within IDCs. Keyword: Multi-IDC, Kubernetes, Object Storage, Erasure Coding, MinIO

more

목차

Abstract 3
1. Introduction 5
2. Background 8
2.1 Multi-IDC Kubernetes Cluster 8
2.2 Erasure Coding 8
2.3 Object Storage and MinIO 9
3. System Design 12
3.1 System Architecture 12
3.2 Dynamic Erasure Coding Adjustment Workflow 17
4. Implementation 19
4.1 Existing MinIO Behavior and Kubernetes Limitations 19
4.2 Implementation of IDC Topology-Awareness 24
4.3 Dynamic Erasure Coding Parameter Adjustment Mechanism 27
5. Evaluation 29
5.1 Experimental Setup 29
5.2 Experimental Scenario 30
5.2.1 Multipart Upload Scenario 30
5.2.2 Download Scenario 32
5.3 Evaluation of Multipart Upload Performance 34
5.4 Evaluation of Download Performance 42
6. Conclusion 44
References 46

more