Cloud Native로의 전환

zzin·2025년 2월 16일

SKALA

목록 보기
3/12
개요
- **클라우드 컴퓨팅 발전**
    - 물리 서버 → VM → Cloud (Public, Private, Hybrid)
    - 클라우드 컴퓨팅 서비스 종류 (IaaS, PaaS, SaaS)
    - 클라우드 네이티브 전환 성숙도 모델

클라우드 컴퓨팅 개요

클라우드광대한 네트워크를 통해 접근할 수 있는 가상화된 서버와 데이터베이스를 제공하는 IT 환경이다. 즉, 인터넷을 통해 필요한 컴퓨팅 자원을 빌려 쓰는 개념이다.

클라우드 컴퓨팅은 단순한 저장소 개념을 넘어 클라우드에서 직접 작업을 수행하는 방식으로 발전했다. 이로 인해 '클라우드 컴퓨팅'이라는 용어가 더 적합하게 사용된다.


1. 클라우드 컴퓨팅의 발전 과정

초기에는 클라이언트-서버 모델이 일반적이었다. 클라이언트(모니터, 앱, 데스크톱)에서 요청을 보내면 서버에서 처리하는 방식이었다. 하지만 서버를 직접 구축하고 운영하는 데 많은 비용과 시간이 소요되었다.

이후 가상화 기술이 도입되면서, 하나의 물리 서버 위에 하이퍼바이저(Hypervisor)를 올려 자원을 할당하며 여러 개의 가상 머신(VM)을 생성할 수 있게 되었다. 이를 통해 서버 자원의 효율적인 활용이 가능해졌다.

1.1) 가상화에서 클라우드로

  • 클라우드 등장: 물리적 서버를 직접 소유하지 않고 필요한 만큼 빌려 사용하는 개념이 등장함.
  • 클라우드 유형:
    • Public Cloud: 일반적인 클라우드 서비스, 사용한 만큼 비용 지불
    • Private Cloud: 보안과 성능을 고려하여 특정 기업이나 조직 내부에서 운영
    • Hybrid Cloud: Public과 Private Cloud를 혼합하여 사용

2. 클라우드 컴퓨팅 서비스 모델

서비스 모델설명예시
IaaS (Infrastructure as a Service)서버, 스토리지 같은 기본 인프라만 제공AWS EC2, Google Compute Engine
PaaS (Platform as a Service)개발자가 애플리케이션을 쉽게 만들 수 있도록 환경 제공AWS Elastic Beanstalk, Google App Engine
SaaS (Software as a Service)완성된 소프트웨어를 사용자에게 제공Gmail, Netflix, ChatGPT

2.1) 클라우드 도입 유형

기업에서는 단일 클라우드만을 사용하지 않고 Public, Private, On-Premise 환경을 적절히 혼합하여 Multi Cloud 또는 Hybrid Cloud 형태로 운영한다.

  • Multi Cloud: 특정 클라우드 기업 의존도를 낮추기 위해 여러 클라우드를 병행 사용
  • Hybrid Cloud: 보안 및 성능을 고려하여 퍼블릭과 프라이빗 클라우드를 혼합 사용

클라우드 도입의 주요 동기는 비용 절감, 유연성 및 확장성, 운영 자동화, 빠른 서비스 출시이다.

(비용 절감은 초기 투자 비용을 줄일 수 있어도 현실적으로는 자원을 늘려갈수록 많이 비싸지긴 함…)

B2C는 퍼블릭을 쓰기도 하지만, 대부분 기업들은 하이브리드로 쓴다 - 모든 작업이 퍼블릭 / 프라이빗을 빠르게 호환하고 적재적소에 필요한 만큼 필요한 곳에 작업을 배포하고 실행시켜 주는 자동화 방식은 없을까? ⇒ Cloud Native


3. 클라우드 네이티브 전환

Cloud Native는 애플리케이션을 구축하고 실행하는 방식으로, 클라우드 환경에서 탄력성과 확장성을 최대한 활용하도록 설계된다.

3.1 ) 클라우드 아키텍처의 주요 속성

  1. 확장성 (Scalability): 요청에 따라 IT 인프라 자원 및 서비스를 쉽게 확장하거나 축소할 수 있음.

  2. 탄력성 (Elasticity): 수요에 따라 자동으로 리소스를 확장하거나 축소하여 트래픽 변화에 대응.

  3. 내결함성 (Fault Tolerance): 장애를 분리하여 무중단 서비스 제공 가능.

  4. 민첩성 (Agility): 시장과 기술 변화에 신속하게 대응할 수 있는 IT 인프라 및 프로세스 제공.

    → 클라우드 네이티브 컴퓨팅에서 기본적으로 해주는 중요한 작업 중 하나가 바로 수요에 따라 신속하게 필요한 자원을 제공, 회수, 전환할 수 있는 능력을 자동화 해주는 것이다.

3.2 ) 클라우드 네이티브 전환 성숙도 모델

기업의 모든 시스템을 한 번에 클라우드 네이티브로 전환하기는 어렵다. 기업이 클라우드 환경에서 최적의 비즈니스 환경을 만들기 위한 기업의 비즈니스와 기술 프로세스를 분석하여 클라우드로 전환을 위한 계획을 세워야 한다. 클라우드 아키텍처의 속성을 바탕으로 클라우드 네이티브로 전환하기 위해 어떤 과정이 있는지 살펴보자.

단계전환 모델주요 특징기술 적용 방식속성
0Cloud Ready (Lift-and-Shift)기존 시스템을 가상화된 환경으로 이전인프라 코드화 (Infra as Code) 적용인프라 확장
1Cloud Friendly (Refactoring)애플리케이션을 무상태 구조로 변경하여 확장성 확보CICD 자동화 및 수평적 확장 지원확장성, 탄력성 확보
2Cloud Resilient (Refactoring)장애 대응을 위한 자동화 설계장애 복구, 모니터링 내장, 서비스 격리내결함성 확보
3Cloud Native (Re-architecturing)마이크로서비스 기반 설계로 유연성 극대화API 우선 설계 및 MSA 적용민첩성, 유연성 확보

Cloud Native 전환의 핵심 목표는 탄력성과 자동화를 활용하여 빠른 배포와 운영을 가능하게 하는 것이다.


참고 자료

0개의 댓글