소품집

[KT AIVLE] 인프라 기초 - 클라우드, 가상화 기술, 부하분산 본문

AI/KT 에이블스쿨

[KT AIVLE] 인프라 기초 - 클라우드, 가상화 기술, 부하분산

sodayeong 2022. 10. 15. 00:35

DX - Digital Transformation란

  • 디지털 기술을 적용하여 비즈니스 모델 변화하고 혁신시키는 과정
  • 고객과 사용자의 니즈를 파악하고 변화를 민첩하고 유연하게 대응하며 지속 가능한 발전을 이룰 수 있도록 함.
  • 코로나19 이슈로 비대면으로 진행되는 행사/업무가 늘어남에 따라 많은 기업들의 디지털 트랜스포메이션을 가속화시키는 결정적인 계기가 되었음!

 

클라우드 컴퓨팅의 정의

  • 클라우드 컴퓨팅이란 사용자들이 필요에 의해 컴퓨팅 자원을 할당 받고, 자원이 공유되는 가상화된 시스템을 의미함
  • 클라우드 컴퓨팅은 IT 리소스를 인터넷을 통해 온디맨드로 제공하고 사용한 만큼 비율을 지불하는 것
    • 온디맨드(On-Demand)? 주문형 서비스로 고객이 필요한 만큼 자원을 할당받는 것

 

클라우드의 추상화, 가상화

1) 추상화 기술

  • 애플리케이션은 명시되지 않은 물리적인 시스템에서 실행됨
  • 데이터 센터 내 저장된 위치 또한 알려지지 않음
  • 시스템 관리는 외부에 위탁하여 관리함(AWS, KT Cloud, SK c&c 등)
  • 따라서, 시스템의 상세한 사항들은 사용자와 개발자는 몰라도 시스템 자원을 지불만 하면 리소스를 사용할 수 있음

2) 가상화 기술

  • 하나의 물리적인 서버 위에서 여러 OS와 APP을 구동시킬 수 있도록 하는 소프트웨어 기술
  • 하이퍼바이저는 물리적 머신 위에서 가상 머신을 생성하고, 각 가상 머신은 다양한 운영체제를 실행시킬 수 있음

3) 가상화 기술의 종류

(왼) 베어메탈 방식

  • Host OS 없이 하이퍼바이저 위에 직접 설치되는 형태로 가상화 목적으로만 사용됨
  • Guest OS들은 하드웨어 위에서 구동되므로 오버헤드가 적고 상대적으로 우수
  • 따라서 엔터프라이즈급 기업에서 서비스하기 적합함 → 하드웨어 바로 위에서 구동되기 때문에 기술인력이 많이 필요함

(오) 호스트형 방식

  • Host OS 위에 하이퍼바이저가 실행되고, 그 위에서 Guest OS를 올려 가동하는 방식
  • 기존 컴퓨팅 환경에서 하이퍼바이저를 설치할 수 있어 구성이 편리함
  • HostOS에 문제가 생기면 전체 시스템에 문제가 생기는 단점이 있음!

 

네트워크 가상화

  • 물리적 네트워크에서 여러 가상 네트워크를 실행하기 위한 기술로 각 가상 네트워크가 실제 네트워크 환경처럼 작동됨
  • 가상의 네트워크 환경에서 소프트웨어적으로 서브넷 구성, 라우팅 및 방화벽 설정, 로드밸런싱(부하분산)등을 구성하여 리소스 간 내/외부 통신을 안정적으로 수행함

1) 소프트웨어 정의 네트워크 - SDN(Software Defined Networking)

 

  • 네트워크 장비의 패킷 전달 기능에서 제어 부분을 물리적으로 분리하는 기술
  • 그래서 우리는 클라우드 환경에서 제어부를 설정해 전체 장비를 구동할 수 있음(라우팅, 서브넷, 방화벽 등..)

2) 데스크톱 가상화 - VDI(Virtual Desktop Infrastructure)

  • 데이터 센터의 서버에서 운영되는 가상의 PC 환경을 의미(가상의 컴퓨터 환경을 중앙서버에서 제공하는 SW 기술)
  • 환경 제한 없이 어디서든 네트워크를 통해 서버에 접속하여 자신만의 PC 환경에서 업무를 수행할 수 있음
  • 또한 작업한 파일을 데이터 센터에 위치한 서버에서 이루어져 보안 강화, 관리 효율성을 도모할 수 있음!

 

분산처리 기술

  • 분산처리는 하나의 목적을 위해 여러 서버에서 연산을 처리하도록 만든 시스템으로 클러스터 형태로 구성하고, 연산을 병렬로 처리하도록 만든 기술

클러스터링 시스템

  • 네트워크에 있는 여러 컴퓨터들이 병렬적으로 하나의 거대한 시스템으로 만드는 것
  • 분산/병렬 시스템에 상관없이 하나의 단일 시스템 구조가 목표! 여러 시스템들에게 공유 저장소를 허용함
    • 비동기식 클러스터링: 다른 서버들이 대기하는 동안 하나의 서버가 응용 프로그램을 실행하는 구조
    • 동기식 클러스터링: 모든 N개의 호스트 서버들이 응용 프로그램을 실행하는 구조

오토 스케일링

  • 클라우드의 유연성/탄력성을 돋보이게 하는 핵심기술
  • 컴퓨팅 리소스 자원을 모니터링하여 서버 개수를 자동으로 조절하는 기능

 

인프라 확장(Scaling) 방식

  1. 스케일아웃 (Scale Up)
  • 컴퓨터를 여러대 추가하여 시스템을 확장하는 방법
  • 서버가 여러대가 되기 때문에 각 서버에 걸리는 부하를 균등하게 해주는 ‘로드밸런싱’이 필수적으로 필요함
  • 서버 한대가 고장나도 다른 컴퓨터가 있어서 서비스 제공이 안정적임
  • 반면 두개의 컴퓨터가 같은 정보임을 보장해줘야 하기 때문에 고려하며 프로그램을 설계해줘야 함!
  1. 스케일업 (Scale Out)
  • 컴퓨터에 CPU나 RAM을 추가해 고성능의 부품으로 교환하는 것을 의미함
  • 모든 처리가 서버 한대에 집중되기 때문에 갱신이 빈번하게 일어나는 DB 서버에 적합한 방식임

 

부하분산(Load balancing)

  • 클라우드 상에는 다양한 로드 밸런싱 서비스가 있으며, 오토 스케일링과 함께 구현되는 것이 일반적인 구현 방식임
  • 부하 분산 메커니즘은 작업 부하 분산 기능을 수행하는 런타임 에이전트
    • 비대칭 분배: 더 많은 작업 부하가 더 높은 처리량과 함께 IT 자원이 발생
    • 작업 부하 우선순위: 작업 부하는 우선순위에 따라 예약되고, 대기열에 삽입되며, 삭제되고 분배됨
    • 콘텐츠 인식 분산: 요청 콘텐츠에 따라 다른 IT 자원에 요청이 분배됨

 

서버리스 컴퓨팅

  • 인프라 배포 및 관리 최소화(개발에 집중), 신속한 서비스 개발, 비용절감
  • 개발자가 서버를 직접 프로비저닝하고 관리할 필요 없이 App을 빌드하여 실행할 수 있는 클라우드 네이티브 개발 모델
  • 서버리스 모델에도 서버가 존재하긴 하지만, App 개발에서와 달리 추성화 되어 있음

 

 

728x90
Comments