1.2. Kubernetes 리소스

사용자 정의 리소스는 Kubernetes API의 확장입니다. 사용자 정의 리소스를 사용하여 Kubernetes 클러스터를 사용자 지정할 수 있습니다. Operator는 사용자 정의 리소스를 사용하여 애플리케이션 및 해당 구성 요소를 관리하는 소프트웨어 확장입니다. Kubernetes는 클러스터 리소스를 처리하는 동안 고정된 결과를 원하는 경우 선언적 모델을 사용합니다. Operator를 사용하여 Kubernetes는 선언적 방식으로 상태를 정의합니다. 필수 명령을 사용하여 Kubernetes 클러스터 리소스를 수정할 수 있습니다. Operator는 원하는 리소스 상태를 리소스의 실제 상태와 지속적으로 비교하고 원하는 상태와 일치하도록 현실을 구현하기 위한 조치를 취하는 제어 루프 역할을 합니다.

그림 1.2. Kubernetes 클러스터 개요

247 OpenShift Kubernetes 개요 1

표 1.2. Kubernetes 리소스

리소스목적

서비스

Kubernetes는 서비스를 사용하여 pod 세트에 실행 중인 애플리케이션을 노출합니다.

ReplicaSets

Kubernetes는 ReplicaSets를 사용하여 일정한 pod 번호를 유지합니다.

배포

애플리케이션의 라이프사이클을 유지보수하는 리소스 오브젝트입니다.

Kubernetes는 OpenShift Container Platform의 핵심 구성 요소입니다. OpenShift Container Platform을 사용하여 컨테이너화된 애플리케이션을 개발하고 실행할 수 있습니다. Kubernetes에 기반을 둔 OpenShift Container Platform은 대규모 통신, 스트리밍 비디오, 게임, 뱅킹 및 기타 애플리케이션의 엔진 역할을 하는 동일한 기술을 통합합니다. OpenShift Container Platform을 사용하여 컨테이너화된 애플리케이션을 단일 클라우드 이상으로 온프레미스 및 다중 클라우드 환경으로 확장할 수 있습니다.

그림 1.3. Kubernetes 아키텍처

247 OpenShift Kubernetes 개요 2

클러스터는 클라우드 환경에서 여러 노드로 구성된 단일 계산 단위입니다. Kubernetes 클러스터에는 컨트롤 플레인 및 작업자 노드가 포함됩니다. 다양한 머신 및 환경에서 Kubernetes 컨테이너를 실행할 수 있습니다. 컨트롤 플레인 노드는 클러스터 상태를 제어하고 유지보수합니다. 작업자 노드를 사용하여 Kubernetes 애플리케이션을 실행할 수 있습니다. Kubernetes 네임스페이스를 사용하여 클러스터의 클러스터 리소스를 구분할 수 있습니다. 네임스페이스 범위는 배포, 서비스 및 Pod와 같은 리소스 오브젝트에 적용할 수 있습니다. 스토리지 클래스, 노드, 영구 볼륨과 같은 클러스터 전체 리소스 오브젝트에는 네임스페이스를 사용할 수 없습니다.