확장성

3. 확장성

  • 클라우드서비스의 확장성(Scalability)은 이용자의 요청에 따라 자원의 양을 할당할 수 있는 능력을 말한다.
  • 클라우드서비스 제공자는 서비스의 확장성을 보장하기 위해 적절한 기술 및 시스템을 유지하여야 한다. 이를 위해, 필요한 정책, 인적ㆍ물적 자원 등을 관리할 수 있다.

3.1 확장성

  • 클라우드서비스의 확장성은 이용자가 증가하거나 서비스 기능이 추가되어 확장이 필요한 경우, 클라우드서비스가 정상적으로 유지될 수 있는 시스템 구조 혹은 확장요청 처리시간을 말한다.
  • 확장성은 부하로 인하여 서비스를 제공하지 못하는 경우를 대비하여 리소스를 확장함으로써 서비스 가용성을 높이는데 필요하다.
    • 서비스 처리와 관련된 자원의 양이 증가할수록 서비스 처리 능력도 비례하여 증가할 수 있어야 한다.
    • 클라우드서비스 제공자는 제시된 시간 내에 서비스 확장이 완료될 수 있도록 지원해야 한다.
  • 클라우드서비스는 사용되는 자원들을 유동적으로 관리하여 서비스 제공자 및 이용자에게 자원 의 활용도를 높이는 이점을 제공한다.
  • 확장성은 다음과 같은 점검항목을 통해 확인할 수 있다.
품질·성능 기준 점검요소 점검항목 점검방법 참고 페이지
관리체계
점검
품질성능
점검
확장성 확장성 확장성 지원능력 확장성 보장을 위한 관리체계 및 운영정책 42
확장기능 서비스 인스턴스 수평 확장(Scvale-Out) 기능 89
서비스 인스턴스 수직 확장(Scvale-Up) 기능 92
애플리케이션 서비스 인프라 확장 기능 94
애플리케이션 서비스 기능 확장 96
확장 요청 처리시간 확장 요청 처리시간 97

3.1.1 확장성 지원능력 점검

  • 클라우드서비스 이용자가 필요한 경우, 언제든지 IT 자원(HWㆍSW 등)을 신속하게 확장ㆍ축소하여 제공할 수 있도록 하기 위한 관리 정책ㆍ기술을 보유하고 있는 것을 말한다.
  • 클라우드서비스의 안정성 및 지속성을 보장하기 위해, 사용자의 증가나 기능이 추가되어 확장이 필요한 경우 서비스 제공자는 서비스가 유지될 수 있도록 시스템 구조를 갖추고, 서비스 구조를 변경하는 경우 이용자에게 관련 프로세스를 알려줄 수 있다.
점검 항목 확인사항
확장성 정책수립
  • 서비스의 확장성 수준을 보장하기 위해 서비스 지원범위, 시스템 구조, 이용량 예측, 인프라 확장계획 등을 포함한 확장성 정책을 수립하고 있는가?
확장성 수준 제시
  • 서비스 확장성 수준을 사전에 제시하고 있는가?
  • 이용자가 주기적으로 확장성 수준을 알 수 있도록 관련 프로세스를 마련하고 있는가?
조직 및 책임 설정
  • 확장성 수준을 보장하기 위해 조직 및 인력을 적절히 배치하였는가?
  • 확장성 수준을 보장하기 위해 조직 및 인력이 해당 직무를 책임성 있게 수행하고 있는가?
시스템 도입·관리
  • 서비스의 이용량에 따라 서비스의 중단 없이 자원을 동적으로 확장하거나 축소할 수 있도록 시스템을 구축하고 있는가?
  • 서비스 이용량 변화에 신축적으로 대응할 수 있도록 모니터링, 유지/보수, 추가적인 물리적 자원 확보가 가능한가?
확장성 분석 예측,
개선 프로세스
  • 서비스의 확장성 한계에 대비하여 이를 예측/분석/개선하고, 필요한 기술 자료를 보유/관리하고 있는가?

3.1.2 서비스 인스턴스 수평 확장(Scale-Out) 기능 확인

  • 클라우드서비스 인스턴스는 물리적 컴퓨팅 시스템에 가상화 기술을 기반으로 상호 독립적으로 동작하는 운영체제를 탑재한 가상머신 혹은 컨테이너로 플랫폼이나 애플리케이션 서비스 구동 을 위한 기반 환경을 제공한다.
  • 클라우드 애플리케이션의 성능과 고가용성은 기본적으로 서비스 인스턴스의 확장을 통해 보장되므로, 인프라 서비스가 제공하는 서비스 인스턴스의 확장 기능이 정상 동작하는지 확인되어야 한다.
점검 항목 확인사항
서비스 인스턴스 수평 확장 기능
  • (자동확장/스케쥴확장) : 지정한 시간에 설정(확장 이미지, 인스턴스 수 등)에 따라 서비스 인스턴스가 확장되는가?
  • (자동확장/자원사용량에 따른 확장) : 서비스 인스턴스의 자원 사용률(혹은 사용량)이 설정한 임계치를 초과하는 경우 설정에 따라 서비스 인스턴스가 확장되는가?
  • (수동확장) : 필요한 리소스를 선택하여 확장 대상과 동일한 운영환경의 인스턴스를 추가할 수 있는가?
  • (자동/수동확장) : 자동/수동 확장에 대한 알림 및 이력을 확인할 수 있는가?

