1.7.3.9.3. 명령줄을 사용하여 클러스터 생성


중앙 인프라 관리 구성 요소 내에서 지원 설치 관리자 기능을 사용하여 콘솔 없이 클러스터를 생성할 수도 있습니다. 이 절차를 완료하면 생성된 검색 이미지에서 호스트를 부팅할 수 있습니다. 절차 순서는 일반적으로 중요하지 않지만 필요한 순서가 있을 때 표시됩니다.

1.7.3.9.3.1. 네임스페이스 생성

리소스에 대한 네임스페이스가 필요합니다. 공유 네임스페이스의 모든 리소스를 유지하는 것이 더 편리합니다. 이 예제에서는 네임스페이스 이름에 sample-namespace 를 사용하지만 assisted-installer 를 제외한 모든 이름을 사용할 수 있습니다. 다음 파일을 생성하고 적용하여 네임스페이스를 생성합니다.

apiVersion: v1
kind: Namespace
metadata:
  name: sample-namespace
1.7.3.9.3.2. 네임스페이스에 풀 시크릿 추가

다음 사용자 정의 리소스를 생성하고 적용하여 네임스페이스에 풀 시크릿 을 추가합니다.

apiVersion: v1
kind: Secret
type: kubernetes.io/dockerconfigjson
metadata:
  name: <pull-secret>
  namespace: sample-namespace
stringData:
  .dockerconfigjson: 'your-pull-secret-json' 
1
1 1
풀 시크릿의 콘텐츠를 추가합니다. 예를 들어 cloud.openshift.com,quay.io 또는 registry.redhat.io 인증이 포함될 수 있습니다.
1.7.3.9.3.3. Generate a ClusterImageSet

다음 사용자 정의 리소스를 생성하고 적용하여 클러스터의 OpenShift Container Platform 버전을 지정하는 CustomImageSet 을 생성합니다.

apiVersion: hive.openshift.io/v1
kind: ClusterImageSet
metadata:
  name: openshift-v4.15.0
spec:
  releaseImage: quay.io/openshift-release-dev/ocp-release:4.15.0-rc.0-x86_64

참고: hub 클러스터와 다른 아키텍처가 있는 관리 클러스터를 설치하는 경우 다중 아키텍처 ClusterImageSet 을 생성해야 합니다. 자세한 내용은 다른 아키텍처에 클러스터를 배포할 릴리스 이미지 생성을 참조하십시오.

1.7.3.9.3.4. ClusterDeployment 사용자 정의 리소스 생성

ClusterDeployment 사용자 정의 리소스 정의는 클러스터의 라이프사이클을 제어하는 API입니다. 클러스터 매개변수를 정의하는 spec.ClusterInstallRef 설정에서 AgentClusterInstall 사용자 정의 리소스를 참조합니다.

다음 예제를 기반으로 ClusterDeployment 사용자 정의 리소스를 생성하고 적용합니다.

apiVersion: hive.openshift.io/v1
kind: ClusterDeployment
metadata:
  name: single-node
  namespace: demo-worker4
spec:
  baseDomain: hive.example.com
  clusterInstallRef:
    group: extensions.hive.openshift.io
    kind: AgentClusterInstall
    name: test-agent-cluster-install 
1

    version: v1beta1
  clusterName: test-cluster
  controlPlaneConfig:
    servingCertificates: {}
  platform:
    agentBareMetal:
      agentSelector:
        matchLabels:
          location: internal
  pullSecretRef:
    name: <pull-secret> 
2
1
AgentClusterInstall 리소스의 이름을 사용합니다.
2
1.7.3.9.3.5. AgentClusterInstall 사용자 정의 리소스 생성

AgentClusterInstall 사용자 정의 리소스에서 클러스터에 대한 많은 요구 사항을 지정할 수 있습니다. 예를 들어 클러스터 네트워크 설정, 플랫폼, 컨트롤 플레인 수 및 작업자 노드를 지정할 수 있습니다.

다음 예와 유사한 사용자 정의 리소스를 생성하고 추가합니다.

