1.3. OpenShift Virtualization 아키텍처


OLM(Operator Lifecycle Manager)은 OpenShift Virtualization의 각 구성 요소에 대해 Operator Pod를 배포합니다.

  • Compute: virt-operator
  • 스토리지: cdi-operator
  • 네트워크: cluster-network-addons-operator
  • 스케일링: ssp-operator
  • 템플릿: tekton-tasks-operator

또한 OLM은 다른 구성 요소의 배포, 구성 및 라이프 사이클과 hco-webhook 및 하이퍼 컨버지드-cluster- cli-download 라는 여러 도우미 Pod를 담당하는 hyperconverged-cluster- operator Pod를 배포합니다.

모든 Operator Pod가 성공적으로 배포된 후 HyperConverged CR(사용자 정의 리소스)을 생성해야 합니다. HyperConverged CR에 설정된 구성은 단일 정보 소스 및 OpenShift Virtualization의 진입점 역할을 하며 CR의 동작을 안내합니다.

HyperConverged CR은 조정 루프 내에서 다른 모든 구성 요소의 Operator에 대한 해당 CR을 생성합니다. 각 Operator는 OpenShift Virtualization 컨트롤 플레인에 대한 데몬 세트, 구성 맵 및 추가 구성 요소와 같은 리소스를 생성합니다. 예를 들어 HyperConverged Operator(HCO)가 KubeVirt CR을 생성하면 OpenShift Virtualization Operator가 이를 조정하고 virt-controller,virt-handler, virt-api 와 같은 추가 리소스를 생성합니다.

OLM은 HPP(Hostpath Provisioner) Operator를 배포하지만 hostpath-provisioner CR을 생성할 때까지 작동하지 않습니다.

배포

1.3.1. HyperConverged Operator(HCO) 정보

HCO인 hco-operator 는 OpenShift Virtualization과 의견이 지정된 기본값을 사용하여 여러 도우미 운영자를 배포 및 관리하기 위한 단일 진입점을 제공합니다. 또한 해당 Operator에 대한 CR(사용자 정의 리소스)을 생성합니다.

HCO-operator 구성 요소
표 1.7. HyperConverged Operator 구성 요소
Component설명

deployment/hco-webhook

HyperConverged 사용자 정의 리소스 콘텐츠를 검증합니다.

deployment/hyperconverged-cluster-cli-download

클러스터에서 직접 다운로드할 수 있도록 virtctl 툴 바이너리를 클러스터에 제공합니다.

KubeVirt/kubevirt-kubevirt-hyperconverged

OpenShift Virtualization에 필요한 모든 Operator, CR 및 개체를 포함합니다.

SSP/ssp-kubevirt-hyperconverged

스케줄링, 스케일 및 성능(SSP) CR. 이는 HCO에 의해 자동으로 생성됩니다.

CDI/cdi-kubevirt-hyperconverged

CDI(Containerized Data Importer) CR. 이는 HCO에 의해 자동으로 생성됩니다.

NetworkAddonsConfig/cluster

cluster-network-addons-operator 에 의해 지시 및 관리되는 CR입니다.

1.3.2. CDI(Containerized Data Importer) Operator 정보

CDI Operator인 cdi-operator 는 데이터 볼륨을 사용하여 CDI 및 해당 관련 리소스를 관리하여 VM(가상 머신) 이미지를 PVC(영구 볼륨 클레임)로 가져옵니다.

CDI-operator 구성 요소
표 1.8. CDI Operator 구성 요소
Component설명

deployment/cdi-apiserver

보안 업로드 토큰을 발행하여 VM 디스크를 PVC에 업로드하는 권한을 관리합니다.

deployment/cdi-uploadproxy

올바른 PVC에 쓸 수 있도록 외부 디스크 업로드 트래픽을 적절한 업로드 서버 pod로 전달합니다. 유효한 업로드 토큰이 필요합니다.

pod/cdi-importer

데이터 볼륨을 생성할 때 가상 머신 이미지를 PVC로 가져오는 도우미 Pod입니다.

1.3.3. CNO(Cluster Network Addons) Operator 정보

