5.11. RHCOS 설치 및 OpenShift Container Platform 부트스트랩 프로세스 시작


프로비저닝하는 IBM Z 인프라에 OpenShift Container Platform을 설치하려면 RHCOS(Red Hat Enterprise Linux Core OS)를 RHEL(Red Hat Enterprise Linux) 게스트 가상 시스템으로 설치해야 합니다. RHCOS를 설치할 때 설치 중인 머신 유형에 대해 OpenShift Container Platform 설치 프로그램에서 생성한 Ignition 구성 파일을 제공해야 합니다. 적합한 네트워킹, DNS 및 로드 밸런싱 인프라를 구성한 경우 RHCOS 머신이 재부팅된 후 OpenShift Container Platform 부트스트랩 프로세스가 자동으로 시작됩니다.

사전 패키징된 QEMU COW2(QCOW2) 디스크 이미지를 사용하는 RHCOS의 빠른 트랙 설치를 수행할 수 있습니다. 또는 새 QCOW2 디스크 이미지에서 전체 설치를 수행할 수도 있습니다.

시스템에 보안을 추가하려면 빠른 설치를 진행하기 전에 IBM Secure Execution를 사용하여 RHCOS를 선택적으로 설치할 수 있습니다.

5.11.1. IBM Secure Execution를 사용하여 RHCOS 설치

IBM Secure Execution를 사용하여 RHCOS를 설치하기 전에 기본 인프라를 준비해야 합니다.

중요

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

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

사전 요구 사항

  • IBM z15 이상 또는 IBM® LinuxONE III 이상
  • RHEL(Red Hat Enterprise Linux) 8 이상.
  • 부트스트랩 Ignition 파일이 있습니다. 파일이 보호되지 않아 다른 사용자가 보고 편집할 수 있습니다.
  • 설치 후 부팅 이미지가 변경되지 않았는지 확인했습니다.
  • 모든 노드를 IBM 보안 실행 게스트로 실행해야 합니다.

