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


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

단계에 따라 ISO 이미지 또는 네트워크 PXE 부팅을 사용하여 시스템에 RHCOS를 설치합니다.

2.12.1. ISO 이미지를 사용하여 RHCOS 설치

ISO 이미지를 사용하여 시스템에 RHCOS을 설치할 수 있습니다.

사전 요구 사항

  • 클러스터에 대한 Ignition 구성 파일이 생성되어 있습니다.
  • 적합한 네트워크, DNS 및 로드 밸런싱 인프라가 구성되어 있습니다.
  • 사용자 컴퓨터에서 액세스할 수 있고 사용자가 생성한 시스템에서 액세스할 수 있는 HTTP 서버에 대한 액세스 권한을 확보합니다.
  • 네트워킹 및 디스크 파티션과 같은 기능을 구성하는 다양한 방법에 대해서는 고급 RHCOS 설치 구성섹션을 살펴보십시오.

프로세스

  1. 각 Ignition 구성 파일에 대해 SHA512 다이제스트를 가져옵니다. 예를 들어 Linux를 실행하는 시스템에서 다음을 사용하여 bootstrap.ign Ignition 구성 파일의 SHA512 다이제스트를 가져올 수 있습니다.

    $ sha512sum <installation_directory>/bootstrap.ign

    다이제스트는 클러스터 노드에서 Ignition 구성 파일의 신뢰성을 검증하기 위해 이후 단계에서 coreos-installer에 제공됩니다.

  2. 설치 프로그램에서 생성한 부트스트랩, 컨트롤 플레인, 컴퓨팅 노드 Ignition 구성 파일을 HTTP 서버에 업로드합니다. 해당 파일의 URL을 기록해 둡니다.

    중요

    HTTP 서버에 저장하기 전에 Ignition 구성에서 구성 설정을 추가하거나 변경할 수 있습니다. 설치를 마친 후 클러스터에 컴퓨팅 시스템을 더 추가하려면 Ignition 구성 파일을 삭제하지 마십시오.

  3. 설치 호스트에서 Ignition 구성 파일을 URL에서 사용할 수 있는지 확인합니다. 다음 예에서는 부트스트랩 노드에 대한 Ignition 구성 파일을 가져옵니다.

    $ curl -k http://<HTTP_server>/bootstrap.ign 1

    출력 예

      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0{"ignition":{"version":"3.2.0"},"passwd":{"users":[{"name":"core","sshAuthorizedKeys":["ssh-rsa...

    명령에서 bootstrap.ignmaster.ign 또는 worker.ign으로 교체하여 컨트롤 플레인 및 컴퓨팅 노드의 Ignition 구성 파일도 사용할 수 있는지 확인합니다.

  4. RHCOS 이미지 미러 페이지에서 운영 체제 인스턴스 설치 방법에 필요한 RHCOS 이미지를 가져올 수 있지만 올바른 RHCOS 이미지 버전을 가져오는 데 권장되는 방법은 openshift-install 명령 출력에서 가져옵니다.

    $ openshift-install coreos print-stream-json | grep '\.iso[^.]'

    출력 예

    "location": "<url>/art/storage/releases/rhcos-4.17-aarch64/<release>/aarch64/rhcos-<release>-live.aarch64.iso",
    "location": "<url>/art/storage/releases/rhcos-4.17-ppc64le/<release>/ppc64le/rhcos-<release>-live.ppc64le.iso",
    "location": "<url>/art/storage/releases/rhcos-4.17-s390x/<release>/s390x/rhcos-<release>-live.s390x.iso",
    "location": "<url>/art/storage/releases/rhcos-4.17/<release>/x86_64/rhcos-<release>-live.x86_64.iso",

    중요

    RHCOS 이미지는 OpenShift Container Platform 릴리스에 따라 변경되지 않을 수 있습니다. 설치하는 OpenShift Container Platform 버전과 같거나 그 이하의 버전 중 가장 최신 버전의 이미지를 다운로드해야 합니다. 사용 가능한 경우 OpenShift Container Platform 버전과 일치하는 이미지 버전을 사용합니다. 이 프로세스에는 ISO 이미지만 사용하십시오. 이 설치 유형에서는 RHCOS qcow2 이미지가 지원되지 않습니다.

    ISO 파일 이름은 다음 예와 유사합니다.

    rhcos-<version>-live.<architecture>.iso

  5. ISO를 사용하여 RHCOS 설치를 시작합니다. 다음 설치 옵션 중 하나를 사용합니다.

    • ISO 이미지를 디스크에 굽고 직접 부팅합니다.
    • LOM(Lightweight-out Management) 인터페이스를 사용하여 ISO 리디렉션을 사용합니다.
  6. 옵션을 지정하거나 라이브 부팅 시퀀스를 중단하지 않고 RHCOS ISO 이미지를 부팅합니다. 설치 프로그램이 RHCOS 라이브 환경에서 쉘 프롬프트로 부팅될 때까지 기다립니다.

    참고

    커널 인수를 추가하기 위해 RHCOS 설치 부팅 프로세스를 중단할 수 있습니다. 하지만 이 ISO 프로세스에서는 커널 인수를 추가하지 않고 다음 단계에 설명된 대로 coreos-installer 명령을 사용해야 합니다.

  7. coreos-installer 명령을 실행하고 설치 요구 사항을 충족하는 옵션을 지정합니다. 최소한 노드 유형에 대한 Ignition 구성 파일과 설치할 장치를 가리키는 URL을 지정해야 합니다.

    $ sudo coreos-installer install --ignition-url=http://<HTTP_server>/<node_type>.ign <device> --ignition-hash=sha512-<digest> 12
    1 1
    core 사용자에게 설치를 수행하는 데 필요한 root 권한이 없으므로 sudo를 사용하여 coreos-installer 명령을 실행해야 합니다.
    2
    클러스터 노드에서 Ignition 구성 파일을 HTTP URL을 통해 가져오려면 --ignition-hash 옵션이 필요합니다. <digest>는 이전 단계에서 얻은 Ignition 구성 파일 SHA512 다이제스트입니다.
    참고

    TLS를 사용하는 HTTPS 서버를 통해 Ignition 구성 파일을 제공하려는 경우 coreos-installer를 실행하기 전에 내부 인증 기관(CA)을 시스템 신뢰 저장소에 추가할 수 있습니다.

    다음 예제에서는 /dev/sda 장치에 부트스트랩 노드 설치를 초기화합니다. 부트스트랩 노드의 Ignition 구성 파일은 IP 주소 192.168.1.2가 있는 HTTP 웹 서버에서 가져옵니다.

    $ sudo coreos-installer install --ignition-url=http://192.168.1.2:80/installation_directory/bootstrap.ign /dev/sda --ignition-hash=sha512-a5a2d43879223273c9b60af66b44202a1d1248fc01cf156c46d4a79f552b6bad47bc8cc78ddf0116e80c59d2ea9e32ba53bc807afbca581aa059311def2c3e3b
  8. 머신 콘솔에서 RHCOS 설치 진행률을 모니터링합니다.

    중요

    OpenShift Container Platform 설치를 시작하기 전에 각 노드에서 성공적으로 설치되었는지 확인합니다. 설치 프로세스를 관찰하면 발생할 수 있는 RHCOS 설치 문제의 원인을 파악하는 데 도움이 될 수 있습니다.

  9. RHCOS를 설치한 후 시스템을 재부팅해야 합니다. 시스템이 재부팅되는 동안 지정한 Ignition 구성 파일이 적용됩니다.
  10. 콘솔 출력을 확인하여 Ignition이 실행되었는지 확인합니다.

    명령 예

    Ignition: ran on 2022/03/14 14:48:33 UTC (this boot)
    Ignition: user-provided config was applied

  11. 계속해서 클러스터에 대한 나머지 시스템을 모두 생성합니다.

    중요

    이때 부트스트랩 및 컨트롤 플레인 시스템을 생성해야 합니다. 컨트롤 플레인 시스템이 예약 가능하지 않은 경우 OpenShift Container Platform을 설치하기 전에 두 개 이상의 컴퓨팅 시스템도 생성합니다.

    적합한 네트워킹, DNS 및 로드 밸런싱 인프라가 있는 경우 RHCOS 노드가 재부팅된 후 OpenShift Container Platform 부트스트랩 프로세스가 자동으로 시작됩니다.

    참고

    RHCOS 노드에는 core 사용자의 기본 암호가 포함되지어 있지 않습니다. install_config.yaml 파일에 지정한 공개 키에 대한 액세스 권한이 있는 사용자로 ssh core@<node>.<cluster_name>.<base_domain>을 실행하여 노드에 액세스할 수 있습니다. RHCOS를 실행하는 OpenShift Container Platform 4 클러스터 노드는 변경할 수 없으며 Operator를 통해 클러스터 변경 사항을 적용합니다. SSH를 사용하여 클러스터 노드에 액세스하는 것은 권장되지 않습니다. 그러나 설치 문제를 조사할 때 OpenShift Container Platform API를 사용할 수 없거나 kubelet이 대상 노드에서 제대로 작동하지 않는 경우 디버깅 또는 재해 복구에 SSH 액세스가 필요할 수 있습니다.

2.12.1.1. 고급 RHCOS 설치 참조

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

2.12.1.1.1. ISO 설치를 위한 네트워킹 및 본딩 옵션

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

중요

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

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

참고

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

이는 시스템 부팅 중에 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
단일 인터페이스에 다중 네트워크 인터페이스 본딩

선택 사항: bond= 옵션을 사용하여 여러 네트워크 인터페이스를 단일 인터페이스에 결합할 수 있습니다. 다음 예제를 참조하십시오.

  • 본딩된 인터페이스를 구성하는 구문은 bond=<name>[:<network_interfaces>][:options]입니다.

    < name >은 본딩 장치 이름(bond0)이고, < network_interfaces >는 쉼표로 구분된 물리(ethernet) 인터페이스 목록(em1,em2)을 나타내며, 옵션은 쉼표로 구분된 본딩 옵션 목록입니다. 사용 가능한 옵션을 보려면 modinfo bonding을 입력하십시오.

  • bond=를 사용하여 결합된 인터페이스를 생성할 때 IP 주소가 할당되는 방법과 결합된 인터페이스에 대한 기타 정보를 지정해야 합니다.

    • DHCP를 사용하도록 결합된 인터페이스를 구성하려면 bond의 IP 주소를 dhcp로 설정하십시오. 예를 들면 다음과 같습니다.

      bond=bond0:em1,em2:mode=active-backup
      ip=bond0:dhcp
    • 고정 IP 주소를 사용하도록 결합된 인터페이스를 구성하려면 원하는 특정 IP 주소 및 관련 정보를 입력합니다. 예를 들면 다음과 같습니다.

      bond=bond0:em1,em2:mode=active-backup
      ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:bond0:none
듀얼 포트 NIC 인터페이스에 여러 SR-IOV 네트워크 인터페이스 본딩

선택 사항: bond= 옵션을 사용하여 여러 SR-IOV 네트워크 인터페이스를 듀얼 포트 NIC 인터페이스에 결합할 수 있습니다.

각 노드에서 다음 작업을 수행해야 합니다.

  1. SR-IOV 장치 관리의 지침에 따라 SR-IOV 가상 기능(VF)을 생성합니다. " SR-IOV 네트워킹 장치 연결" 섹션의 절차를 따르십시오.
  2. 본딩을 생성하고, 원하는 VF를 본딩에 연결하고 네트워크 본딩 구성의 지침에 따라 본딩 링크 상태를 설정합니다. 설명된 절차에 따라 본딩을 생성합니다.

다음 예제에서는 사용해야 하는 구문을 보여줍니다.

  • 본딩된 인터페이스를 구성하는 구문은 bond=<name>[:<network_interfaces>][:options] 입니다.

    < name >은 본딩 장치 이름(bond0)이고 < network_interfaces >는 커널에서 알려진 이름으로 VF(가상 기능)를 나타내며 ip link 명령(eno1f 0,eno2f0)의 출력에 표시되는 옵션이며 옵션은 쉼표로 구분된 본딩 옵션 목록입니다. 사용 가능한 옵션을 보려면 modinfo bonding을 입력하십시오.

  • bond=를 사용하여 결합된 인터페이스를 생성할 때 IP 주소가 할당되는 방법과 결합된 인터페이스에 대한 기타 정보를 지정해야 합니다.

    • DHCP를 사용하도록 결합된 인터페이스를 구성하려면 bond의 IP 주소를 dhcp로 설정하십시오. 예를 들면 다음과 같습니다.

      bond=bond0:eno1f0,eno2f0:mode=active-backup
      ip=bond0:dhcp
    • 고정 IP 주소를 사용하도록 결합된 인터페이스를 구성하려면 원하는 특정 IP 주소 및 관련 정보를 입력합니다. 예를 들면 다음과 같습니다.

      bond=bond0:eno1f0,eno2f0:mode=active-backup
      ip=10.10.10.2::10.10.10.254:255.255.255.0:core0.example.com:bond0:none

2.12.2. PXE 부팅을 사용하여 RHCOS 설치

PXE 부팅을 사용하여 시스템에 RHCOS를 설치할 수 있습니다.

사전 요구 사항

  • 클러스터에 대한 Ignition 구성 파일이 생성되어 있습니다.
  • 적합한 네트워크, DNS 및 로드 밸런싱 인프라가 구성되어 있습니다.
  • 적합한 PXE 인프라가 구성되어 있습니다.
  • 사용자 컴퓨터에서 액세스할 수 있고 사용자가 생성한 시스템에서 액세스할 수 있는 HTTP 서버에 대한 액세스 권한을 확보합니다.
  • 네트워킹 및 디스크 파티션과 같은 기능을 구성하는 다양한 방법에 대해서는 고급 RHCOS 설치 구성섹션을 살펴보십시오.

프로세스

  1. 설치 프로그램에서 생성한 부트스트랩, 컨트롤 플레인, 컴퓨팅 노드 Ignition 구성 파일을 HTTP 서버에 업로드합니다. 해당 파일의 URL을 기록해 둡니다.

    중요

    HTTP 서버에 저장하기 전에 Ignition 구성에서 구성 설정을 추가하거나 변경할 수 있습니다. 설치를 마친 후 클러스터에 컴퓨팅 시스템을 더 추가하려면 Ignition 구성 파일을 삭제하지 마십시오.

  2. 설치 호스트에서 Ignition 구성 파일을 URL에서 사용할 수 있는지 확인합니다. 다음 예에서는 부트스트랩 노드에 대한 Ignition 구성 파일을 가져옵니다.

    $ curl -k http://<HTTP_server>/bootstrap.ign 1

    출력 예

      % Total    % Received % Xferd  Average Speed   Time    Time     Time  Current
                                     Dload  Upload   Total   Spent    Left  Speed
      0     0    0     0    0     0      0      0 --:--:-- --:--:-- --:--:--     0{"ignition":{"version":"3.2.0"},"passwd":{"users":[{"name":"core","sshAuthorizedKeys":["ssh-rsa...

    명령에서 bootstrap.ignmaster.ign 또는 worker.ign으로 교체하여 컨트롤 플레인 및 컴퓨팅 노드의 Ignition 구성 파일도 사용할 수 있는지 확인합니다.

  3. RHCOS 이미지 미러 페이지에서 운영 체제 인스턴스 설치 방법에 필요한 RHCOS 커널,initramfsrootfs 파일을 가져올 수 있지만 올바른 RHCOS 파일의 버전을 얻는 것이 좋습니다. openshift-install 명령 출력에서 다음과 같습니다.

    $ openshift-install coreos print-stream-json | grep -Eo '"https.*(kernel-|initramfs.|rootfs.)\w+(\.img)?"'

    출력 예

    "<url>/art/storage/releases/rhcos-4.17-aarch64/<release>/aarch64/rhcos-<release>-live-kernel-aarch64"
    "<url>/art/storage/releases/rhcos-4.17-aarch64/<release>/aarch64/rhcos-<release>-live-initramfs.aarch64.img"
    "<url>/art/storage/releases/rhcos-4.17-aarch64/<release>/aarch64/rhcos-<release>-live-rootfs.aarch64.img"
    "<url>/art/storage/releases/rhcos-4.17-ppc64le/49.84.202110081256-0/ppc64le/rhcos-<release>-live-kernel-ppc64le"
    "<url>/art/storage/releases/rhcos-4.17-ppc64le/<release>/ppc64le/rhcos-<release>-live-initramfs.ppc64le.img"
    "<url>/art/storage/releases/rhcos-4.17-ppc64le/<release>/ppc64le/rhcos-<release>-live-rootfs.ppc64le.img"
    "<url>/art/storage/releases/rhcos-4.17-s390x/<release>/s390x/rhcos-<release>-live-kernel-s390x"
    "<url>/art/storage/releases/rhcos-4.17-s390x/<release>/s390x/rhcos-<release>-live-initramfs.s390x.img"
    "<url>/art/storage/releases/rhcos-4.17-s390x/<release>/s390x/rhcos-<release>-live-rootfs.s390x.img"
    "<url>/art/storage/releases/rhcos-4.17/<release>/x86_64/rhcos-<release>-live-kernel-x86_64"
    "<url>/art/storage/releases/rhcos-4.17/<release>/x86_64/rhcos-<release>-live-initramfs.x86_64.img"
    "<url>/art/storage/releases/rhcos-4.17/<release>/x86_64/rhcos-<release>-live-rootfs.x86_64.img"

    중요

    OpenShift Container Platform의 모든 릴리스에서 RHCOS 아티팩트가 변경되지 않을 수도 있습니다. 설치하는 OpenShift Container Platform 버전과 같거나 그 이하의 버전 중 가장 최신 버전의 이미지를 다운로드해야 합니다. 이 프로시저에는 아래 설명된 적절한 kernel, initramfsrootfs 아티팩트만 사용하십시오. 이 설치 유형에서는 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
  4. rootfs, kernelinitramfs 파일을 HTTP 서버에 업로드합니다.

    중요

    설치를 마친 후 클러스터에 컴퓨팅 시스템을 더 추가하려면 Ignition 구성 파일을 삭제하지 마십시오.

  5. RHCOS가 설치된 후 시스템이 로컬 디스크에서 부팅되도록 네트워크 부팅 인프라를 구성하십시오.
  6. RHCOS 이미지에 대한 PXE 설치를 구성하고 설치를 시작하십시오.

    사용 환경에 대한 다음 예시 메뉴 항목을 수정하고, 이미지 및 Ignition 파일에 적절히 접근할 수 있는지 확인하십시오.

    DEFAULT pxeboot
    TIMEOUT 20
    PROMPT 0
    LABEL pxeboot
        KERNEL http://<HTTP_server>/rhcos-<version>-live-kernel-<architecture> 1
        APPEND initrd=http://<HTTP_server>/rhcos-<version>-live-initramfs.<architecture>.img coreos.live.rootfs_url=http://<HTTP_server>/rhcos-<version>-live-rootfs.<architecture>.img coreos.inst.install_dev=/dev/sda coreos.inst.ignition_url=http://<HTTP_server>/bootstrap.ign 2 3
    1 1
    HTTP 서버에 업로드한 라이브 kernel 파일의 위치를 지정합니다. URL은 HTTP, TFTP 또는 FTP여야 합니다. HTTPS와 NFS는 지원되지 않습니다.
    2
    NIC를 여러 개 사용하는 경우 ip 옵션에 단일 인터페이스를 지정합니다. 예를 들어, eno1라는 NIC에서 DHCP를 사용하려면 ip=eno1:dhcp를 설정하십시오.
    3
    HTTP 서버에 업로드한 RHCOS 파일의 위치를 지정합니다. initrd 매개변수 값은 initramfs 파일의 위치, coreos.live.rootfs_url 매개변수 값은 rootfs 파일의 위치, coreos.inst.ignition_url 매개변수 값은 부트스트랩 Ignition 구성 파일의 위치입니다. APPEND 줄에 커널 인수를 더 추가하여 네트워킹 또는 기타 부팅 옵션도 구성할 수 있습니다.
    참고

    이 구성은 그래픽 콘솔이 있는 머신에서 직렬 콘솔 액세스를 활성화하지 않습니다. 다른 콘솔을 구성하려면 APPEND 행에 하나 이상의 console= 인수를 추가합니다. 예를 들어 console=tty0 console=ttyS0을 추가하여 첫 번째 PC 직렬 포트를 기본 콘솔로 설정하고 그래픽 콘솔을 보조 콘솔로 설정합니다. 자세한 내용은 How does one set up a serial terminal and/or console in Red Hat Enterprise Linux? 및 "Enabling the serial console for PXE and ISO installation" 섹션을 참조하십시오.

  7. 머신 콘솔에서 RHCOS 설치 진행률을 모니터링합니다.

    중요

    OpenShift Container Platform 설치를 시작하기 전에 각 노드에서 성공적으로 설치되었는지 확인합니다. 설치 프로세스를 관찰하면 발생할 수 있는 RHCOS 설치 문제의 원인을 파악하는 데 도움이 될 수 있습니다.

  8. RHCOS가 설치되면 시스템을 재부팅합니다. 시스템이 재부팅되는 동안 지정한 Ignition 구성 파일이 적용됩니다.
  9. 콘솔 출력을 확인하여 Ignition이 실행되었는지 확인합니다.

    명령 예

    Ignition: ran on 2022/03/14 14:48:33 UTC (this boot)
    Ignition: user-provided config was applied

  10. 클러스터용 시스템 생성을 계속합니다.

    중요

    이때 부트스트랩 및 컨트롤 플레인 시스템을 생성해야 합니다. 컨트롤 플레인 시스템이 예약 가능하지 않은 경우 클러스터를 설치하기 전에 두 개 이상의 컴퓨팅 시스템도 생성합니다.

    적합한 네트워킹, DNS 및 로드 밸런싱 인프라가 있는 경우 RHCOS 노드가 재부팅된 후 OpenShift Container Platform 부트스트랩 프로세스가 자동으로 시작됩니다.

    참고

    RHCOS 노드에는 core 사용자의 기본 암호가 포함되지어 있지 않습니다. install_config.yaml 파일에 지정한 공개 키에 대한 액세스 권한이 있는 사용자로 ssh core@<node>.<cluster_name>.<base_domain>을 실행하여 노드에 액세스할 수 있습니다. RHCOS를 실행하는 OpenShift Container Platform 4 클러스터 노드는 변경할 수 없으며 Operator를 통해 클러스터 변경 사항을 적용합니다. SSH를 사용하여 클러스터 노드에 액세스하는 것은 권장되지 않습니다. 그러나 설치 문제를 조사할 때 OpenShift Container Platform API를 사용할 수 없거나 kubelet이 대상 노드에서 제대로 작동하지 않는 경우 디버깅 또는 재해 복구에 SSH 액세스가 필요할 수 있습니다.

2.12.3. RHCOS에서 커널 인수로 다중 경로 활성화

OpenShift Container Platform 버전 4.17에서는 설치 중에 프로비저닝된 노드에 대해 멀티패스를 활성화할 수 있습니다. RHCOS는 기본 디스크에서 멀티패스를 지원합니다. 멀티패스는 호스트 가용성을 향상시키기 위해 하드웨어 장애에 대한 복원력 강화의 추가 이점을 제공합니다.

초기 클러스터 생성 중에 모든 마스터 또는 작업자 노드에 커널 인수를 추가할 수 있습니다. 마스터 노드 또는 작업자 노드에 커널 매개 변수를 추가하기 위해 MachineConfig 객체를 생성하고 해당 객체를 클러스터 설정 중에 Ignition에서 사용하는 매니페스트 파일 세트에 삽입할 수 있습니다.

프로세스

  1. 설치 프로그램이 포함된 디렉터리로 변경하고 클러스터에 대한 Kubernetes 매니페스트를 생성합니다.

    $ ./openshift-install create manifests --dir <installation_directory>
  2. 커널 매개 변수를 작업자 또는 컨트롤 플레인 노드에 추가할지 여부를 결정합니다.

    • 머신 구성 파일을 생성합니다. 예를 들어 클러스터에 master 레이블을 추가하고 멀티패스 커널 인수를 식별하도록 지시하는 99-master-kargs-mpath.yaml을 생성합니다.

      apiVersion: machineconfiguration.openshift.io/v1
      kind: MachineConfig
      metadata:
        labels:
          machineconfiguration.openshift.io/role: "master"
        name: 99-master-kargs-mpath
      spec:
        kernelArguments:
          - 'rd.multipath=default'
          - 'root=/dev/disk/by-label/dm-mpath-root'
  3. 작업자 노드에서 멀티패스를 활성화하려면 다음을 수행합니다.

    • 머신 구성 파일을 생성합니다. 예를 들어 클러스터에 worker 레이블을 추가하고 멀티패스 커널 인수를 식별하도록 지시하는 99-worker-kargs-mpath.yaml 을 생성합니다.

      apiVersion: machineconfiguration.openshift.io/v1
      kind: MachineConfig
      metadata:
        labels:
          machineconfiguration.openshift.io/role: "worker"
        name: 99-worker-kargs-mpath
      spec:
        kernelArguments:
          - 'rd.multipath=default'
          - 'root=/dev/disk/by-label/dm-mpath-root'

      이제 계속해서 클러스터를 만들 수 있습니다.

중요

멀티패스를 완전히 활성화하려면 추가 설치 후 단계가 필요합니다. 자세한 내용은 설치 후 머신 구성 작업 의 "RHCOS에서 커널 인수를 사용하여 멀티패스 활성화"를 참조하십시오.

MPIO 오류가 발생하는 경우 bootlist 명령을 사용하여 대체 논리 장치 이름으로 부팅 장치 목록을 업데이트합니다. 명령은 부팅 목록을 표시하고 시스템을 일반 모드로 부팅할 때 에 대해 가능한 부팅 장치를 지정합니다.

  1. 부팅 목록을 표시하고 시스템이 일반 모드로 부팅되는 경우 가능한 부팅 장치를 지정하도록 다음 명령을 입력합니다.

    $ bootlist -m normal -o
    sda
  2. 일반 모드의 부팅 목록을 업데이트하고 대체 장치 이름을 추가하려면 다음 명령을 입력합니다.

    $ bootlist -m normal -o /dev/sdc /dev/sdd /dev/sde
    sdc
    sdd
    sde

    원래 부팅 디스크 경로가 다운되면 노드가 일반 부팅 장치 목록에 등록된 대체 장치에서 재부팅됩니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.