Cluster Network Addons Operator인 cluster-network-addons-operator 는 클러스터에 네트워킹 구성 요소를 배포하고 확장된 네트워크 기능에 대한 관련 리소스를 관리합니다.

cluster-network-addons-operator 구성 요소
표 1.9. CNO(Cluster Network Addons) Operator 구성 요소
Component설명

deployment/kubemacpool-cert-manager

Kubemacpool의 Webhook TLS 인증서를 관리합니다.

deployment/kubemacpool-mac-controller-manager

VM(가상 머신) 네트워크 인터페이스 카드(NIC)에 대한 MAC 주소 풀링 서비스를 제공합니다.

daemonset/bridge-marker

노드에서 사용 가능한 네트워크 브릿지를 노드 리소스로 표시합니다.

daemonset/kube-cni-linux-bridge-plugin

클러스터 노드에 CNI(Container Network Interface) 플러그인을 설치하여 네트워크 연결 정의를 통해 Linux 브리지에 VM을 연결할 수 있습니다.

1.3.4. HPP(Hostpath Provisioner) Operator 정보

HPP Operator인 hostpath-provisioner-operator 는 다중 노드 HPP 및 관련 리소스를 배포 및 관리합니다.

HPP-operator 구성 요소
표 1.10. HPP Operator 구성 요소
Component설명

deployment/hpp-pool-hpp-csi-pvc-block-<worker_node_name>

HPP가 실행되도록 지정된 각 노드에 대해 작업자를 제공합니다. Pod는 지정된 백업 스토리지를 노드에 마운트합니다.

daemonset/hostpath-provisioner-csi

HPP의 CSI(Container Storage Interface) 드라이버 인터페이스를 구현합니다.

daemonset/hostpath-provisioner

HPP의 레거시 드라이버 인터페이스를 구현합니다.

1.3.5. SSP(Scheduling, Scale, Performance) Operator 정보

SSP Operator, ssp-operator 는 공통 템플릿, 관련 기본 부팅 소스, 파이프라인 작업, 템플릿 검증기를 배포합니다.

SSP-operator 구성 요소
표 1.11. SSP Operator 구성 요소
Component설명

deployment/create-vm-from-template

템플릿에서 VM을 생성합니다.

deployment/copy-template

VM 템플릿을 복사합니다.

deployment/modify-vm-template

VM 템플릿을 생성하거나 제거합니다.

deployment/modify-data-object

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

deployment/cleanup-vm

VM에서 스크립트 또는 명령을 실행한 다음 VM을 중지하거나 삭제합니다.

deployment/disk-virt-customize

virt- customize 를 사용하여 대상 PVC(영구 볼륨 클레임)에서 사용자 지정 스크립트를 실행합니다.

deployment/disk-virt-sysprep

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

deployment/wait-for-vmi-status

특정 VMI(가상 머신 인스턴스) 상태를 기다린 다음 해당 상태에 따라 실패하거나 성공합니다.

deployment/create-vm-from-manifest

매니페스트에서 VM을 생성합니다.

1.3.6. OpenShift Virtualization Operator 정보

virt-operator OpenShift Virtualization Operator는 현재 VM(가상 머신) 워크로드를 중단하지 않고 OpenShift Virtualization을 배포, 업그레이드 및 관리합니다.

virt-operator 구성 요소
표 1.12. virt-operator 구성 요소
Component설명

deployment/virt-api

모든 가상화 관련 흐름의 진입점 역할을 하는 HTTP API 서버입니다.

deployment/virt-controller

새 VM 인스턴스 오브젝트 생성을 관찰하고 해당 Pod를 생성합니다. 노드에 Pod가 예약되면 virt-controller 는 VM을 노드 이름으로 업데이트합니다.

daemonset/virt-handler

VM에 대한 모든 변경 사항을 모니터링하고 virt-launcher 에 필요한 작업을 수행하도록 지시합니다. 이 구성 요소는 노드에 따라 다릅니다.

pod/virt-launcher

libvirtqemu 에서 구현한 사용자가 생성한 VM을 포함합니다.

Red Hat logoGithubRedditYoutubeTwitter

자세한 정보

평가판, 구매 및 판매

커뮤니티

Red Hat 문서 정보

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

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

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

Red Hat 소개

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

© 2024 Red Hat, Inc.