13.5. 클러스터 API 시스템에 대한 구성 옵션


13.5.1. Amazon Web Services의 클러스터 API 구성 옵션

중요

클러스터 API를 사용하여 머신을 관리하는 것은 기술 프리뷰 기능만 해당합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

Cluster API 사용자 정의 리소스 매니페스트에서 값을 업데이트하여 AWS(Amazon Web Services) 클러스터 API 머신의 구성을 변경할 수 있습니다.

13.5.1.1. Amazon Web Services 클러스터 구성을 위한 샘플 YAML

다음 예제 YAML 파일은 Amazon Web Services 클러스터에 대한 구성을 보여줍니다.

13.5.1.1.1. Amazon Web Services에서 클러스터 API 인프라 리소스의 샘플 YAML

인프라 리소스는 공급자별로 다르며 리전 및 서브넷과 같이 클러스터의 모든 컴퓨팅 머신 세트에서 공유하는 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 이 리소스를 참조합니다.

apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
kind: AWSCluster 1
metadata:
  name: <cluster_name> 2
  namespace: openshift-cluster-api
spec:
  controlPlaneEndpoint: 3
    host: <control_plane_endpoint_address>
    port: 6443
  region: <region> 4
1
클러스터의 인프라 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
2
클러스터 ID를 클러스터 이름으로 지정합니다.
3
컨트롤 플레인 끝점의 주소와 해당 주소에 액세스하는 데 사용할 포트를 지정합니다.
4
AWS 리전을 지정합니다.
13.5.1.1.2. Amazon Web Services에서 클러스터 API 머신 템플릿 리소스의 샘플 YAML

머신 템플릿 리소스는 공급자마다 다르며 컴퓨팅 머신 세트에서 생성하는 시스템의 기본 속성을 정의합니다. 머신을 생성할 때 컴퓨팅 머신 세트는 이 템플릿을 참조합니다.

apiVersion: infrastructure.cluster.x-k8s.io/v1beta2
kind: AWSMachineTemplate 1
metadata:
  name: <template_name> 2
  namespace: openshift-cluster-api
spec:
  template:
    spec: 3
      uncompressedUserData: true
      iamInstanceProfile: # ...
      instanceType: m5.large
      ignition:
        storageType: UnencryptedUserData
        version: "3.2"
      ami:
        id: # ...
      subnet:
        filters:
        - name: tag:Name
          values:
          - # ...
      additionalSecurityGroups:
      - filters:
        - name: tag:Name
          values:
          - # ...
1
머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
2
머신 템플릿의 이름을 지정합니다.
3
환경에 대한 세부 정보를 지정합니다. 여기에 있는 값은 예입니다.
13.5.1.1.3. Amazon Web Services에서 클러스터 API 컴퓨팅 머신 세트 리소스의 샘플 YAML

컴퓨팅 머신 세트 리소스는 생성하는 시스템의 추가 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 인프라 리소스 및 머신 템플릿도 참조합니다.

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 1
  namespace: openshift-cluster-api
spec:
  clusterName: <cluster_name> 2
  replicas: 1
  selector:
    matchLabels:
      test: example
  template:
    metadata:
      labels:
        test: example
    spec:
      bootstrap:
         dataSecretName: worker-user-data 3
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: AWSMachineTemplate 4
        name: <template_name> 5
1
컴퓨팅 머신 세트의 이름을 지정합니다.
2
클러스터 ID를 클러스터 이름으로 지정합니다.
3
Cluster API 기술 프리뷰의 경우 Operator는 openshift-machine-api 네임스페이스의 작업자 사용자 데이터 시크릿을 사용할 수 있습니다.
4
머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
5
머신 템플릿 이름을 지정합니다.

13.5.2. Google Cloud Platform의 클러스터 API 구성 옵션

중요

클러스터 API를 사용하여 머신을 관리하는 것은 기술 프리뷰 기능만 해당합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

Cluster API 사용자 정의 리소스 매니페스트에서 값을 업데이트하여 GCP(Google Cloud Platform) 클러스터 API 머신의 구성을 변경할 수 있습니다.

13.5.2.1. Google Cloud Platform 클러스터를 구성하는 샘플 YAML

다음 예제 YAML 파일은 Google Cloud Platform 클러스터에 대한 구성을 보여줍니다.

13.5.2.1.1. Google Cloud Platform에서 클러스터 API 인프라 리소스의 샘플 YAML

인프라 리소스는 공급자별로 다르며 리전 및 서브넷과 같이 클러스터의 모든 컴퓨팅 머신 세트에서 공유하는 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 이 리소스를 참조합니다.

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: GCPCluster 1
metadata:
  name: <cluster_name> 2
spec:
  controlPlaneEndpoint: 3
    host: <control_plane_endpoint_address>
    port: 6443
  network:
    name: <cluster_name>-network
  project: <project> 4
  region: <region> 5
