Container Orchestration

김동현·2023년 4월 16일

Container

목록 보기
1/1

container orchestration 참조문서(redhat)

1줄 요약


Contents

사전 정의
개요
어디에 쓰이는가
Tools
어떻게 동작하는가?


사전 정의

container ->
(화물 수송용) 컨테이너, 그릇 ,용기

orchestration ->
1.[U] 관현악 편곡(법), 악기 편성법, 관현악 조곡(組曲)2.통합, 결집, 편성; 조직화; (솜씨 있는) 조정 ((of))
ref. papago


개요

Container orchestration 은 컨테이너의 배포, 운영, 확장 및 networking을 자동화합니다. 컨테이너를 사용하는 모든 환경에서 사용 가능합니다

컨테이너 안의 서비스를 작은 단위로 쪼개서 개별적으로 배포 및 관리 가능하게 만들어주는 마이크로서비스를 사용하기 위해서 컨테이너 안의 각 서비스를 독립적인 컨테이너로 패키징하여 배포하고, Container orchestration을 사용하여 관리합니다

micro service Container orchestration은 각 마이크로 서비스가 요구하는 resource를 자동으로 할당하고 서비스 상태를 모니터링하며 필요한 경우 서비스를 다시 시작하거나 확장하여 시스템의 가용성의 보장합니다. 이로 인해 마이크로 서비스 아키텍쳐에서는 서비스의 배포 및 관리가 용이해지며, 시스템 전반적으로 유연성과 안정성이 확장됩니다.

What is Micro service?(AWS)


어디에 쓰이는가

아래의 task들을 자동화 하고 운영하는데 사용됩니다.
1. Provisioning, 배포
2. Configuration, scheduling
3. 자원 할당

4. 컨테이너 가용성
5. Scaling or removing containers (인프라 전반의 워크로드 balancing을 기반으로)
6. Load balancing and traffic routing

7.Monitoring container health 컨테이너의 상태를 지속적으로 모니터링하여 문제가 발생하면 신속하게 대응하는 것을 의미합니다. 모니터링 대상에는 CPU, 메모리, 네트워크, 디스크 I/O 등의 자원 사용률과 성능, 컨테이너 내부 프로세스의 실행 상태, 로그 및 메트릭 데이터 등이 포함됩니다. 모니터링을 통해 이러한 정보를 수집하고, 이상 징후를 탐지하여 예방 조치를 취하거나 신속한 대응을 할 수 있습니다. 예를 들어, CPU 사용률이 높아지면 새로운 인스턴스를 시작하거나 스케일 업을 수행하거나, 컨테이너 내부 프로세스가 비정상적으로 종료되는 경우 자동으로 재시작할 수 있습니다.

모니터링은 개발 및 운영팀에게 중요한 정보를 제공하여, 서비스의 안정성을 높이고 문제 발생 시 대응하는 데 도움을 줍니다. 따라서 컨테이너 오케스트레이션에서 "Monitoring container health"는 핵심적인 기능 중 하나로 간주됩니다.
(- chat gpt -)

8. 실행할 컨테이너를 기반으로 application들 구성
9. 컨테이너 통신 보안 keeping

Workload(AWS)


Tools

Kubernetes
Docker Swarm
Apache Mesos


어떻게 동작하는가

K8s를 사용할 때 YAML, JSON 파일을 사용해서 configuration of application을 설정할 수 있습니다.
configuration file은 configuration management tool에게 {컨테이너 image가 어디에 위치한지, how to establish network, where to store logs}를 알려줍니다

새 컨테이너를 배포할 때, container management tool은 자동으로 클러스터에 배포를 scheduling하고 올바른 host를 찾습니다(정의된 requirements 또는 restrictions을 고려(taking into account)하여).
그러면 orchestration tool은 컨테이너의 lifecycle을 manage합니다(compose file에 정의된 specification(명세서)에 기반하여)

K8s patterns을 사용해서 컨테이너 기반 application과 서비스들의 configuration, lifecycle, scale을 관리할 수도 있습니다.

K8s 배포란?(redhat)


출처 : redhat, AWS, openai

profile
nice to meet you:)

0개의 댓글