apiVersion: extensions.hive.openshift.io/v1beta1
kind: AgentClusterInstall
metadata:
  name: test-agent-cluster-install
  namespace: demo-worker4
spec:
  platformType: BareMetal 
1

  clusterDeploymentRef:
    name: single-node 
2

  imageSetRef:
    name: openshift-v4.15.0 
3

  networking:
    clusterNetwork:
    - cidr: 10.128.0.0/14
      hostPrefix: 23
    machineNetwork:
    - cidr: 192.168.111.0/24
    serviceNetwork:
    - 172.30.0.0/16
  provisionRequirements:
    controlPlaneAgents: 1
  sshPublicKey: ssh-rsa <your-public-key-here> 
4
1
클러스터가 생성되는 환경의 플랫폼 유형을 지정합니다. 유효한 값은 BareMetal,None,VSphere,Nutanix 또는 External 입니다.
2
ClusterDeployment 리소스에 사용한 것과 동일한 이름을 사용합니다.
3
Generate a ClusterImageSet 에서 생성한 ClusterImageSet을 사용합니다.
4
SSH 공개 키를 지정하여 호스트를 설치한 후 액세스할 수 있습니다.
1.7.3.9.3.6. 선택 사항: NMStateConfig 사용자 정의 리소스 생성

NMStateConfig 사용자 지정 리소스는 정적 IP 주소와 같은 호스트 수준 네트워크 구성이 있는 경우에만 필요합니다. 이 사용자 정의 리소스를 포함하는 경우 InfraEnv 사용자 정의 리소스를 생성하기 전에 이 단계를 완료해야 합니다. NMStateConfigInfraEnv 사용자 정의 리소스의 spec.nmStateConfigLabelSelector 값으로 참조합니다.

다음 예와 유사한 NMStateConfig 사용자 지정 리소스를 생성하고 적용합니다. 필요한 경우 값을 바꿉니다.

apiVersion: agent-install.openshift.io/v1beta1
kind: NMStateConfig
metadata:
  name: <mynmstateconfig>
  namespace: <demo-worker4>
  labels:
    demo-nmstate-label: <value>
spec:
  config:
    interfaces:
      - name: eth0
        type: ethernet
        state: up
        mac-address: 02:00:00:80:12:14
        ipv4:
          enabled: true
          address:
            - ip: 192.168.111.30
              prefix-length: 24
          dhcp: false
      - name: eth1
        type: ethernet
        state: up
        mac-address: 02:00:00:80:12:15
        ipv4:
          enabled: true
          address:
            - ip: 192.168.140.30
              prefix-length: 24
          dhcp: false
    dns-resolver:
      config:
        server:
          - 192.168.126.1
    routes:
      config:
        - destination: 0.0.0.0/0
          next-hop-address: 192.168.111.1
          next-hop-interface: eth1
          table-id: 254
        - destination: 0.0.0.0/0
          next-hop-address: 192.168.140.1
          next-hop-interface: eth1
          table-id: 254
  interfaces:
    - name: "eth0"
      macAddress: "02:00:00:80:12:14"
    - name: "eth1"
      macAddress: "02:00:00:80:12:15"

참고: demo-nmstate-label 레이블 이름과 값을 InfraEnv 리소스 spec.nmStateConfigLabelSelector.matchLabels 필드에 포함해야 합니다.

1.7.3.9.3.7. InfraEnv 사용자 정의 리소스 생성

InfraEnv 사용자 지정 리소스는 검색 ISO를 생성하는 구성을 제공합니다. 이 사용자 정의 리소스 내에서 프록시 설정, ignition 덮어쓰기 및 NMState 레이블의 값을 식별합니다. 이 사용자 정의 리소스의 spec.nmStateConfigLabelSelector 값은 NMStateConfig 사용자 지정 리소스를 참조합니다.

