320x100
320x100

컨테이너 인프라 환경

: 컨테이너를 중심으로 구축된 인프라 환경

 

- 컨테이너

: 하나의 운영체제 커널에서 다른 프로세스의 영향을 받지 않고 독립적으로 실행되는 프로세스

: 하나 이상의 목적을 위해 독립적으로 작동하는 프로세스

 

- 구성

: 컨테이너

: 컨테이너 관리

: 개발 환경 구성 및 배포 자동화

: 모니터링

 

 

 

 

모놀리식 아키텍처

: 하나의 큰 목적이 있는 서비스 또는 애플리케이션에 여러 기능이 통합되어 있는 구조

: 초기 단계에서 설계하기 용이하고 개발 과정이 단순함

: 코드 관리가 간편 

 

- 단점

: 수정 작업이 많은 경우 수정한 서비스 외에 다른 서비스에 영향을 끼칠 수 있음

: 서비스가 확장될 경우 복잡해짐

: 특정 서비스의 문제가 전체의 문제로 번질 수 있음

 

 

 

 

마이크로 서비스 아키텍처 (MSA)

: 시스템 전체가 하나의 목적을 지향하지만, 개별 기능을 하는 작은 서비스를 각각 개발하여 연결된 형식

: 서비스 하나하나가 독립된 기능을 수행

: 서비스를 재사용하기 쉬우며 서비스가 변경되었을때 다른 서비스에 미치는 영향이 적음

: 사용량 변화에 따라 특정 서비스만 확장할 수 있음

: 사용자 요구사항에 따라 가용성을 즉각적으로 확보해야하는 IaaS 환경에 적합

 

- 단점

: 모놀리식 아키텍처 보다 복잡도가 높으며 각 서비스 간 네트워크 호출 횟수가 많아 성능에 영향 우려

 

- 컨테이너를 활용한 MSA

: 서비스를 컨테이너 단위로 포장하여 배포 및 확장

 

 

 

 

도커

: 애플리케이션을 독립적으로 실행할 수 있도록 컨테이너를 만들고 관리하는 컨테이너 도구

: OS에 관계없이 독립적인 환경에서 일관된 결과를 보장

 

- 이외 컨테이너 도구

: Containerd

: CRI-O

: Podman

 

 

 

 

 

쿠버네티스

: 컨테이너 인프라에 필요한 기능을 통합하고 관리하는 솔루션

: 컨테이너의 자동 배포와 배포된 컨테이너에 대한 동작 보증, 부하에 따른 동적 확장 등 제공

: API 게이트웨이, 서비스 디스커버리, 이벤트 버스, 인증 등 다양한 도구 및 환경 제공

 

- 이외 컨테이너 관리도구

: Docker Swarm

: Mesos

: Nomad

 

 

 

 

젠킨스

: 지속적 통합 (CI, Continuous Integration)과 지속적 배포 (CD, Continuous Deployment)를 지원하는 자동화 도구

: 프로그램의 빌드, 테스트, 패키징, 배포를 자동화

 

- 이외 CI/CD 도구 

: Bamboo

: GitHub Action

: Teamcity

 

 

 

 

프로메테우스 / 그라파나

: 모니터링 도구

 

- 프로메테우스

: 상태 데이터 수집

 

- 그라파나

: 수집한 데이터를 보기좋게 시각화

 

- 이외 데이터 수집 도구

: Data Dog

: Influx DB

: New Relic

 

- 이외 데이터 시각화 도구

: Kibana

: Chronograf

 

 

 

 

 

 

Reference

 

컨테이너 인프라 환경 구축을 위한 쿠버네티스/도커 - YES24

실무에 바로 적용할 수 있는 컨테이너 인프라 환경 기술!IT 자원을 효율적으로 빠르게 사용할 수 있는 방법으로 컨테이너 환경이 거론되었으나 그동안 관리가 어렵고 복잡해서 상용되기 어려웠

www.yes24.com

300x250
728x90

'Container > Kubernetes' 카테고리의 다른 글

쿠버네티스 설치 및 기본 세팅  (1) 2023.06.04
다양한 쿠버네티스의 종류  (0) 2023.06.04
k3s vs minikube vs micro k8s 비교  (0) 2023.01.11
k3s에 대해 알아보자  (0) 2022.12.12
쿠버네티스의 개요 (Kubernetes)  (0) 2021.10.19