5.2. 비네트워크 기반 배포 워크플로

"RHEL for Edge Container" 및 "RHEL for Edge Installer" 이미지를 사용하여 OSTree 기반 시스템을 설치하는 부팅 ISO 이미지를 빌드하려면 나중에 연결이 끊긴 환경에서 장치에 배포할 수 있는 단계를 따르십시오.

5.2.1. 이미지 빌더 CLI를 사용하여 RHEL for Edge 컨테이너 블루프린트 생성

엣지 컨테이너 이미지용 RHEL에 대한 설정 단계를 생성하려면 다음 단계를 수행합니다.

절차

  1. 다음 콘텐츠를 사용하여 TOML 형식으로 일반 텍스트 파일을 생성합니다.

    name = "blueprint-name"
    description = "blueprint-text-description"
    version = "0.0.1"
    modules = [ ]
    groups = [ ]

    다음과 같습니다.

    • Blueprint-name 은 이름이며,akak-text-description은ak값에 대한 설명입니다.
    • 0.0.1 은 Semantic Versioning scheme에 따른 버전 번호입니다.
    • 모듈은 패키지 이름과 이미지에 설치할 버전 glob를 설명합니다(예: 패키지 이름 = "tmux" 및 일치하는 버전 glob는 version = "2.9a"입니다.

      현재 패키지와 모듈에는 차이점이 없습니다.

    • 그룹은 이미지에 설치할 패키지 그룹입니다(예: 그룹 패키지 anaconda-tools).

      현재 모듈과 그룹을 모르는 경우 비워 둡니다.

  2. 필요한 패키지를 포함하고 요구 사항에 맞게 청사진의 다른 세부 정보를 사용자 지정합니다.

    청사진에 포함하려는 모든 패키지에 대해 다음 행을 파일에 추가합니다.

    [[packages]]
    name = "package-name"
    version = "package-version"

    다음과 같습니다.

    • package-name은 httpd, gdb-doc 또는 coreutils와 같은 패키지의 이름입니다.
    • package-version은 사용할 패키지의 버전 번호입니다.

      package-version은 다음과 같은 dnf 버전 사양을 지원합니다.

    • 특정 버전의 경우 8.0과 같은 정확한 버전 번호를 사용하십시오.
    • 사용 가능한 최신 버전의 경우 별표 *를 사용합니다.
    • 최신 마이너 버전의 경우 8.*과 같은 형식을 사용하십시오.
  3. 블루프린트를 RHEL 이미지 빌더 서버로 푸시(가져오기)합니다.

    # composer-cli blueprints push blueprint-name.toml
  4. 기존akak을 나열하여 생성된 청사진을 성공적으로 푸시하고 있는지 확인합니다.

    # composer-cli blueprints show BLUEPRINT-NAME
  5. EgressIP 및 해당 종속 항목에 나열된 구성 요소 및 버전이 유효한지 확인합니다.

    # composer-cli blueprints depsolve blueprint-name

5.2.2. 이미지 빌더 CLI를 사용하여 에지 설치 관리자용 RHEL 생성

Edge Installer(.iso) 이미지를 위한 RHEL 을 빌드하고 설치 시 시스템에서 하나 이상의 사용자를 자동으로 생성하도록 사용자 계정을 지정할 수 있습니다.

주의

customizations.user 사용자 지정으로 사용자를 생성하면 /usr/lib/passwd 디렉토리 및 암호 아래에 /usr/etc/shadow 디렉터리에 사용자를 생성합니다. OSTree 업데이트를 사용하여 실행 중인 시스템에서 추가 버전의 이미지의 암호를 변경할 수 없습니다. 생성된 시스템에 액세스하기 위해서만 사용자가 생성한 사용자를 사용해야 합니다. 시스템에 액세스한 후 useradd 명령을 사용하여 사용자를 생성해야 합니다.

RHEL for Edge Installer 이미지를 생성하려면 다음 단계를 수행합니다.

절차

  1. 다음 콘텐츠를 사용하여 TOML 형식으로 일반 텍스트 파일을 생성합니다.

    name = "blueprint-installer"
    description = "blueprint-for-installer-image"
    version = "0.0.1"
    
    [[customizations.user]]
    name = "user"
    description = "account"
    password = "user-password"
    key = "user-ssh-key "
    home = "path"
    groups = ["user-groups"]

    다음과 같습니다.

    • Blueprint-name 은 이름이며,akak-text-description은ak값에 대한 설명입니다.
    • 0.0.1 은 Semantic Versioning scheme에 따른 버전 번호입니다.
  2. 블루프린트를 RHEL 이미지 빌더 서버로 푸시(가져오기)합니다.

    # composer-cli blueprints push blueprint-name.toml
  3. 기존akak을 나열하여 생성된 청사진을 성공적으로 푸시하고 있는지 확인합니다.

    # composer-cli blueprints show blueprint-name
  4. EgressIP 및 해당 종속 항목에 나열된 구성 요소 및 버전이 유효한지 확인합니다.

    # composer-cli blueprints depsolve blueprint-name

5.2.3. 이미지 빌더 CLI를 사용하여 RHEL for Edge 컨테이너 이미지 생성

RHEL 이미지 빌더 명령줄 인터페이스를 사용하여 RHEL for Edge 컨테이너 이미지를 생성하려면 다음 사전 요구 사항을 충족했는지 확인하고 절차를 따르십시오.

사전 요구 사항

  • Edge 컨테이너 이미지를 위한 RHEL용 기능(Supplementary for RHEL)을 생성했습니다.

절차

  1. 엣지 컨테이너 이미지용 RHEL을 생성합니다.

    # composer-cli compose start-ostree --ref rhel/8/x86_64/edge --url URL-OSTree-repository blueprint-name image-type

    다음과 같습니다.

    • --ref 는 ostree 리포지토리를 빌드하는 데 사용되는 것과 동일한 값입니다.
    • -- URL은 이미지에 포함할 커밋의 OSTree 리포지토리의 URL입니다. 예: http://10.0.2.2:8080/repo/. 기본적으로 에지 컨테이너 이미지에 대한 RHEL의 리포지토리 폴더는 "/repo"입니다. Edge 이미지에 대해 RHEL을 설치하기 위해 웹 서버 설정을 참조하십시오.

      사용할 올바른 URL을 찾으려면 실행 중인 컨테이너에 액세스하여 nginx.conf 파일을 확인합니다. 사용할 URL을 찾으려면 실행 중인 컨테이너에 액세스하여 nginx.conf 파일을 확인합니다. nginx.conf 파일 내에서 /repo/ 폴더 정보를 검색할 루트 디렉터리 항목을 찾습니다. RHEL 이미지 빌더를 사용하여 RHEL for Edge 컨테이너 이미지 (.tar) 를 생성할 때 리포지토리 URL을 지정하지 않으면 nginx.conf 파일에 기본 /repo/ 항목이 생성됩니다.

    • Blueprint-name 은 Edge Blueprint 이름에 대한 RHEL입니다.
    • 이미지 유형네트워크 기반 배포가 아닌 경우 edge-container 입니다.

      composer 프로세스가 큐에 추가되었음을 확인합니다. 또한 생성된 이미지의 UUID(Universally Unique Identifier) 번호를 표시합니다. UUID 번호를 사용하여 빌드를 추적합니다. 또한 추가 작업을 위해 UUID 번호를 편리하게 유지합니다.

  2. 이미지 작성 상태를 확인합니다.

    # composer-cli compose status

    출력에는 다음 형식의 상태가 표시됩니다.

    <UUID> RUNNING date blueprint-name blueprint-version image-type
    참고

    이미지 생성 프로세스를 완료하는 데 최대 20분이 걸립니다.

    이미지 생성 프로세스를 중단하려면 다음을 실행합니다.

    # composer-cli compose cancel <UUID>

    기존 이미지를 삭제하려면 다음을 실행합니다.

    # composer-cli compose delete <UUID>

    이미지가 준비되면 네트워크 배포가 아닌 배포에 사용할 수 있습니다. 비 네트워크 기반 배포의 경우 엣지 컨테이너 이미지 생성 을 참조하십시오.

5.2.4. 네트워크 이외의 배포의 명령줄 인터페이스를 사용하여 엣지 설치 프로그램 이미지용 RHEL 생성

OSTree 커밋을 포함하는 RHEL for Edge 설치 프로그램 이미지를 생성하려면 RHELimage 빌더 명령줄 인터페이스를 사용하여 다음 사전 요구 사항을 충족했는지 확인한 다음 절차를 따르십시오.

사전 요구 사항

  • RHEL for Edge Installer 이미지를 생성했습니다.
  • 엣지 컨테이너 이미지용 RHEL을 생성하고 웹 서버를 사용하여 배포했습니다.

절차

  1. RHEL for Edge Installer 이미지를 생성합니다.

    # composer-cli compose start-ostree --ref rhel/8/x86_64/edge --url URL-OSTree-repository blueprint-name image-type

    다음과 같습니다.

    • ref 는 고객이 ostree 리포지토리를 빌드하는 데 사용한 값과 동일합니다.
    • URL-OSTree-repository 는 이미지에 포함할 커밋의 OSTree 리포지토리의 URL입니다. 예: http://10.0.2.2:8080/repo. 네트워크 기반이 아닌 배포를 위한 RHEL for Edge 컨테이너 이미지 생성 을 참조하십시오.
    • ECDHE-name 은 에지 설치 관리자의 이름으로 RHEL입니다.
    • image-typeedge-installer 입니다.

      composer 프로세스가 큐에 추가되었음을 확인합니다. 또한 생성된 이미지의 UUID(Universally Unique Identifier) 번호를 표시합니다. UUID 번호를 사용하여 빌드를 추적합니다. 또한 추가 작업을 위해 UUID 번호를 편리하게 유지합니다.

  2. 이미지 작성 상태를 확인합니다.

    # composer-cli compose status

    명령 출력에는 다음 형식의 상태가 표시됩니다.

    <UUID> RUNNING date blueprint-name blueprint-version image-type
    참고

    이미지 생성 프로세스를 완료하는 데 몇 분이 걸립니다.

    이미지 생성 프로세스를 중단하려면 다음을 실행합니다.

    # composer-cli compose cancel <UUID>

    기존 이미지를 삭제하려면 다음을 실행합니다.

    # composer-cli compose delete <UUID>

    이미지가 준비되면 네트워크 배포가 아닌 배포에 사용할 수 있습니다. 네트워크 기반 배포가 아닌 경우에는 RHEL for Edge 이미지 설치를 참조하십시오.

5.2.5. 이미지 빌더 CLI를 사용하여 에지 설치 관리자 이미지 다운로드

RHEL 이미지 빌더 명령줄 인터페이스를 사용하여 RHEL for Edge 설치 프로그램 이미지를 다운로드하려면 다음 사전 요구 사항을 충족했는지 확인한 다음 절차를 따르십시오.

사전 요구 사항

  • 엣지 설치 프로그램용 RHEL 이미지가 생성되어 있습니다.

절차

  1. Edge 이미지 상태에 대한 RHEL을 검토합니다.

    # composer-cli compose status

    출력에 다음이 표시되어야 합니다.

    $ <UUID> FINISHED date blueprint-name blueprint-version image-type
  2. 이미지를 다운로드합니다.

    # composer-cli compose image <UUID>

    RHEL 이미지 빌더는 이미지를 .iso 파일로 현재 디렉터리에 다운로드합니다.

    UUID 번호 및 이미지 크기가 함께 표시됩니다.

    $ <UUID>-boot.iso: size MB

결과 이미지는 부팅 가능한 ISO 이미지입니다.