참고: optional NMStateConfig 사용자 지정 리소스를 포함하려는 경우 InfraEnv 사용자 정의 리소스에서 참조해야 합니다. NMStateConfig 사용자 지정 리소스를 생성하기 전에 InfraEnv 사용자 지정 리소스를 생성하는 경우 InfraEnv 사용자 정의 리소스를 편집하여 NMStateConfig 사용자 지정 리소스를 참조하고 참조가 추가된 후 ISO를 다운로드합니다.

다음 사용자 정의 리소스를 생성하고 적용합니다.

apiVersion: agent-install.openshift.io/v1beta1
kind: InfraEnv
metadata:
  name: myinfraenv
  namespace: demo-worker4
spec:
  clusterRef:
    name: single-node  
1

    namespace: demo-worker4 
2

  pullSecretRef:
    name: pull-secret
  sshAuthorizedKey: <your_public_key_here>
  nmStateConfigLabelSelector:
    matchLabels:
      demo-nmstate-label: value
  proxy:
    httpProxy: http://USERNAME:PASSWORD@proxy.example.com:PORT
    httpsProxy: https://USERNAME:PASSWORD@proxy.example.com:PORT
    noProxy: .example.com,172.22.0.0/24,10.10.0.0/24
1
ClusterDeployment 만들기 에서 clusterDeployment 리소스 이름을 바꿉니다.
2
1.7.3.9.3.7.1. InfraEnv 필드 테이블
Expand
필드선택 사항 또는 필수설명

sshAuthorizedKey

선택 사항

검색 ISO 이미지에서 부팅될 때 호스트에 액세스할 수 있는 SSH 공개 키를 지정할 수 있습니다.

nmStateConfigLabelSelector

선택 사항

호스트의 고정 IP, 브리지 및 본딩과 같은 고급 네트워크 구성을 통합합니다. 호스트 네트워크 구성은 선택한 라벨을 사용하여 하나 이상의 NMStateConfig 리소스에 지정됩니다. nmStateConfigLabelSelector 속성은 선택한 라벨과 일치하는 Kubernetes 라벨 선택기입니다. 이 라벨 선택기와 일치하는 모든 NMStateConfig 라벨의 네트워크 구성은 Discovery Image에 포함됩니다. 부팅 시 각 호스트를 네트워크 인터페이스와 비교하고 적절한 구성을 적용합니다.

proxy

선택 사항

proxy 섹션에서 검색하는 동안 호스트에 필요한 프록시 설정을 지정할 수 있습니다.

참고: IPv6로 프로비저닝할 때 noProxy 설정에서 CIDR 주소 블록을 정의할 수 없습니다. 각 주소를 별도로 정의해야 합니다.

1.7.3.9.3.8. 검색 이미지에서 호스트 부팅

나머지 단계에서는 이전 절차의 결과 검색 ISO 이미지에서 호스트를 부팅하는 방법을 설명합니다.

  1. 다음 명령을 실행하여 네임스페이스에서 검색 이미지를 다운로드합니다.

    curl --insecure -o image.iso $(kubectl -n sample-namespace get infraenvs.agent-install.openshift.io myinfraenv -o=jsonpath="{.status.isoDownloadURL}")
  2. 검색 이미지를 가상 미디어, USB 드라이브 또는 다른 스토리지 위치로 이동하고 다운로드한 검색 이미지에서 호스트를 부팅합니다.
  3. 에이전트 리소스는 자동으로 생성됩니다. 클러스터에 등록되어 있으며 검색 이미지에서 부팅되는 호스트를 나타냅니다. Agent 사용자 정의 리소스를 승인하고 다음 명령을 실행하여 설치를 시작합니다.

    oc -n sample-namespace patch agents.agent-install.openshift.io 07e80ea9-200c-4f82-aff4-4932acb773d4 -p '{"spec":{"approved":true}}' --type merge

    에이전트 이름 및 UUID를 값으로 바꿉니다.

    이전 명령의 출력에 APPROVED 매개변수에 true 값이 포함된 대상 클러스터의 항목이 포함될 때 승인되었는지 확인할 수 있습니다.

Red Hat logoGithubredditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 소개

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

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

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

Red Hat 문서 정보

Legal Notice

Theme

© 2026 Red Hat
맨 위로 이동