13장. 클러스터 API를 사용하여 머신 관리
13.1. 클러스터 API 정보
클러스터 API를 사용하여 머신을 관리하는 것은 기술 프리뷰 기능만 해당합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
Cluster API 는 AWS(Amazon Web Services), GCP(Google Cloud Platform) 및 VMware vSphere의 기술 프리뷰로 OpenShift Container Platform에 통합된 업스트림 프로젝트입니다.
13.1.1. 클러스터 API 개요
Cluster API를 사용하여 OpenShift Container Platform 클러스터에서 컴퓨팅 머신 세트 및 컴퓨팅 머신을 생성하고 관리할 수 있습니다. 이 기능은 Machine API를 사용하여 머신 관리하는 것에 대한 대안이나 추가 기능입니다.
OpenShift Container Platform 4.17 클러스터의 경우 Cluster API를 사용하여 클러스터 설치가 완료된 후 노드 호스트 프로비저닝 관리 작업을 수행할 수 있습니다. 이 시스템을 사용하면 퍼블릭 또는 프라이빗 클라우드 인프라에 더하여 탄력적이고 동적인 프로비저닝 방법을 사용할 수 있습니다.
Cluster API 기술 프리뷰를 사용하면 지원되는 공급자를 위해 OpenShift Container Platform 클러스터에서 컴퓨팅 머신 및 컴퓨팅 머신 세트를 생성할 수 있습니다. Machine API에서 사용할 수 없는 이 구현에서 사용하도록 설정된 기능을 탐색할 수도 있습니다.
13.1.1.1. 클러스터 API의 이점
OpenShift Container Platform 사용자 및 개발자는 Cluster API를 사용하여 다음과 같은 이점을 얻을 수 있습니다.
- Machine API에서 지원하지 않을 수 있는 업스트림 커뮤니티 Cluster API 인프라 공급자를 사용하는 옵션입니다.
- 인프라 공급업체를 위한 머신 컨트롤러를 유지 관리하는 타사와 협업할 수 있는 기회
- OpenShift Container Platform에서 인프라 관리에 동일한 Kubernetes 툴 세트를 사용하는 기능
- Machine API에서 사용할 수 없는 기능을 지원하는 클러스터 API를 사용하여 컴퓨팅 머신 세트를 생성하는 기능입니다.
13.1.1.2. 클러스터 API 제한 사항
클러스터 API를 사용하여 머신을 관리하는 것은 기술 프리뷰 기능이며 다음과 같은 제한 사항이 있습니다.
이 기능을 사용하려면
TechPreviewNoUpgrade
기능 세트를 활성화해야 합니다.중요이 기능 세트를 활성화하면 실행 취소할 수 없으며 마이너 버전 업데이트가 허용되지 않습니다.
- AWS(Amazon Web Services), GCP(Google Cloud Platform) 및 VMware vSphere 클러스터만 클러스터 API를 사용할 수 있습니다.
- 클러스터 API에 필요한 기본 리소스를 수동으로 생성해야 합니다. 자세한 내용은 "Cluster API 시작하기"를 참조하십시오.
- 클러스터 API를 사용하여 컨트롤 플레인 시스템을 관리할 수 없습니다.
- Machine API에서 Cluster API로 생성한 기존 컴퓨팅 머신 세트 마이그레이션은 지원되지 않습니다.
- Machine API와의 전체 기능 패리티를 사용할 수 없습니다.
Cluster API를 사용하는 클러스터의 경우 OpenShift CLI(
oc
) 명령은 Machine API 오브젝트를 통해 Cluster API 오브젝트를 우선시합니다. 이 동작은 Cluster API 및 Machine API 둘 다에 표시되는 모든 오브젝트에 대해 작동하는oc
명령에 영향을 미칩니다.자세한 내용 및 이 문제에 대한 해결 방법은 문제 해결 콘텐츠에서 "CLI를 사용할 때 의도한 오브젝트 참조"를 참조하십시오.
13.1.2. 클러스터 API 아키텍처
업스트림 Cluster API의 OpenShift Container Platform 통합은 Cluster CAPI Operator에 의해 구현 및 관리됩니다. Cluster CAPI Operator 및 해당 피연산자는 openshift-machine-api
네임스페이스를 사용하는 Machine API와 달리 openshift-cluster-api
네임스페이스에 프로비저닝됩니다.
13.1.2.1. Cluster CAPI Operator
Cluster CAPI Operator는 Cluster API 리소스의 라이프사이클을 유지 관리하는 OpenShift Container Platform Operator입니다. 이 Operator는 OpenShift Container Platform 클러스터 내에서 Cluster API 프로젝트 배포와 관련된 모든 관리 작업을 담당합니다.
Cluster API 사용을 허용하도록 클러스터가 올바르게 구성된 경우 Cluster CAPI Operator는 클러스터에 Cluster API 구성 요소를 설치합니다.
자세한 내용은 Cluster Operators 참조 콘텐츠의 "Cluster CAPI Operator" 항목을 참조하십시오.
추가 리소스
13.1.2.2. 클러스터 API 기본 리소스
Cluster API는 다음과 같은 기본 리소스로 구성됩니다. 이 기능의 기술 프리뷰의 경우 openshift-cluster-api
네임스페이스에서 이러한 리소스를 수동으로 생성해야 합니다.
- Cluster
- 클러스터 API에서 관리하는 클러스터를 나타내는 기본 단위입니다.
- 인프라
- 리전 및 서브넷과 같이 클러스터의 모든 컴퓨팅 머신 세트에서 공유하는 속성을 정의하는 공급자별 리소스입니다.
- 머신 템플릿
- 컴퓨팅 머신 세트에서 생성하는 시스템의 속성을 정의하는 공급자별 템플릿입니다.
- 머신 세트
시스템 그룹입니다.
컴퓨팅 머신 세트는 머신에 연관되어 있으며 복제본 세트는 pod에 연관되어 있습니다. 머신을 추가하거나 축소하려면 컴퓨팅 요구 사항에 맞게 컴퓨팅 머신 세트 사용자 정의 리소스의
replicas
필드를 변경합니다.클러스터 API를 사용하면 컴퓨팅 머신 세트는
Cluster
오브젝트 및 공급자별 머신 템플릿을 참조합니다.- 머신
노드의 호스트를 설명하는 기본 단위입니다.
Cluster API는 머신 템플릿의 구성을 기반으로 시스템을 생성합니다.