프로세스

  1. IBM Secure Execution를 지원할 RHEL KVM 호스트를 준비합니다.

    • 기본적으로 KVM 호스트는 IBM Secure Execution 모드에서 게스트를 지원하지 않습니다. IBM Secure Execution 모드에서 게스트를 지원하려면 KVM 호스트는 커널 매개변수 사양 prot_virt=1 을 사용하여 LPAR 모드에서 부팅해야 합니다. RHEL 8에서 prot_virt=1 을 활성화하려면 다음 단계를 따르십시오.

      1. /boot/loader/entries/ 로 이동하여 부트로더 구성 파일 *.conf 를 수정합니다.
      2. 커널 명령줄 매개변수 prot_virt=1 을 추가합니다.
      3. zipl 명령을 실행하고 시스템을 재부팅합니다.

        IBM Secure Execution for Linux를 성공적으로 지원하는 KVM 호스트는 다음 커널 메시지를 발행합니다.

        prot_virt: Reserving <amount>MB as ultravisor base storage.
      4. KVM 호스트가 IBM Secure Execution를 지원하는지 확인하려면 다음 명령을 실행합니다.

        # cat /sys/firmware/uv/prot_virt_host

        출력 예

        1

        이 속성의 값은 보안 호스트의 값과 일치하는 환경을 감지하는 Linux 인스턴스의 경우 1입니다. 다른 인스턴스의 경우 값은 0입니다.

  2. Ignition을 통해 KVM 게스트에 호스트 키를 추가합니다.

    첫 번째 부팅 중에 RHCOS는 호스트 키를 찾아 다시 암호화합니다. RHCOS는 /etc/se-hostkeys 디렉토리에서 ibm-z-hostkey- 로 시작하는 파일을 검색합니다. 클러스터가 실행 중인 각 시스템의 모든 호스트 키는 관리자가 디렉터리에 로드해야 합니다. 처음 부팅한 후에는 다른 머신에서 VM을 실행할 수 없습니다.

    참고

    안전한 시스템에서 Ignition 파일을 준비해야 합니다. 예를 들어, 또 다른 IBM Secure Execution 게스트입니다.

    예를 들면 다음과 같습니다.

    {
      "ignition": { "version": "3.0.0" },
      "storage": {
        "files": [
          {
            "path": "/etc/se-hostkeys/ibm-z-hostkey-<your-hostkey>.crt",
            "contents": {
              "source": "data:;base64,<base64 encoded hostkey document>"
            },
            "mode": 420
          },
          {
            "path": "/etc/se-hostkeys/ibm-z-hostkey-<your-hostkey>.crt",
            "contents": {
              "source": "data:;base64,<base64 encoded hostkey document>"
            },
            "mode": 420
          }
        ]
      }
    }
    ```
    참고

    노드가 여러 IBM Z 머신에서 실행할 수 있도록 하려면 필요한 만큼 호스트 키를 추가할 수 있습니다.

  3. Base64로 인코딩된 문자열을 생성하려면 다음 명령을 실행합니다.

    base64 <your-hostkey>.crt

    전체 이미지가 Ignition 단계 전에 임의로 생성된 LUKS 암호로 암호화되므로 시스템의 첫 번째 부팅이 더 길었습니다.

  4. 빠른 설치 절차에 따라 IBM Secure Exection QCOW 이미지를 사용하여 노드를 설치합니다.

5.11.2. 사전 패키징된 QCOW2 디스크 이미지를 사용한 빠른 설치

RHCOS(Red Hat Enterprise Linux CoreOS)의 빠른 설치에서 머신을 생성하고 사전 패키징된 RHCOS(Red Hat Enterprise Linux CoreOS) QEMU COW2(QCOW2) 디스크 이미지를 가져오려면 다음 단계를 완료합니다.

사전 요구 사항

  • 이 절차에서 RHEL KVM 호스트라고 하는 KVM을 사용하여 RHEL 8.4 이상에서 실행 중인 하나 이상의 LPAR.
  • RHEL KVM 호스트에 KVM/QEMU 하이퍼바이저가 설치되어 있어야 합니다.
  • 노드의 호스트 이름 및 역방향 조회를 수행할 수 있는 DNS(Domain name server)입니다.
  • IP 주소를 제공하는 DHCP 서버입니다.

프로세스

  1. Red Hat Customer Portal의 제품 다운로드 페이지 또는 RHCOS 이미지 미러 페이지에서 RHEL QCOW2(QEMU copy-on-write) 디스크 이미지 파일을 받습니다.

    중요

    RHCOS 이미지는 OpenShift Container Platform 릴리스에 따라 변경되지 않을 수 있습니다. 설치하는 OpenShift Container Platform 버전과 같거나 그 이하의 버전 중 가장 최신 버전의 이미지를 다운로드해야 합니다. 다음 프로세스에 설명된 적절한 RHCOS QCOW2 이미지만 사용합니다.

  2. QCOW2 디스크 이미지 및 Ignition 파일을 RHEL KVM 호스트의 공통 디렉터리에 다운로드합니다.

    예: /var/lib/libvirt/images

    참고

    Ignition 파일은 OpenShift Container Platform 설치 프로그램에서 생성됩니다.

  3. 각 KVM 게스트 노드에 대해 QCOW2 디스크 이미지 백업 파일을 사용하여 새 디스크 이미지를 생성합니다.

    $ qemu-img create -f qcow2 -F qcow2 -b /var/lib/libvirt/images/{source_rhcos_qemu} /var/lib/libvirt/images/{vmname}.qcow2 {size}
  4. Ignition 파일 및 새 디스크 이미지를 사용하여 새 KVM 게스트 노드를 생성합니다.

    $ virt-install --noautoconsole \
       --connect qemu:///system \
       --name {vn_name} \
       --memory {memory} \
       --vcpus {vcpus} \
       --disk {disk} \
       --import \
       --network network={network},mac={mac} \
       --disk path={ign_file},format=raw,readonly=on,serial=ignition,startup_policy=optional

5.11.3. 새 QCOW2 디스크 이미지에 전체 설치

새 QCOW2(QCOW2) 디스크 이미지에 전체 설치로 머신을 생성하려면 다음 단계를 완료합니다.

사전 요구 사항

  • 이 절차에서 RHEL KVM 호스트라고 하는 KVM을 사용하여 RHEL 8.4 이상에서 실행 중인 하나 이상의 LPAR.
  • RHEL KVM 호스트에 KVM/QEMU 하이퍼바이저가 설치되어 있어야 합니다.
  • 노드의 호스트 이름 및 역방향 조회를 수행할 수 있는 DNS(Domain name server)입니다.
  • HTTP 또는 HTTPS 서버가 설정됩니다.

프로세스

  1. Red Hat Customer Portal의 Product Downloads 페이지 또는 RHCOS image mirror 페이지에서RHEL kernel, initramfs, rootfs 파일을 받으십시오.

    중요

    RHCOS 이미지는 OpenShift Container Platform 릴리스에 따라 변경되지 않을 수 있습니다. 설치하는 OpenShift Container Platform 버전과 같거나 그 이하의 버전 중 가장 최신 버전의 이미지를 다운로드해야 합니다. 다음 프로세스에 설명된 적절한 RHCOS QCOW2 이미지만 사용합니다.

    OpenShift Container Platform 버전 번호가 파일 이름에 포함됩니다. 다음 예와 유사합니다.

    • kernel: rhcos-<version>-live-kernel-<architecture>
    • initramfs: rhcos-<version>-live-initramfs.<architecture>.img
    • rootfs: rhcos-<version>-live-rootfs.<architecture>.img
  2. virt-install을 시작하기 전에 다운로드한 RHEL 라이브 커널, initramfs 및 rootfs 및 Ignition 파일을 HTTP 또는 HTTPS 서버로 이동합니다.

    참고

    Ignition 파일은 OpenShift Container Platform 설치 프로그램에서 생성됩니다.

  3. RHEL 커널, initramfs 및 Ignition 파일, 새 디스크 이미지, 수정된 매개 변수 인수를 사용하여 새 KVM 게스트 노드를 만듭니다.

    • --location에 대해 HTTP 또는 HTTPS 서버의 kernel/initrd 위치를 지정합니다.
    • coreos.inst.ignition_url=의 경우 시스템 역할의 Ignition 파일을 지정합니다. bootstrap.ign, master.ign 또는 worker.ign을 사용하십시오. HTTP 및 HTTPS 프로토콜만 지원됩니다.
    • coreos.live.rootfs_url=의 경우 부팅 중인 커널 및 initramfs와 일치하는 rootfs 아티팩트를 지정합니다. HTTP 및 HTTPS 프로토콜만 지원됩니다.

      $ virt-install \
         --connect qemu:///system \
         --name {vn_name} \
         --vcpus {vcpus} \
         --memory {memory_mb} \
         --disk {vn_name}.qcow2,size={image_size| default(10,true)} \
         --network network={virt_network_parm} \
         --boot hd \
         --location {media_location},kernel={rhcos_kernel},initrd={rhcos_initrd} \
         --extra-args "rd.neednet=1 coreos.inst=yes coreos.inst.install_dev=vda coreos.live.rootfs_url={rhcos_liveos} ip={ip}::{default_gateway}:{subnet_mask_length}:{vn_name}:enc1:none:{MTU} nameserver={dns} coreos.inst.ignition_url={rhcos_ign}" \
         --noautoconsole \
         --wait

5.11.4. 고급 RHCOS 설치 참조

여기서는 RHCOS(Red Hat Enterprise Linux CoreOS) 수동 설치 프로세스를 수정하는 데 사용할 수 있는 네트워킹 구성 및 기타 고급 옵션에 대해 설명합니다. 다음 표에서는 RHCOS 라이브 설치 프로그램 및 coreos-installer 명령과 함께 사용할 수있는 커널 인수 및 명령 줄 옵션에 대해 설명합니다.

5.11.4.1. ISO 설치를 위한 네트워킹 옵션

ISO 이미지에서 RHCOS를 설치하는 경우, 해당 이미지를 부팅할 때 수동으로 커널 인수를 추가하여 노드의 네트워킹을 구성할 수 있습니다. 네트워킹 인수를 지정하지 않으면 RHCOS에서 Ignition 구성 파일을 가져오는 데 네트워킹이 필요함을 감지하면 initramfs에서 DHCP가 활성화됩니다.

중요

네트워킹 인수를 수동으로 추가할 때 initramfs에서 네트워크를 가져오려면 rd.neednet=1 커널 인수도 추가해야 합니다.

다음 정보는 ISO 설치를 위해 RHCOS 노드에서 네트워킹을 구성하는 예를 제공합니다. 예제에서는 ip=nameserver= 커널 인수를 사용하는 방법을 설명합니다.

참고

커널 인수를 추가할 때 순서가 중요합니다: ip=nameserver=.

이는 시스템 부팅 중에 dracut 툴로 전달되는 네트워킹 옵션입니다. dracut에서 지원하는 네트워킹 옵션에 대한 자세한 내용은 dracut.cmdline 메뉴얼 페이지를 참조하십시오.

다음 예제는 ISO 설치를 위한 네트워킹 옵션입니다.

DHCP 또는 고정 IP 주소 구성

IP 주소를 구성하려면 DHCP(ip=dhcp)를 사용하거나 개별 고정 IP 주소(ip=<host_ip>)를 설정합니다. 정적 IP를 설정하는 경우 각 노드에서 DNS 서버 IP 주소 (nameserver=<dns_ip>)를 확인합니다. 다음 예제에서는 다음을 설정합니다.

  • 노드의 IP 주소 10.10.10.2
  • 게이트웨이 주소는 10.10.10.254
  • 넷마스크는 255.255.255.0입니다.
  • core0.example.com의 호스트 이름
  • 4.4.4.41의 DNS 서버 주소
  • auto-configuration 값을 none으로 설정합니다. IP 네트워킹이 정적으로 구성되면 자동 구성이 필요하지 않습니다.
ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp1s0:none
nameserver=4.4.4.41
참고

DHCP를 사용하여 RHCOS 시스템의 IP 주소 지정을 구성하는 경우 시스템은 DHCP를 통해 DNS 서버 정보도 가져옵니다. DHCP 기반 배포의 경우 DHCP 서버 구성을 통해 RHCOS 노드에서 사용할 DNS 서버 주소를 정의할 수 있습니다.

정적 호스트 이름 없이 IP 주소 구성

정적 호스트 이름을 할당하지 않고 IP 주소를 구성할 수 있습니다. 사용자가 정적 호스트 이름을 설정하지 않으면 역방향 DNS 조회에 의해 선택되고 자동으로 설정됩니다. 정적 호스트 이름 없이 IP 주소를 구성하려면 다음 예제를 참조하십시오.

  • 노드의 IP 주소 10.10.10.2
  • 게이트웨이 주소는 10.10.10.254
  • 넷마스크는 255.255.255.0입니다.
  • 4.4.4.41의 DNS 서버 주소
  • auto-configuration 값을 none으로 설정합니다. IP 네트워킹이 정적으로 구성되면 자동 구성이 필요하지 않습니다.
ip=10.10.10.2::10.10.10.254:255.255.255.0::enp1s0:none
nameserver=4.4.4.41
여러 네트워크 인터페이스 지정

여러 ip= 항목을 설정하여 여러 네트워크 인터페이스를 지정할 수 있습니다.

ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp1s0:none
ip=10.10.10.3::10.10.10.254:255.255.255.0:core0.example.com:enp2s0:none
기본 게이트웨이 및 경로 구성

선택 사항: rd.route= 값을 설정하여 추가 네트워크에 대한 경로를 구성할 수 있습니다.

참고

하나 이상의 네트워크를 구성할 때 하나의 기본 게이트웨이가 필요합니다. 추가 네트워크 게이트웨이가 기본 네트워크 게이트웨이와 다른 경우 기본 게이트웨이가 기본 네트워크 게이트웨이어야 합니다.

  • 다음 명령을 실행하여 기본 게이트웨이를 구성합니다.

    ip=::10.10.10.254::::
  • 다음 명령을 입력하여 추가 네트워크의 경로를 구성합니다.

    rd.route=20.20.20.0/24:20.20.20.254:enp2s0
단일 인터페이스에서 DHCP 비활성화

두 개 이상의 네트워크 인터페이스가 있고 하나의 인터페이스만 사용되는 경우와 같이 단일 인터페이스에서 DHCP를 비활성화할 수 있습니다. 이 예에서 enp1s0 인터페이스에는 정적 네트워킹 구성이 있으며 enp2s0 에서는 DHCP가 사용되지 않습니다.

ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp1s0:none
ip=::::core0.example.com:enp2s0:none
DHCP 및 고정 IP 구성 결합

시스템의 DHCP 및 고정 IP 구성을 여러 네트워크 인터페이스와 결합할 수 있습니다. 예를 들면 다음과 같습니다.

ip=enp1s0:dhcp
ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp2s0:none
개별 인터페이스에서 VLAN 구성

선택 사항: vlan= 매개변수를 사용하여 개별 인터페이스에서 VLAN을 구성할 수 있습니다.

  • 네트워크 인터페이스에서 VLAN을 구성하고 고정 IP 주소를 사용하려면 다음 명령을 실행합니다.

    ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:enp2s0.100:none
    vlan=enp2s0.100:enp2s0
  • 네트워크 인터페이스에서 VLAN을 구성하고 DHCP를 사용하려면 다음 명령을 실행합니다.

    ip=enp2s0.100:dhcp
    vlan=enp2s0.100:enp2s0
여러 DNS 서버 제공

각 서버에 대한 nameserver= 항목을 추가하여 여러 DNS 서버를 제공할 수 있습니다. 예를 들면 다음과 같습니다.

nameserver=1.1.1.1
nameserver=8.8.8.8
Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.