16.4. Outpost에 엣지 컴퓨팅 머신을 배포하는 컴퓨팅 머신 세트 생성


AWS Outposts에서 엣지 컴퓨팅 머신을 생성하려면 호환되는 구성으로 새 컴퓨팅 머신 세트를 생성해야 합니다.

사전 요구 사항

  • AWS Outposts가 있습니다.
  • AWS의 사용자 지정 VPC에 OpenShift Container Platform 클러스터를 설치했습니다.
  • cluster-admin 권한이 있는 계정을 사용하여 클러스터에 액세스할 수 있습니다.
  • OpenShift CLI(oc)가 설치되어 있습니다.

프로세스

  1. 다음 명령을 실행하여 클러스터의 컴퓨팅 머신 세트를 나열합니다.

    $ oc get machinesets.machine.openshift.io -n openshift-machine-api

    출력 예

    NAME                            DESIRED   CURRENT   READY   AVAILABLE   AGE
    <original_machine_set_name_1>   1         1         1       1           55m
    <original_machine_set_name_2>   1         1         1       1           55m

  2. 기존 컴퓨팅 머신 세트의 이름을 기록합니다.
  3. 다음 방법 중 하나를 사용하여 새 컴퓨팅 머신 세트 CR(사용자 정의 리소스)의 값이 포함된 YAML 파일을 생성합니다.

    • 다음 명령을 실행하여 기존 컴퓨팅 머신 세트 구성을 새 파일에 복사합니다.

      $ oc get machinesets.machine.openshift.io <original_machine_set_name_1> \
        -n openshift-machine-api -o yaml > <new_machine_set_name_1>.yaml

      기본 텍스트 편집기를 사용하여 이 YAML 파일을 편집할 수 있습니다.

    • 원하는 텍스트 편집기를 사용하여 < new_machine_set_name_1>.yaml 이라는 빈 YAML 파일을 생성하고 새 컴퓨팅 머신 세트에 필요한 값을 포함합니다.

      특정 필드에 설정할 값이 확실하지 않은 경우 다음 명령을 실행하여 기존 컴퓨팅 머신 세트 CR의 값을 볼 수 있습니다.

      $ oc get machinesets.machine.openshift.io <original_machine_set_name_1> \
        -n openshift-machine-api -o yaml

      출력 예

      apiVersion: machine.openshift.io/v1beta1
      kind: MachineSet
      metadata:
        labels:
          machine.openshift.io/cluster-api-cluster: <infrastructure_id> 1
        name: <infrastructure_id>-<role>-<availability_zone> 2
        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>-<role>-<availability_zone>
        template:
          metadata:
            labels:
              machine.openshift.io/cluster-api-cluster: <infrastructure_id>
              machine.openshift.io/cluster-api-machine-role: <role>
              machine.openshift.io/cluster-api-machine-type: <role>
              machine.openshift.io/cluster-api-machineset: <infrastructure_id>-<role>-<availability_zone>
          spec:
            providerSpec: 3
      # ...

      1
      클러스터 인프라 ID입니다.
      2
      기본 노드 레이블입니다. AWS Outposts의 경우 outposts 역할을 사용합니다.
      3
      생략된 providerSpec 섹션에는 Outpost에 대해 구성해야 하는 값이 포함되어 있습니다.
  4. <new_machine_set _name_1>.yaml 파일을 편집하여 Outpost에서 에지 컴퓨팅 머신을 생성하도록 새 컴퓨팅 머신 세트를 구성합니다.

    AWS Outposts의 컴퓨팅 머신 세트의 예

    apiVersion: machine.openshift.io/v1beta1
    kind: MachineSet
    metadata:
      labels:
        machine.openshift.io/cluster-api-cluster: <infrastructure_id> 1
      name: <infrastructure_id>-outposts-<availability_zone> 2
      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>-outposts-<availability_zone>
      template:
        metadata:
          labels:
            machine.openshift.io/cluster-api-cluster: <infrastructure_id>
            machine.openshift.io/cluster-api-machine-role: outposts
            machine.openshift.io/cluster-api-machine-type: outposts
            machine.openshift.io/cluster-api-machineset: <infrastructure_id>-outposts-<availability_zone>
        spec:
          metadata:
            labels:
              node-role.kubernetes.io/outposts: ""
              location: outposts
          providerSpec:
            value:
              ami:
                id: <ami_id> 3
              apiVersion: machine.openshift.io/v1beta1
              blockDevices:
                - ebs:
                    volumeSize: 120
                    volumeType: gp2 4
              credentialsSecret:
                name: aws-cloud-credentials
              deviceIndex: 0
              iamInstanceProfile:
                id: <infrastructure_id>-worker-profile
              instanceType: m5.xlarge 5
              kind: AWSMachineProviderConfig
              placement:
                availabilityZone: <availability_zone>
                region: <region> 6
              securityGroups:
                - filters:
                  - name: tag:Name
                    values:
                      - <infrastructure_id>-worker-sg
              subnet:
                id: <subnet_id> 7
              tags:
                - name: kubernetes.io/cluster/<infrastructure_id>
                  value: owned
              userDataSecret:
                name: worker-user-data
          taints: 8
            - key: node-role.kubernetes.io/outposts
              effect: NoSchedule

    1
    클러스터 인프라 ID를 지정합니다.
    2
    컴퓨팅 머신 세트의 이름을 지정합니다. 이름은 클러스터 인프라 ID, outpost s 역할 이름 및 Outpost 가용성 영역으로 구성됩니다.
    3
    AMI(Amazon Machine Image) ID를 지정합니다.
    4
    EBS 볼륨 유형을 지정합니다. AWS Outposts에는 gp2 볼륨이 필요합니다.
    5
    AWS 인스턴스 유형을 지정합니다. Outpost에 구성된 인스턴스 유형을 사용해야 합니다.
    6
    Outpost 가용성 영역이 존재하는 AWS 리전을 지정합니다.
    7
    Outpost의 전용 서브넷을 지정합니다.
    8
    node-role.kubernetes.io/outposts 라벨이 있는 노드에서 워크로드가 예약되지 않도록 테인트를 지정합니다. Outpost에서 사용자 워크로드를 예약하려면 애플리케이션의 배포 리소스에 해당 허용 오차를 지정해야 합니다.
  5. 변경 사항을 저장하십시오.
  6. 다음 명령을 실행하여 컴퓨팅 머신 세트 CR을 생성합니다.

    $ oc create -f <new_machine_set_name_1>.yaml

