1.10. 클러스터 API
클러스터 API는 Kubernetes 클러스터의 프로비저닝, 업그레이드 및 관리를 단순화하는 선언적 API를 제공합니다. 다중 클러스터 엔진 Operator는 여러 인프라 및 부트스트랩 공급자와 함께 코어 클러스터 API 구성 요소를 설치하여 다양한 사용 사례 및 플랫폼을 지원합니다. 독립 실행형 다중 클러스터 엔진 Operator 또는 Red Hat Advanced Cluster Management를 사용하여 Cluster API를 사용하는 방법을 알아봅니다. 다음 프로세스를 참조하십시오.
1.10.1. 클러스터 API를 사용하여 관리형 클러스터 설치 링크 복사링크가 클립보드에 복사되었습니다!
metal3
인프라 공급자와 OpenShift Container Platform 지원 부트스트랩 및 컨트롤 플레인 공급자를 사용하여 클러스터 API로 OpenShift Container Platform 관리 클러스터를 설치할 수 있습니다.
- 'ControlPlane'은 컨트롤 플레인 속성을 정의합니다.
-
ClusterInfrastructure
는 클러스터 수준 인프라 세부 정보를 정의합니다.
사전 요구 사항
-
Red Hat Advanced Cluster Management 설치 또는 다중 클러스터 엔진 Operator 독립 실행형 설치의
MultiClusterEngine
리소스가 필요합니다. -
다음 API 기본 도메인은 정적 API VIP를 가리켜야 합니다
. api.<cluster_name>.<base_domain
> . -
다음 애플리케이션 기본 도메인은 Ingress VIP의 고정 IP 주소를 가리켜야 합니다
. *.apps.<cluster_name>.<base_domain
> . -
클러스터의 내부 API 끝점(
api-int.<baseDomain>)이 필요합니다
.
1.10.1.1. 클러스터 API를 사용하여 워크로드 프로비저닝 링크 복사링크가 클립보드에 복사되었습니다!
워크로드를 프로비저닝하는 데 필요한 서비스를 활성화합니다. 기본적으로
assisted-service
가 활성화됩니다. 기본적으로 cluster-api-provider-metal3-preview 및cluster-api-provider-openshift-assisted-preview
는 비활성화되어 있습니다. 세 가지 서비스 모두true
임을 확인합니다. 다음 명령을 실행하여 리소스를 편집합니다.oc edit multiclusterengines.multicluster.openshift.io -n multicluster-engine
oc edit multiclusterengines.multicluster.openshift.io -n multicluster-engine
Copy to Clipboard Copied! Toggle word wrap Toggle overflow assisted-service
구성 요소,cluster-api-provider-metal3-preview
구성 요소,cluster-api-provider-openshift-assisted-preview
구성 요소의.spec.overrides
에서enabled: true
를 설정합니다. 다음configOverrides
값을 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 중앙 인프라 관리 서비스를 활성화합니다. 절차 를 보려면 중앙 인프라 관리 서비스 활성화를 참조하십시오.
clusterNetwork
사양,controlPlaneRef
사양 및infrastructureRef
사양을 사용하여클러스터
리소스를 구성합니다. 다음Cluster
리소스를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 YAML 콘텐츠를 적용합니다.
oc apply -f <filename>.yaml
oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow distributionVersion
,apiVIPs
및 SSH 키를 포함하는OpenshiftAssistedControlPlane
리소스를 구성합니다.distributionVersion
필드에 OpenShift Container Platform 버전을 지정합니다.참고:
distributionVersion
의 값은 OpenShift Container Platform 릴리스 의 이미지와 일치합니다. 다음 YAML 리소스를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow <1>'.spec.openshiftAssistedConfigSpec.sshAuthorizedKey'는 부팅 (검색) 단계의 노드에 액세스하는 데 사용됩니다. <2>'.spec.config.sshAuthorizedKey'는 프로비저닝된 OpenShift Container Platform 노드에 액세스하는 데 사용됩니다.
YAML 파일을 적용합니다. 다음 명령을 실행합니다.
oc apply -f <filename>.yaml
oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 풀 시크릿이 없는 경우 클러스터에서 컨테이너 레지스트리에서 이미지를 가져올 수 있도록 풀 시크릿을 생성해야 합니다. 풀 시크릿을 생성하려면 다음 단계를 완료합니다.
YAML 파일을 생성하여 이미지를 가져옵니다.
pull-secret.yaml
이라는 파일의 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 파일을 적용합니다.
oc apply -f pull-secret.yaml
oc apply -f pull-secret.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow baremetal에 클러스터 배포와 관련된 정보가 포함된
Metal3Cluster
인프라 리소스를 구성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
호스트
는 클러스터 리소스의clusterName과 함께 <
값이고clusterName
>.<baseDomain>*baseDomain
은OpenshiftAssistedControlPlane
리소스에 정의됩니다.
파일을 적용합니다. 다음 명령을 실행합니다.
oc apply -f <filename>.yaml
oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow OpenshiftAssistedControlPlane
리소스에서 참조하는 컨트롤 플레인 노드에 대해Metal3MachineTemplate
리소스를 구성합니다. 다음 YAML 샘플을 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 이미지는 OpenShift Container Platform 릴리스 의
distributionVersion
값과 버전과 일치합니다. - 2
clusterName
을Cluster
리소스에 있는 값과 동일한 값으로 설정합니다.
파일을 적용합니다. 다음 명령을 실행합니다.
oc apply -f <filename>.yaml
oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Metal3MachineTemplate
을 참조하는MachineDeployment
리소스를 사용하여 작업자 노드를 구성합니다. 다음 YAML 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 파일을 적용합니다. 다음 명령을 실행합니다.
oc apply -f <filename>.yaml
oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow MachineDeployment
에서 참조되는OpenshiftAssistedConfigTemplate
리소스를 생성합니다. 다음 YAML은 작업자 노드의 부트스트랩 구성을 정의하고 지원 설치 프로그램에 노드를 등록하는 데 사용됩니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow MachineDeployment
리소스에서 참조되는Metal3MachineTemplate
을 생성합니다. 다음 예제를 참조하십시오.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여 YAML 파일을 저장하고 클러스터를 프로비저닝합니다.
oc apply -f <filename>.yaml
oc apply -f <filename>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터 프로비저닝 상태를 확인합니다.
oc get cluster --namespace <cluster-namespace> <cluster-name> -o yaml
을 실행하여클러스터
리소스 상태를 확인합니다.다음 출력 및 상태를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get metal3cluster --namespace <cluster-namespace> <cluster-name> -o yaml
명령을 실행하여 클러스터 인프라 상태를 확인합니다.다음 출력 및 상태를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get openshiftassistedcontrolplane --namespace <cluster-namespace> <cluster-name> -o yaml
명령을 실행하여 컨트롤 플레인 상태를 확인합니다.다음 출력 및 상태를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get machinedeployment --namespace <cluster-namespace> <cluster-name> -o yaml
명령을 실행하여 머신 배포 상태를 확인합니다.다음 출력 및 상태를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow kubectl get machine -l cluster.x-k8s.io/cluster-name=cluster-name -n test-capi -o yaml
명령을 실행하여 머신을 확인합니다.다음 출력 및 상태를 참조하십시오.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 클러스터에 액세스합니다.
다음 명령을 실행하여
kubeconfig
파일을 가져옵니다.oc get secret -n test-capi cluster-name-admin-kubeconfig -o json | jq -r .data.kubeconfig | base64 --decode > kubeconfig
oc get secret -n test-capi cluster-name-admin-kubeconfig -o json | jq -r .data.kubeconfig | base64 --decode > kubeconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
다음 명령을 실행하여
kubeconfig
파일을 사용하여 클러스터에 액세스합니다.
export KUBECONFIG=$(realpath kubeconfig) oc get nodes
export KUBECONFIG=$(realpath kubeconfig) oc get nodes
Copy to Clipboard Copied! Toggle word wrap Toggle overflow