7.12. OpenShift Pipelines를 사용하여 가상 머신 관리


Red Hat OpenShift Pipelines 는 Kubernetes 네이티브 CI/CD 프레임워크로, 개발자가 자체 컨테이너에서 CI/CD 파이프라인의 각 단계를 설계 및 실행할 수 있습니다.

SSP(Scheduling, Scale, Performance) Operator는 OpenShift Virtualization과 OpenShift Pipelines를 통합합니다. SSP Operator에는 다음을 수행할 수 있는 작업 및 예제 파이프라인이 포함되어 있습니다.

  • 가상 머신(VM), PVC(영구 볼륨 클레임) 및 데이터 볼륨 생성 및 관리
  • VM에서 명령 실행
  • libguestfs 툴을 사용하여 디스크 이미지 조작

7.12.1. 사전 요구 사항

7.12.2. SSP Operator에서 지원하는 가상 머신 작업

다음 표에서는 SSP Operator의 일부로 포함된 작업을 보여줍니다.

표 7.4. SSP Operator에서 지원하는 가상 머신 작업
Task설명

create-vm-from-manifest

제공된 매니페스트 또는 virtctl 을 사용하여 가상 머신을 생성합니다.

create-vm-from-template

템플릿에서 가상 머신을 생성합니다.

copy-template

가상 머신 템플릿을 복사합니다.

modify-vm-template

가상 머신 템플릿을 수정합니다.

modify-data-object

데이터 볼륨 또는 데이터 소스를 생성하거나 삭제합니다.

cleanup-vm

가상 머신에서 스크립트 또는 명령을 실행하고 나중에 가상 머신을 중지하거나 삭제합니다.

disk-virt-customize

virt-customize 툴을 사용하여 대상 PVC에서 사용자 지정 스크립트를 실행합니다.

disk-virt-sysprep

virt-sysprep 툴을 사용하여 대상 PVC에서 sysprep 스크립트를 실행합니다.

wait-for-vmi-status

가상 머신 인스턴스의 특정 상태를 기다린 후 상태에 따라 실패하거나 성공합니다.

참고

이제 파이프라인에서 가상 머신 생성에서 더 이상 사용되지 않는 템플릿 기반 작업 대신 ClusterInstanceTypeClusterPreference 를 사용합니다. create-vm-from-template,copy-template, modify-vm-template 명령은 계속 사용할 수 있지만 기본 파이프라인 작업에는 사용되지 않습니다.

7.12.3. Windows EFI 설치 프로그램 파이프라인

웹 콘솔 또는 CLI를 사용하여 Windows EFI 설치 프로그램 파이프라인 을 실행할 수 있습니다.

Windows EFI 설치 프로그램 파이프라인은 Windows 10, Windows 11 또는 Windows Server 2022를 Windows 설치 이미지(ISO 파일)의 새 데이터 볼륨에 설치합니다. 사용자 지정 응답 파일은 설치 프로세스를 실행하는 데 사용됩니다.

참고

Windows EFI 설치 프로그램 파이프라인은 OpenShift Container Platform에서 사전 정의하고 Microsoft ISO 파일에 적합한 sysprep 이 사전 정의된 구성 맵 파일을 사용합니다. 다른 Windows Edition과 관련된 ISO 파일의 경우 시스템별 sysprep 정의를 사용하여 새 구성 맵 파일을 생성해야 할 수 있습니다.

7.12.3.1. 웹 콘솔을 사용하여 예제 파이프라인 실행

웹 콘솔의 파이프라인 메뉴에서 예제 파이프라인 을 실행할 수 있습니다.

프로세스

  1. 사이드 메뉴에서 파이프라인 파이프라인 을 클릭합니다.
  2. 파이프라인 세부 정보 페이지를 열려면 파이프라인 을 선택합니다.
  3. 작업 목록에서 시작을 선택합니다. Start Pipeline 대화 상자가 표시됩니다.
  4. 매개변수의 기본값을 유지하고 시작을 클릭하여 파이프라인을 실행합니다. 세부 정보 탭에서는 각 작업의 진행 상황을 추적하고 파이프라인 상태를 표시합니다.

7.12.3.2. CLI를 사용하여 예제 파이프라인 실행

PipelineRun 리소스를 사용하여 예제 파이프라인을 실행합니다. PipelineRun 오브젝트는 파이프라인의 실행 중인 인스턴스입니다. 클러스터에서 특정 입력, 출력 및 실행 매개변수를 사용하여 실행할 파이프라인을 인스턴스화합니다. 또한 파이프라인의 각 작업에 대해 TaskRun 오브젝트를 생성합니다.

프로세스

  1. Windows 10 설치 프로그램 파이프라인을 실행하려면 다음 PipelineRun 매니페스트를 생성합니다.

    apiVersion: tekton.dev/v1beta1
    kind: PipelineRun
    metadata:
      generateName: windows10-installer-run-
      labels:
        pipelinerun: windows10-installer-run
    spec:
      params:
      - name: winImageDownloadURL
        value: <link_to_windows_10_iso> 1
      pipelineRef:
        name: windows10-installer
      taskRunSpecs:
        - pipelineTaskName: copy-template
          taskServiceAccountName: copy-template-task
        - pipelineTaskName: modify-vm-template
          taskServiceAccountName: modify-vm-template-task
        - pipelineTaskName: create-vm-from-template
          taskServiceAccountName: create-vm-from-template-task
        - pipelineTaskName: wait-for-vmi-status
          taskServiceAccountName: wait-for-vmi-status-task
        - pipelineTaskName: create-base-dv
          taskServiceAccountName: modify-data-object-task
        - pipelineTaskName: cleanup-vm
          taskServiceAccountName: cleanup-vm-task
      status: {}
    1
    Windows 10 64비트 ISO 파일의 URL을 지정합니다. 제품 언어는 영어(미국)여야 합니다.
  2. PipelineRun 매니페스트를 적용합니다.

    $ oc apply -f windows10-installer-run.yaml
  3. Windows 10 사용자 지정 파이프라인을 실행하려면 다음 PipelineRun 매니페스트를 생성합니다.

    apiVersion: tekton.dev/v1beta1
    kind: PipelineRun
    metadata:
      generateName: windows10-customize-run-
      labels:
        pipelinerun: windows10-customize-run
    spec:
      params:
        - name: allowReplaceGoldenTemplate
          value: true
        - name: allowReplaceCustomizationTemplate
          value: true
      pipelineRef:
        name: windows10-customize
      taskRunSpecs:
        - pipelineTaskName: copy-template-customize
          taskServiceAccountName: copy-template-task
        - pipelineTaskName: modify-vm-template-customize
          taskServiceAccountName: modify-vm-template-task
        - pipelineTaskName: create-vm-from-template
          taskServiceAccountName: create-vm-from-template-task
        - pipelineTaskName: wait-for-vmi-status
          taskServiceAccountName: wait-for-vmi-status-task
        - pipelineTaskName: create-base-dv
          taskServiceAccountName: modify-data-object-task
        - pipelineTaskName: cleanup-vm
          taskServiceAccountName: cleanup-vm-task
        - pipelineTaskName: copy-template-golden
          taskServiceAccountName: copy-template-task
        - pipelineTaskName: modify-vm-template-golden
          taskServiceAccountName: modify-vm-template-task
    status: {}
  4. PipelineRun 매니페스트를 적용합니다.

    $ oc apply -f windows10-customize-run.yaml

7.12.4. 추가 리소스

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.