16.3. 단일 노드 OpenShift의 이미지 기반 설치 정보


openshift-install 프로그램을 사용하여 베어 메탈 호스트에 단일 노드 OpenShift를 사전 설치하기 위한 라이브 설치 ISO를 생성합니다. 설치 프로그램을 다운로드하는 방법에 대한 자세한 내용은 "추가 리소스" 섹션의 "설치 프로세스"를 참조하십시오.

설치 프로그램은 시드 이미지 URL 및 시드 이미지 릴리스 버전 및 설치 프로세스에 사용할 디스크와 같은 기타 입력을 사용하여 라이브 설치 ISO를 생성합니다. 그런 다음 라이브 설치 ISO를 사용하여 호스트를 시작하여 사전 설치를 시작할 수 있습니다. 사전 설치가 완료되면 호스트는 최종 사이트별 구성 및 배포를 위해 원격 사이트에 제공됩니다.

다음은 이미지 기반 설치를 사용하여 단일 노드 OpenShift 클러스터를 사전 설치하는 고급 단계입니다.

  • 시드 이미지를 생성합니다.
  • openshift-install 설치 프로그램을 사용하여 라이브 설치 ISO를 만듭니다.
  • 라이브 설치 ISO를 사용하여 호스트를 부팅하여 호스트를 사전 설치합니다.

추가 리소스

16.3.1. 단일 노드 OpenShift 이미지 기반 설치를 위한 라이브 설치 ISO 생성

openshift-install 프로그램을 사용하여 라이브 설치 ISO에 단일 노드 OpenShift 시드 이미지 URL 및 기타 설치 아티팩트를 포함할 수 있습니다.

참고

image-based-installation-config.yaml 매니페스트의 사양에 대한 자세한 내용은 " image-based-installation-config.yaml 매니페스트에 대한 참조 사양" 섹션을 참조하십시오.

사전 요구 사항

  • 단일 노드 OpenShift 시드 클러스터에서 시드 이미지를 생성했습니다.
  • 최신 버전의 openshift-install 프로그램을 다운로드했습니다.
  • 대상 호스트는 시드 이미지 URL 및 기타 모든 설치 아티팩트에 대한 네트워크 액세스 권한이 있습니다.
  • 정적 네트워킹이 필요한 경우 라이브 설치 ISO를 생성하는 호스트에 nmstatectl 라이브러리를 설치해야 합니다.

프로세스

  1. 라이브 설치 ISO를 생성하고 단일 노드 OpenShift 시드 이미지 URL 및 기타 설치 아티팩트를 포함합니다.

    1. 다음을 실행하여 작업 디렉터리를 생성합니다.

      $ mkdir ibi-iso-workdir 1
      1
      ibi-iso-workdir 을 작업 디렉터리의 이름으로 바꿉니다.
    2. 선택 사항: ImageBasedInstallationConfig 리소스를 구성할 때 참조로 사용할 설치 구성 템플릿을 생성합니다.

      $ openshift-install image-based create image-config-template --dir ibi-iso-workdir 1
      1
      작업 디렉터리를 지정하지 않으면 명령에서 현재 디렉터리를 사용합니다.

      출력 예

      INFO Image-Config-Template created in: ibi-iso-workdir

      이 명령은 대상 디렉터리에 image-based-installation-config.yaml 설치 구성 템플릿을 생성합니다.

      #
      # Note: This is a sample ImageBasedInstallationConfig file showing
      # which fields are available to aid you in creating your
      # own image-based-installation-config.yaml file.
      #
      apiVersion: v1beta1
      kind: ImageBasedInstallationConfig
      metadata:
        name: example-image-based-installation-config
      # The following fields are required
      seedImage: quay.io/openshift-kni/seed-image:4.17.0
      seedVersion: 4.17.0
      installationDisk: /dev/vda
      pullSecret: '<your_pull_secret>'
      # networkConfig is optional and contains the network configuration for the host in NMState format.
      # See https://nmstate.io/examples.html for examples.
      # networkConfig:
      #   interfaces:
      #     - name: eth0
      #       type: ethernet
      #       state: up
      #       mac-address: 00:00:00:00:00:00
      #       ipv4:
      #         enabled: true
      #         address:
      #           - ip: 192.168.122.2
      #             prefix-length: 23
      #         dhcp: false
    3. 설치 구성 파일을 편집합니다.

      image-based-installation-config.yaml 파일의 예

      apiVersion: v1beta1
      kind: ImageBasedInstallationConfig
      metadata:
        name: example-image-based-installation-config
      seedImage: quay.io/repo-id/seed:latest
      seedVersion: "4.17.0"
      extraPartitionStart: "-240G"
      installationDisk: /dev/disk/by-id/wwn-0x62c...
      sshKey: 'ssh-ed25519 AAAA...'
      pullSecret: '{"auths": ...}'
      networkConfig:
          interfaces:
            - name: ens1f0
              type: ethernet
              state: up
              ipv4:
                enabled: true
                dhcp: false
                auto-dns: false
                address:
                  - ip: 192.168.200.25
                    prefix-length: 24
              ipv6:
                enabled: false
          dns-resolver:
            config:
              server:
                - 192.168.15.47
                - 192.168.15.48
          routes:
            config:
            - destination: 0.0.0.0/0
              metric: 150
              next-hop-address: 192.168.200.254
              next-hop-interface: ens1f0

    4. 다음 명령을 실행하여 라이브 설치 ISO를 생성합니다.

      $ openshift-install image-based create image --dir ibi-iso-workdir

      출력 예

      INFO Consuming Image-based Installation ISO Config from target directory
      INFO Creating Image-based Installation ISO with embedded ignition

