4.4. GCP에서 다중 아키텍처 컴퓨팅 머신이 있는 클러스터 생성


다중 아키텍처 컴퓨팅 머신이 있는 GCP(Google Cloud Platform) 클러스터를 생성하려면 먼저 다중 아키텍처 설치 프로그램 바이너리를 사용하여 단일 아키텍처 GCP 설치 관리자 프로비저닝 클러스터를 생성해야 합니다. AWS 설치에 대한 자세한 내용은 사용자 지정을 사용하여 GCP에 클러스터 설치를 참조하십시오. 그런 다음 GCP 클러스터에 ARM64 컴퓨팅 머신 세트를 추가할 수 있습니다.

참고

현재 GCP용 ARM64 시스템에서 보안 부팅이 지원되지 않습니다.

4.4.1. 클러스터 호환성 확인

다른 아키텍처의 컴퓨팅 노드를 클러스터에 추가하려면 먼저 클러스터가 다중 아키텍처 호환인지 확인해야 합니다.

사전 요구 사항

  • OpenShift CLI(oc)가 설치되어 있어야 합니다.

프로세스

  • 다음 명령을 실행하여 클러스터에서 아키텍처 페이로드를 사용하는지 확인할 수 있습니다.

    $ oc adm release info -o jsonpath="{ .metadata.metadata}"

검증

  1. 다음 출력이 표시되면 클러스터에서 다중 아키텍처 페이로드를 사용하는 것입니다.

    {
     "release.openshift.io/architecture": "multi",
     "url": "https://access.redhat.com/errata/<errata_version>"
    }

    그런 다음 클러스터에 다중 아키텍처 컴퓨팅 노드 추가를 시작할 수 있습니다.

  2. 다음 출력이 표시되면 클러스터에서 다중 아키텍처 페이로드를 사용하지 않습니다.

    {
     "url": "https://access.redhat.com/errata/<errata_version>"
    }
    중요

    클러스터가 다중 아키텍처 컴퓨팅 머신을 지원하도록 클러스터를 마이그레이션하려면 다중 아키텍처 컴퓨팅 머신이 있는 클러스터로 마이그레이션 절차를 따르십시오.

4.4.2. GCP 클러스터에 ARM64 컴퓨팅 머신 세트 추가

다중 아키텍처 컴퓨팅 머신을 사용하여 클러스터를 구성하려면 GCP ARM64 컴퓨팅 머신 세트를 생성해야 합니다. 그러면 클러스터에 ARM64 컴퓨팅 노드가 추가됩니다.

사전 요구 사항

  • OpenShift CLI(oc)를 설치합니다.
  • 설치 프로그램을 사용하여 다중 아키텍처 설치 프로그램 바이너리를 사용하여 AMD64 단일 아키텍처 AWS 클러스터를 생성했습니다.

프로세스

  • 컴퓨팅 머신 세트를 생성하고 수정합니다. 이렇게 하면 클러스터의 ARM64 컴퓨팅 노드가 제어됩니다.

    $ oc create -f gcp-arm64-machine-set-0.yaml

    ARM64 컴퓨팅 노드를 배포하기 위한 샘플 GCP YAML 컴퓨팅 머신 세트

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    metadata:
      labels:
        machine.openshift.io/cluster-api-cluster: <infrastructure_id> 1
      name: <infrastructure_id>-w-a
      namespace: openshift-machine-api
    spec:
      replicas: 1
      selector:
        matchLabels:
          machine.openshift.io/cluster-api-cluster: <infrastructure_id>
          machine.openshift.io/cluster-api-machineset: <infrastructure_id>-w-a
      template:
        metadata:
          creationTimestamp: null
          labels:
            machine.openshift.io/cluster-api-cluster: <infrastructure_id>
            machine.openshift.io/cluster-api-machine-role: <role> 2
            machine.openshift.io/cluster-api-machine-type: <role>
            machine.openshift.io/cluster-api-machineset: <infrastructure_id>-w-a
        spec:
          metadata:
            labels:
              node-role.kubernetes.io/<role>: ""
          providerSpec:
            value:
              apiVersion: gcpprovider.openshift.io/v1beta1
              canIPForward: false
              credentialsSecret:
                name: gcp-cloud-credentials
              deletionProtection: false
              disks:
              - autoDelete: true
                boot: true
                image: <path_to_image> 3
                labels: null
                sizeGb: 128
                type: pd-ssd
              gcpMetadata: 4
              - key: <custom_metadata_key>
                value: <custom_metadata_value>
              kind: GCPMachineProviderSpec
              machineType: n1-standard-4 5
              metadata:
                creationTimestamp: null
              networkInterfaces:
              - network: <infrastructure_id>-network
                subnetwork: <infrastructure_id>-worker-subnet
              projectID: <project_name> 6
              region: us-central1 7
              serviceAccounts:
              - email: <infrastructure_id>-w@<project_name>.iam.gserviceaccount.com
                scopes:
                - https://www.googleapis.com/auth/cloud-platform
              tags:
                - <infrastructure_id>-worker
              userDataSecret:
                name: worker-user-data
              zone: us-central1-a

    1
    클러스터를 프로비저닝할 때 설정한 클러스터 ID를 기반으로 하는 인프라 ID를 지정합니다. 다음 명령을 실행하여 인프라 ID를 가져올 수 있습니다.
    $ oc get -o jsonpath='{.status.infrastructureName}{"\n"}' infrastructure cluster
    2
    추가할 역할 노드 레이블을 지정합니다.
    3
    현재 컴퓨팅 머신 세트에 사용되는 이미지의 경로를 지정합니다. 이미지 경로에 프로젝트 및 이미지 이름이 필요합니다.

    프로젝트 및 이미지 이름에 액세스하려면 다음 명령을 실행합니다.

    $ oc get configmap/coreos-bootimages \
      -n openshift-machine-config-operator \
      -o jsonpath='{.data.stream}' | jq \
      -r '.architectures.aarch64.images.gcp'

    출력 예

      "gcp": {
        "release": "415.92.202309142014-0",
        "project": "rhcos-cloud",
        "name": "rhcos-415-92-202309142014-0-gcp-aarch64"
      }

    출력의 projectname 매개변수를 사용하여 머신 세트의 이미지 필드 경로를 생성합니다. 이미지 경로는 다음 형식을 따라야 합니다.

    $ projects/<project>/global/images/<image_name>
    4
    선택 사항: 키:값 쌍 형식으로 사용자 지정 메타데이터를 지정합니다. 사용 사례의 예는 사용자 정의 메타데이터 설정에 대한 GCP 설명서를 참조하십시오.
    5
    ARM64 지원 머신 유형을 지정합니다. 자세한 내용은 "추가 리소스"의 64비트 ARM 인프라에서 GCP의 테스트된 인스턴스 유형을 참조하십시오.
    6
    클러스터에 사용하는 GCP 프로젝트의 이름을 지정합니다.
    7
    리전을 지정합니다(예: us-central1 ). 선택한 영역이 64비트 ARM 시스템을 제공하는지 확인합니다.

검증

  1. 다음 명령을 입력하여 컴퓨팅 머신 세트 목록을 확인합니다.

    $ oc get machineset -n openshift-machine-api

    그런 다음 생성된 ARM64 머신 세트를 볼 수 있습니다.

    출력 예

    NAME                                                DESIRED  CURRENT  READY  AVAILABLE  AGE
    <infrastructure_id>-gcp-arm64-machine-set-0                   2        2      2          2  10m

  2. 다음 명령을 사용하여 노드가 준비되고 조정 가능한지 확인할 수 있습니다.

    $ oc get nodes
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.