검증

  • 컴퓨팅 머신 세트가 생성되었는지 확인하려면 다음 명령을 실행하여 클러스터의 컴퓨팅 머신 세트를 나열합니다.

    $ oc get machinesets.machine.openshift.io -n openshift-machine-api

    출력 예

    NAME                            DESIRED   CURRENT   READY   AVAILABLE   AGE
    <new_machine_set_name_1>        1         1         1       1           4m12s
    <original_machine_set_name_1>   1         1         1       1           55m
    <original_machine_set_name_2>   1         1         1       1           55m

  • 새 컴퓨팅 머신 세트에서 관리하는 머신을 나열하려면 다음 명령을 실행합니다.

    $ oc get -n openshift-machine-api machines.machine.openshift.io \
      -l machine.openshift.io/cluster-api-machineset=<new_machine_set_name_1>

    출력 예

    NAME                             PHASE          TYPE        REGION      ZONE         AGE
    <machine_from_new_1>             Provisioned    m5.xlarge   us-east-1   us-east-1a   25s
    <machine_from_new_2>             Provisioning   m5.xlarge   us-east-1   us-east-1a   25s

  • 새 컴퓨팅 머신 세트로 생성한 머신에 올바른 구성이 있는지 확인하려면 다음 명령을 실행하여 새 머신 중 하나에 대해 CR의 관련 필드를 검사합니다.

    $ oc describe machine <machine_from_new_1> -n openshift-machine-api
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.