검증

  • 작업 디렉터리의 출력을 확인합니다.

    ibi-iso-workdir/
      └── rhcos-ibi.iso

16.3.2. 호스트에 라이브 설치 ISO 프로비저닝

선호하는 방법을 사용하여 rhcos-ibi.iso 라이브 설치 ISO에서 대상 베어 메탈 호스트를 부팅하여 단일 노드 OpenShift를 사전 설치합니다.

검증

  1. 대상 호스트에 로그인합니다.
  2. 다음 명령을 실행하여 시스템 로그를 확인합니다.

    $ journalctl -b

    출력 예

    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13T17:01:44Z" level=info msg="All the precaching threads have finished."
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13T17:01:44Z" level=info msg="Total Images: 125"
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13T17:01:44Z" level=info msg="Images Pulled Successfully: 125"
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13T17:01:44Z" level=info msg="Images Failed to Pull: 0"
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13T17:01:44Z" level=info msg="Completed executing pre-caching"
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13T17:01:44Z" level=info msg="Pre-cached images successfully."
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13 17:01:44" level=info msg="Skipping shutdown"
    Aug 13 17:01:44 10.46.26.129 install-rhcos-and-restore-seed.sh[2876]: time="2024-08-13 17:01:44" level=info msg="IBI preparation process finished successfully!"
    Aug 13 17:01:44 10.46.26.129 systemd[1]: var-lib-containers-storage-overlay.mount: Deactivated successfully.
    Aug 13 17:01:44 10.46.26.129 systemd[1]: Finished SNO Image-based Installation.
    Aug 13 17:01:44 10.46.26.129 systemd[1]: Reached target Multi-User System.
    Aug 13 17:01:44 10.46.26.129 systemd[1]: Reached target Graphical Interface.

16.3.3. image-based-installation-config.yaml 매니페스트에 대한 참조 사양

다음 콘텐츠는 image-based-installation-config.yaml 매니페스트의 사양을 설명합니다.

openshift-install 프로그램은 image-based-installation-config.yaml 매니페스트를 사용하여 단일 노드 OpenShift의 이미지 기반 설치를 위한 라이브 설치 ISO를 생성합니다.

표 16.4. 필수 사양
사양유형설명

seedImage

string

ISO 생성 프로세스에 사용할 초기 이미지를 지정합니다.

seedVersion

string

seed 이미지의 OpenShift Container Platform 릴리스 버전을 지정합니다. 시드 이미지의 릴리스 버전은 seedVersion 필드에 지정하는 릴리스 버전과 일치해야 합니다.

installationDisk

string

설치 프로세스에 사용할 디스크를 지정합니다.

디스크 검색 순서가 보장되지 않으므로 디스크의 커널 이름은 여러 디스크가 있는 시스템의 부팅 옵션 간에 변경될 수 있습니다. 예를 들어 /dev/sda/dev/sdb 가 되고 그 반대의 경우도 마찬가지입니다. 이 문제를 방지하려면 디스크 WWN(World Wide Name)과 같은 영구 디스크 속성을 사용해야 합니다(예: /dev/disk/by-id/wwn-<disk-id > ).

