Cloud Native :  클라우드의 주요 특징과 장점을 극대화하는 방법론들의 총칭을 의미함.
(CI/CD, DevOps, Microservices, Container 개념들이 유기적으로 돌아가는 서비스를 제공하는 것)

전통적 IT 구조의 조직은 cloud native 적용에 다양한 커스터마이징이 필요.
IT 서비스 의존성이 높은 기업(스타트업 등)은 자연적으로 cloud native 하게 갖춰져 가는 경우가 많다.

1. MSA

 작은 서비스 여러개를 엮어 활용하는 구조

 

2. Container

 서비스가 인프라 레벨로 들어간 것. 가상화 기술 영역 중 가장 경량화된 최신 기술.

 가장 가볍고 빠르게 활용이 가능한 가상화 기술을 의미한다.

  MSA 구조를 사용하기 위해 최종적으로 고려되는 가상화 기술.

위 그림과 같이 운영체제(OS)위에 컨테이너 관리 SW가 존재한다.

컨테이너 관리 SW를 쓰게되면 사용자는 사용되는 클라우드가 Public, Private 인지 신경쓰지 않아도 되는 장점이 있다.

Hybrid cloud를 구성할 떄, 컨테이너 관리 SW(플랫폼)이 있으면 MSA가 Public과 Private을 마음대로 사용 가능하기에 
장기적인 관점에서 cloud native하다는 것은 컨테이너를 사용하는 것이라 보면 된다.

 

-> Multi/Hybrid cloud 사용자 관점에서는 어느 클라우드 환경의 자원을 쓰는지 상관없이(Public / Private), 동일한 인터페이스로 서비스를 활용 가능함. 컨테이너 개념을 통해 장기적으로는 클라우드의 대세는 Multi /Hybrid cloud로 나아갈 것.

3. DevOps (Development + Operation)

개발과 운영이 유기적으로 하나로 돌아가는 현상을 의미한다.
지속적인 개발, 운영, 피드백 반영, 적용을 위해 개발팀과 운영팀을 하나로 합치는 개념. 

DevOps는 아래와 같은 특징들을 가지고 있다.
1) 지속적으로 피드백을 바로 반용해서 새로 개발에 반영하도록 함
2) 조직 입장에 대응력을 높이며 신기능 추가 및 개선을 할 수 있는 환경 가능

4. CI/CD (Continuous Integration / Continuous Deployment)

지속적인 통합과 배포 

 


현업에서 요청한 서비스를 각 팀, 부서 별로 개발하다보면 통합(integration)의 필요성이 증대되는 경우가 많다.
여기서, 통합이란 API로 통신하면서 서비스가 유기적으로 돌아갈 수 있도록 프로토콜을 맞추는 작업을 의미함.

이러한 통합 과정을 원활하게 수행하기 위해서 활용되는 DevOps와 CI/CD는 개선사항을 빠르게 반영하고 다시 운영에 들어갈 수 있도록 한다. (비즈니스 요구사항을 맞춰주는 개발 속도와 대응력을 높임)

'IT > Cloud' 카테고리의 다른 글

클라우드 도입, 이관시 고려사항  (0) 2023.07.02
클라우드의 비용 체계  (0) 2023.06.22
클라우드의 주요개념  (0) 2023.06.19
MicroService Architecture(MSA)  (1) 2023.05.19
Managed Service  (0) 2023.05.15

재직 중인 회사에서 클라우드를 도입함에 따라, 클라우드에 대한 강의를 듣고 강의 요약 노트를 만들어 보고자 한다.

 

 

가상화 : 하나의 컴퓨터에서 여러 OS를 가동시킬 수 있게 도와주는 SW 기술,

           한 개의 컴퓨터에 있는 자원을 여러 개로 나누거나, 여러 컴퓨터의 자원을 하나로 합치는 기술

-> 가상화 기술이 클라우드의 시작

 

클라우드 : 큰 서버에서 나눠진 가상화된 자원을 사용자가 필요할 때마다 할당받아 사용

 

* 클라우드 기술의 장점

1. 시스템의 확장성 및 유연성의 향상

2. 시스템 확장에 빠른 대응이 가능 (서버 신규 도입시 필요한 절차를 생각해본다면..)

3. 물리적인 비용의 절감 (2와 연결)

 

* 클라우드 기술의 단점

1. 성능면에서 다소 손해를 볼 수 있다.

(가상의 자원으로 나누는 만큼, bottleneck 현상이 발생할 수도)

-> 성능저하를 최소화하기 위해 container 기술이 등장

 

* 가상화 기술의 종류

 

1. Host 가상화 

초창기 가상화기술. Vmware Fusion, Parallels, Virtual Box 등의 가상 PC가 대표적인 사례

운영체제를 다양하게 선택할 수 있다는 장점이 있지만, 너무 많은 Layer로 구성되어 있어 성능면에서 손해가 크다.

Host 가상화의 구조

 

2. Hypervisor 가상화

가상화 SW와 OS 영역을 합쳐 Hypervisor Layer를 만듦. 해당 Layer는 하드웨어와 맞물려서 작동

현 클라우드 기술의 근간이며 대표적인 사례로는 아마존의 xen, MS의 Hyper-V가 있다.

하드웨어를 직접 제어하므로 효율적인 리소스 사용이 가능하지만, 자체적인 머신 관리 기능이 없어 관리를 위한 별도의 프로그램이 필요하다. cloud 서비스를 제공하는 회사들은 관리를 위한 별도의 프로그램을 제공하는데 초점을 두고 있다.

(Hypervisor를 자체적으로 만들고 제공하고 있음.)

Hypervisor 가상화의 구조

 

3. Container 가상화

더 가볍고 경량화된 애플리케이션을 운용하기 위해 등장한 가상화 기술.

OS위에 바로 올리므로, 다른 가상화 방식보다 성능 저하가 적고 빠른 운영이 가능하다.

또한 동일 OS를 사용하므로 라이브러리, 패키지 등 애플리케이션 운영에 필요한 기술들을 바로 적용 가능.

다만, container 별로 설정할 수 있는 제약사항이 많으므로 이를 보완하고 원하는 환경을 구동하는게 관건.

Container 가상화의 구조

 

 

'IT > Cloud' 카테고리의 다른 글

클라우드의 주요개념  (0) 2023.06.19
MicroService Architecture(MSA)  (1) 2023.05.19
Managed Service  (0) 2023.05.15
클라우드의 종류  (0) 2023.05.15
전통적 IT와 클라우드의 차이  (0) 2023.04.30

+ Recent posts