3.1.3 서비스 인스턴스 수직 확장(Scale-Up) 기능 확인

  • 서비스 인스턴스 수평 확장은 요청에 대한 분산 혹은 병렬 처리를 위해 서버를 추가하는 방식인 반면 서비스 인스턴스의 수직 확장은 인스턴스 사양을 높임으로써 처리 속도를 증가시키는 등 성능을 향상시키는데 목적이 있다.
  • 서비스 인스턴스의 수직 확장은 수평 확장을 통해 분산 구조된 서버를 통해 데이터 동기화, 세션 공유와 같은 기술적 한계로 인해 분산 구성이 어려운 경우 단일 서버의 사양을 높임으로써 서비스 성능을 높일 수 있다.
  • 클라우드 인프라 서비스가 제공하는 CPU, 메모리 등의 사양 변경 서비스를 대상으로 확장 기능이 정상 동작하는지 점검할 수 있다.
점검 항목 확인사항
서비스 인스턴스 수직 확장 기능
  • 서비스 인스턴스에 대한 CPU, 메모리 서버 사양 변경이 가능한가?
  • CPU, 메모리 사양 변경이 요청이 완료 된 후 서버 인스턴스에 확장된 사양이 적용되어 있는가?

3.1.4 애플리케이션 서비스 인프라 확장 기능 확인

  • 클라우드 애플리케이션 서비스(SaaS)의 인프라 확장성은 서비스 인프라 측면에서 애플리케이션 서비스에 대한 일시적인 혹은 불가피한 트랜잭션 증가를 처리함으로써 성능을 향상시키고, 가용성을 유지할 수 있는 능력을 의미한다
  • 애플리케이션 서비스를 위한 기반 인프라(가상머신 혹은 컨테이너) 확장에 대한 점검은 서비스(서버) 인스턴스의 정상 확장과 함께 애플리케이션 서비스를 위해 필요한 확장 요소들이 정상적으로 확장되어 애플리케이션 서비스가 이용 가능한지를 점검한다.
  • 애플리케이션 서비스 인프라의 확장은 애플리케이션이 구동되는 동일 환경으로 구성된 인스턴스를 자동 혹은 수동 확장하여 애플리케이션 실행 요청에 대한 트래픽을 분산 처리함으로써 성능을 향상시키고 가용성을 보장할 수 있다.
점검 항목 확인사항
애플리케이션 서비스 인프라 확장 기능
  • 애플리케이션 서비스를 위해 필요한 소스코드, DB 연동 등 애플리케이션 실행을 위해 필요한 구성 정보를 포함한 서비스 인스턴스(이미지 혹은 스냅샷 기반)가 생성되어 확장되는가?
  • 동일한 기능을 수행하는 애플리케이션 서비스 인스턴스는 로드밸런서 등과 연동되어 서비스 트래픽이 분산 처리되는가?

3.1.5 애플리케이션 서비스 기능 확장 확인

  • 서비스 협약 및 클라우드서비스 과금 정책에 따라 제공되는 서비스 기능 혹은 기능 실행을 위한 인터페이스 등이 확장 가능한 경우, 요청한 기능이 이용 중인 서비스에 추가 확장되는지 확인한다.
  • 애플리케이션 서비스 기능 축소가 가능한 경우, 요청한 기능이 축소되어 더 이상 사용되지 않으며, 이외 서비스 기능이 영향을 받지 않고 정상 동작하는지 확인한다.
  • 애플리케이션 기능 실행에 대한 서비스 가용성을 확보하기 위해 서비스 운영을 위한 인프라 확장이 기반되어야 한다.
점검 항목 확인사항
애플리케이션 서비스 기능 확장
  • 확장 가능한 기능이 기존 서비스 기능에 확장(혹은 변경)되어 실행되는가?
  • 축소 가능한 기능이 축소되어 더 이상 기능이 동작하지 않는가?
  • 기능의 확장 혹은 축소 시 이외 서비스 기능이 영향을 받지 않고 정상 동작하는가?

3.1.6 확장 요청 처리시간 측정

  • 확장요청 처리시간은 클라우드서비스가 확장 대상 리소스를 확장 처리하여 제공하기까지 소요 되는 시간으로 확장된 리소스가 생성 혹은 배포된 시간을 측정한다.
  • 리소스 확장요청 처리시간을 사전에 확인함으로써 확장이 필요한 시점에 처리시간에 대한 예측 이 가능할 수 있다.
  • 확장되는 단일 요소에 대해서는 서비스 프로비저닝 시간 측정과 유사하나 성능 향상을 위해 리 소스를 확장하여 서비스를 구성하는데 차이가 있다.
점검 항목 확인사항
확장요청 처리시간
  • 리소스 확장에 대한 평균 소요시간은 얼마인가?
  • 리소스 확장 평균 소요시간이 목표수준을 만족하는가?