pullSecret

string

사전 캐시 프로세스 중에 사용할 풀 시크릿을 지정합니다. 풀 시크릿에는 컨테이너 레지스트리에서 릴리스 페이로드 이미지를 가져오는 데 필요한 인증 정보가 포함되어 있습니다.

시드 이미지에 별도의 프라이빗 레지스트리 인증이 필요한 경우 인증 세부 정보를 가져오기 보안에 추가합니다.

표 16.5. 선택적 사양
사양유형설명

shutdown

boolean

설치 프로세스가 완료된 후 호스트가 종료되는지 여부를 지정합니다. 기본값은 false입니다.

extraPartitionStart

string

/var/lib/containers 에 사용되는 추가 파티션의 시작을 지정합니다. 기본값은 -40Gb 입니다. 즉, 파티션 크기는 정확히 40Gb이고 디스크 끝의 공간 40Gb를 사용합니다. 양수 값을 지정하면 파티션은 디스크의 해당 위치에서 시작하여 디스크의 끝으로 확장됩니다.

extraPartitionLabel

string

/var/lib/containers 에 사용하는 추가 파티션의 레이블입니다. 기본 파티션 레이블은 varlibcontainers 입니다.

참고

설치 ISO의 파티션 레이블이 시드 이미지의 시스템 구성에 설정된 파티션 레이블과 일치하는지 확인해야 합니다. 파티션 레이블이 다르면 호스트에 설치하는 동안 파티션 마운트가 실패합니다. 자세한 내용은 "ostree stateroots 간에 공유 컨테이너 파티션 구성"을 참조하십시오.

extraPartitionNumber

서명되지 않은 정수

/var/lib/containers 에 사용하는 추가 파티션의 수입니다. 기본값은 5 입니다.

skipDiskCleanup

boolean

설치 프로세스는 호스트의 디스크를 포맷합니다. 이 단계를 건너뛰려면 이 사양을 'true'로 설정합니다. 기본값은 false입니다.

networkConfig

string

호스트에 대한 네트워킹 구성을 지정합니다. 예를 들면 다음과 같습니다.

networkConfig:
    interfaces:
      - name: ens1f0
        type: ethernet
        state: up
        ...

정적 네트워킹이 필요한 경우 라이브 설치 ISO를 생성하는 호스트에 nmstatectl 라이브러리를 설치해야 합니다. nmstate를 사용하여 네트워크 구성을 정의하는 방법에 대한 자세한 내용은 nmstate.io 를 참조하십시오.

중요

인터페이스 이름은 운영 체제에 표시된 대로 실제 NIC 이름과 일치해야 합니다.

proxy

string

설치 ISO 생성 중에 사용할 프록시 설정을 지정합니다. 예를 들면 다음과 같습니다.

proxy:
  httpProxy: "http://proxy.example.com:8080"
  httpsProxy: "http://proxy.example.com:8080"
  noProxy: "no_proxy.example.com"

imageDigestSources

string

릴리스 이미지 콘텐츠의 소스 또는 리포지토리를 지정합니다. 예를 들면 다음과 같습니다.

imageDigestSources:
  - mirrors:
      - "registry.example.com:5000/ocp4/openshift4"
    source: "quay.io/openshift-release-dev/ocp-release"

additionalTrustBundle

string

PEM 인코딩 X.509 인증서 번들을 지정합니다. 설치 프로그램은 설치 ISO의 /etc/pki/ca-trust/source/anchors/ 디렉터리에 추가합니다.

additionalTrustBundle: |
  -----BEGIN CERTIFICATE-----
  MTICLDCCAdKgAwfBAgIBAGAKBggqhkjOPQRDAjB9MQswCQYRVEQGE
  ...
  l2wOuDwKQa+upc4GftXE7C//4mKBNBC6Ty01gUaTIpo=
  -----END CERTIFICATE-----

sshKey

string

호스트에 대한 액세스를 인증할 SSH 키를 지정합니다.

ignitionConfigOverride

string

Ignition 구성에 대한 사용자 덮어쓰기가 포함된 JSON 문자열을 지정합니다. 구성은 설치 프로그램에서 생성된 Ignition 구성 파일과 병합됩니다. 이 기능을 사용하려면 Ignition 버전이 3.2 이상이어야 합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.