4.2. Kubernetes 리소스
사용자 정의 리소스는 Kubernetes API의 확장입니다. 사용자 정의 리소스를 사용하여 Kubernetes 클러스터를 사용자 지정할 수 있습니다. Operator는 사용자 정의 리소스를 사용하여 애플리케이션 및 해당 구성 요소를 관리하는 소프트웨어 확장입니다. Kubernetes는 클러스터 리소스를 처리하는 동안 고정된 결과를 원하는 경우 선언적 모델을 사용합니다. Operator를 사용하여 Kubernetes는 선언적 방식으로 상태를 정의합니다. 필수 명령을 사용하여 Kubernetes 클러스터 리소스를 수정할 수 있습니다. Operator는 원하는 리소스 상태를 리소스의 실제 상태와 지속적으로 비교하고 원하는 상태와 일치하도록 현실을 구현하기 위한 조치를 취하는 제어 루프 역할을 합니다.
그림 4.2. Kubernetes 클러스터 개요
리소스 | 목적 |
---|---|
서비스 | Kubernetes는 서비스를 사용하여 pod 세트에 실행 중인 애플리케이션을 노출합니다. |
|
Kubernetes는 |
배포 | 애플리케이션의 라이프사이클을 유지보수하는 리소스 오브젝트입니다. |
Kubernetes는 OpenShift Container Platform의 핵심 구성 요소입니다. OpenShift Container Platform을 사용하여 컨테이너화된 애플리케이션을 개발하고 실행할 수 있습니다. Kubernetes에 기반을 둔 OpenShift Container Platform은 대규모 통신, 스트리밍 비디오, 게임, 뱅킹 및 기타 애플리케이션의 엔진 역할을 하는 동일한 기술을 통합합니다. OpenShift Container Platform을 사용하여 컨테이너화된 애플리케이션을 단일 클라우드 이상으로 온프레미스 및 다중 클라우드 환경으로 확장할 수 있습니다.
그림 4.3. Kubernetes 아키텍처
클러스터는 클라우드 환경에서 여러 노드로 구성된 단일 계산 단위입니다. Kubernetes 클러스터에는 컨트롤 플레인 및 작업자 노드가 포함됩니다. 다양한 머신 및 환경에서 Kubernetes 컨테이너를 실행할 수 있습니다. 컨트롤 플레인 노드는 클러스터 상태를 제어하고 유지보수합니다. 작업자 노드를 사용하여 Kubernetes 애플리케이션을 실행할 수 있습니다. Kubernetes 네임스페이스를 사용하여 클러스터의 클러스터 리소스를 구분할 수 있습니다. 네임스페이스 범위는 배포, 서비스 및 Pod와 같은 리소스 오브젝트에 적용할 수 있습니다. 스토리지 클래스, 노드, 영구 볼륨과 같은 클러스터 전체 리소스 오브젝트에는 네임스페이스를 사용할 수 없습니다.