[Docker] 인프라 관리의 트렌드 변화

in_ho_·2023년 10월 22일
0

Docker

목록 보기
1/3
post-thumbnail

1. 클라우드의 등장

  • 클라우드가 등장하므로 인해 인프라 관리는 큰 변화를 맞이했습니다.
  • 이 중 가장 큰 변화는 인프라를 소프트웨어처럼 사용할 수 있다.입니다.
  • 인프라는 과거처럼 데이터 센터에 보관하거나, 서버 장비를 사거나 하지 않고 한 줄의 코드처럼 추가하고 제거할 수 있는 대상이 되었습니다.
  • 클라우드의 등장은 아키텍처의 변화를 이끌었습니다.

2. 아키텍처

2-1. 모놀로식 아키텍처

  • 예전의 아키텍처는 하나의 서버에 모든 로직이 배치되어 있는 모놀로식 구조였습니다.

2-1-1. 장점

  • 모놀로식 구조의 장점은’ 아키텍처가 단순하다‘입니다.

2-2-2. 단점

  • 하지만 모든 로직이 하나의 서버로 구성되었기 때문에 장애가 발생했을 때 원인을 찾기가 어려웠습니다.
  • 많은 트래픽으로 서버를 증설해야 할 때 전체를 증가해야 하기 때문에 자원이 심하게 낭비되었습니다.

2-2. 마이크로서비스 아키텍처

  • 서비스들이 대규모 트래픽을 감당해야 하므로 모놀로식 아키텍처의 대안으로 마이크로서비스 아키텍처가 등장하게 되었습니다.

  • 마이크로서비스는 한 서비스에서 기능별로 물리적인 서버의 위치를 다르게 하여 서비스를 구성한 것입니다.

2-2-1. 장점

  • 기능별로 서버가 분산되어 있기 때문에 장애가 생겼을 때 발생 부분을 쉽게 찾을 수 있습니다.
  • 물리적인 서버의 위치가 기능별로 나누어져 있기 때문에 많이 사용되는 서비스의 경우 해당 기능에 대한 리소스만 증설할 수 있어, 자원을 효율적으로 사용할 수 있습니다.

2-2-1. 한계

  • 인프라 관점에서 볼 때 기능들이 서버별로 분산되어 있기 때문에 너 많은 서버를 유지, 보수해야 한다는 단점이 있습니다.
  • 기능을 추가할 경우 서버를 새로 배치할지 기존 서버에 운영할지 결정하는 부분이 이슈가 되어 아키텍처를 구성하는데 많은 시간이 소요됩니다.
  • 서비스 간의 호출이 많아지면서 전체적으로 아키텍처의 복합도가 높아지는 상황이 발생하였습니다.

3. 여러 서버를 관리하기 위한 방법

  • 클라우드가 대중화됨에 따라 마이크로 서비스 아키텍처가 확산되었습니다. 하지만, 여러 서버를 운영하게 되면서 발생하는 작업들은 무수히 많아지게 되었습니다.
  • 이 부분을 해결하기 위해 가상화 솔루션이라는 방법이 등장하게 되었습니다.

3-1. 가상화 솔루션, 전가상화

  • 하나의 큰 서버를 가상화 기술을 통해 잘게 쪼개서 마이크로서비스의 기능을 격리된 가상화 공간에 배치하면 서버는 한 대만 유지보수하기지만 여러 대의 서버를 사용하는 효과를 얻을 수 있기 때문입니다. 이러한 방법을 전가상화라고 합니다.

3-1-1. 전가상화

  • 전가상화는 하이퍼바이저를 통해 나누어진 게스트 운영체제와 통신할 수 있습니다.
  • 전가상화는 많이 사용화된 기술이지만 하이퍼바이저를 거쳐야 하기 때문에 무겁다는 단점이 있습니다.
  • 유명한 VMWare에서 만든 솔루션을 사용 시 속도 문제를 다소 해결할 수 있지만, 비용 문제가 발생했습니다.
  • 이러한 문제를 해결하기 위해 컨테이너 방식의 가상화가 각광받기 시작했습니다.

3-2. Docker

  • 컨테이너 방식을 솔루션으로 구현한 것이 바로 도커입니다.

3-2-1. 컨테이너 가상화

  • 전가상화 방식의 하이퍼바이저를 운영체제의 컨테이너 기술로 대체합니다.
  • 컨테이너의 장점은 기존의 가상화처럼 게스트 운영체제를 포함하지 않기 때문에 속도가 빠르고 용량이 작다는 장점이 있습니다.

0개의 댓글