1
클러스터의 인프라 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
2
클러스터 ID를 클러스터 이름으로 지정합니다.
3
컨트롤 플레인 끝점의 IP 주소와 액세스하는 데 사용되는 포트를 지정합니다.
4
GCP 프로젝트 이름을 지정합니다.
5
GCP 리전을 지정합니다.
13.5.2.1.2. Google Cloud Platform의 클러스터 API 머신 템플릿 리소스의 샘플 YAML

머신 템플릿 리소스는 공급자마다 다르며 컴퓨팅 머신 세트에서 생성하는 시스템의 기본 속성을 정의합니다. 머신을 생성할 때 컴퓨팅 머신 세트는 이 템플릿을 참조합니다.

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: GCPMachineTemplate 1
metadata:
  name: <template_name> 2
  namespace: openshift-cluster-api
spec:
  template:
    spec: 3
      rootDeviceType: pd-ssd
      rootDeviceSize: 128
      instanceType: n1-standard-4
      image: projects/rhcos-cloud/global/images/rhcos-411-85-202203181601-0-gcp-x86-64
      subnet: <cluster_name>-worker-subnet
      serviceAccounts:
        email: <service_account_email_address>
        scopes:
          - https://www.googleapis.com/auth/cloud-platform
      additionalLabels:
        kubernetes-io-cluster-<cluster_name>: owned
      additionalNetworkTags:
        - <cluster_name>-worker
      ipForwarding: Disabled
1
머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
2
머신 템플릿의 이름을 지정합니다.
3
환경에 대한 세부 정보를 지정합니다. 여기에 있는 값은 예입니다.
13.5.2.1.3. Google Cloud Platform에서 클러스터 API 컴퓨팅 머신 세트 리소스의 샘플 YAML

컴퓨팅 머신 세트 리소스는 생성하는 시스템의 추가 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 인프라 리소스 및 머신 템플릿도 참조합니다.

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 1
  namespace: openshift-cluster-api
spec:
  clusterName: <cluster_name> 2
  replicas: 1
  selector:
    matchLabels:
      test: example
  template:
    metadata:
      labels:
        test: example
    spec:
      bootstrap:
         dataSecretName: worker-user-data 3
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: GCPMachineTemplate 4
        name: <template_name> 5
      failureDomain: <failure_domain> 6
1
컴퓨팅 머신 세트의 이름을 지정합니다.
2
클러스터 ID를 클러스터 이름으로 지정합니다.
3
Cluster API 기술 프리뷰의 경우 Operator는 openshift-machine-api 네임스페이스의 작업자 사용자 데이터 시크릿을 사용할 수 있습니다.
4
머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
5
머신 템플릿 이름을 지정합니다.
6
GCP 리전 내에서 실패 도메인을 지정합니다.

13.5.3. VMware vSphere의 클러스터 API 구성 옵션

중요

클러스터 API를 사용하여 머신을 관리하는 것은 기술 프리뷰 기능만 해당합니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.

Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.

Cluster API 사용자 정의 리소스 매니페스트에서 값을 업데이트하여 VMware vSphere Cluster API 머신의 구성을 변경할 수 있습니다.

13.5.3.1. VMware vSphere 클러스터 구성을 위한 샘플 YAML

다음 예제 YAML 파일은 VMware vSphere 클러스터에 대한 구성을 보여줍니다.

13.5.3.1.1. VMware vSphere에서 클러스터 API 인프라 리소스의 샘플 YAML

인프라 리소스는 공급자별로 다르며 리전 및 서브넷과 같이 클러스터의 모든 컴퓨팅 머신 세트에서 공유하는 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 이 리소스를 참조합니다.

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: VSphereCluster 1
metadata:
  name: <cluster_name> 2
spec:
  controlPlaneEndpoint: 3
    host: <control_plane_endpoint_address>
    port: 6443
  identityRef:
    kind: Secret
    name: <cluster_name>
  server: <vsphere_server> 4
1
클러스터의 인프라 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
2
클러스터 ID를 클러스터 이름으로 지정합니다.
3
컨트롤 플레인 끝점의 IP 주소와 액세스하는 데 사용되는 포트를 지정합니다.
4
클러스터의 vSphere 서버를 지정합니다. 다음 명령을 실행하여 기존 vSphere 클러스터에서 이 값을 찾을 수 있습니다.
$ oc get infrastructure cluster \
  -o jsonpath="{.spec.platformSpec.vsphere.vcenters[0].server}"
13.5.3.1.2. VMware vSphere에서 클러스터 API 머신 템플릿 리소스의 샘플 YAML

머신 템플릿 리소스는 공급자마다 다르며 컴퓨팅 머신 세트에서 생성하는 시스템의 기본 속성을 정의합니다. 머신을 생성할 때 컴퓨팅 머신 세트는 이 템플릿을 참조합니다.

apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
kind: VSphereMachineTemplate 1
metadata:
  name: <template_name> 2
  namespace: openshift-cluster-api
spec:
  template:
    spec: 3
      template: <vm_template_name> 4
      server: <vcenter_server_ip> 5
      diskGiB: 128
      cloneMode: linkedClone 6
      datacenter: <vcenter_data_center_name> 7
      datastore: <vcenter_datastore_name> 8
      folder: <vcenter_vm_folder_path> 9
      resourcePool: <vsphere_resource_pool> 10
      numCPUs: 4
      memoryMiB: 16384
      network:
        devices:
        - dhcp4: true
          networkName: "<vm_network_name>" 11
1
머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
2
머신 템플릿의 이름을 지정합니다.
3
환경에 대한 세부 정보를 지정합니다. 여기에 있는 값은 예입니다.
4
사용할 vSphere VM 템플릿 (예: user-5ddjd-rhcos)을 지정합니다.
5
vCenter 서버 IP 또는 정규화된 도메인 이름을 지정합니다.
6
사용할 VM 복제 유형을 지정합니다. 다음 값이 유효합니다.
  • fullClone
  • linkedClone

linkedClone 유형을 사용하는 경우 디스크 크기는 diskGiB 값을 사용하는 대신 복제 소스와 일치합니다. 자세한 내용은 VM 복제 유형에 대한 vSphere 설명서를 참조하십시오.

7
컴퓨팅 머신 세트를 배포할 vCenter 데이터 센터를 지정합니다.
8
컴퓨팅 머신 세트를 배포할 vCenter 데이터 저장소를 지정합니다.
9
vCenter의 vSphere VM 폴더에 경로(예: /dc1/vm/user-inst-5ddjd)를 지정합니다.
10
VM의 vSphere 리소스 풀을 지정합니다.
11
컴퓨팅 머신 세트를 배포할 vSphere VM 네트워크를 지정합니다. 이 VM 네트워크는 다른 컴퓨팅 시스템이 클러스터에 상주하는 위치여야 합니다.
13.5.3.1.3. VMware vSphere에서 Cluster API 컴퓨팅 머신 세트 리소스의 샘플 YAML

컴퓨팅 머신 세트 리소스는 생성하는 시스템의 추가 속성을 정의합니다. 컴퓨팅 머신 세트는 머신을 생성할 때 인프라 리소스 및 머신 템플릿도 참조합니다.

apiVersion: cluster.x-k8s.io/v1beta1
kind: MachineSet
metadata:
  name: <machine_set_name> 1
  namespace: openshift-cluster-api
spec:
  clusterName: <cluster_name> 2
  replicas: 1
  selector:
    matchLabels:
      test: example
  template:
    metadata:
      labels:
        test: example
    spec:
      bootstrap:
         dataSecretName: worker-user-data 3
      clusterName: <cluster_name>
      infrastructureRef:
        apiVersion: infrastructure.cluster.x-k8s.io/v1beta1
        kind: VSphereMachineTemplate 4
        name: <template_name> 5
      failureDomain: 6
        - name: <failure_domain_name>
          region: <region_a>
          zone: <zone_a>
          server: <vcenter_server_name>
          topology:
            datacenter: <region_a_data_center>
            computeCluster: "</region_a_data_center/host/zone_a_cluster>"
            resourcePool: "</region_a_data_center/host/zone_a_cluster/Resources/resource_pool>"
            datastore: "</region_a_data_center/datastore/datastore_a>"
            networks:
            - port-group
1
컴퓨팅 머신 세트의 이름을 지정합니다.
2
클러스터 ID를 클러스터 이름으로 지정합니다.
3
Cluster API 기술 프리뷰의 경우 Operator는 openshift-machine-api 네임스페이스의 작업자 사용자 데이터 시크릿을 사용할 수 있습니다.
4
머신 템플릿 유형을 지정합니다. 이 값은 플랫폼의 값과 일치해야 합니다.
5
머신 템플릿 이름을 지정합니다.
6
실패 도메인 구성 세부 정보를 지정합니다.
참고

클러스터 API를 사용하는 vSphere 클러스터에서 여러 리전 및 영역을 사용하는 것은 검증된 구성이 아닙니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

Red Hat을 사용하는 고객은 신뢰할 수 있는 콘텐츠가 포함된 제품과 서비스를 통해 혁신하고 목표를 달성할 수 있습니다.

보다 포괄적 수용을 위한 오픈 소스 용어 교체

Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 언어를 교체하기 위해 최선을 다하고 있습니다. 자세한 내용은 다음을 참조하세요.Red Hat 블로그.

Red Hat 소개

Red Hat은 기업이 핵심 데이터 센터에서 네트워크 에지에 이르기까지 플랫폼과 환경 전반에서 더 쉽게 작업할 수 있도록 강화된 솔루션을 제공합니다.

© 2024 Red Hat, Inc.