가상화
OpenShift Virtualization 설치, 사용법, 릴리스 정보
초록
1장. 정보 링크 복사링크가 클립보드에 복사되었습니다!
1.1. OpenShift Virtualization 정보 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization의 기능 및 지원 범위에 대해 알아보십시오.
1.1.1. OpenShift Virtualization으로 수행할 수 있는 작업 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization은 컨테이너 워크로드와 함께 가상 머신 워크로드를 실행하고 관리할 수 있는 OpenShift Container Platform의 애드온입니다.
OpenShift Virtualization은 Kubernetes 사용자 지정 리소스를 사용하여 가상화 작업을 활성화하여 OpenShift Container Platform 클러스터에 새 개체를 추가합니다. 다음과 같은 가상화 작업이 지원됩니다.
- Linux 및 Windows VM(가상 머신) 생성 및 관리
- 클러스터에서 서로 함께 Pod 및 VM 워크로드 실행
- 다양한 콘솔 및 CLI 툴을 통해 가상 머신에 연결
- 기존 가상 머신 가져오기 및 복제
- 가상 머신에 연결된 네트워크 인터페이스 컨트롤러 및 스토리지 디스크 관리
- 노드 간 실시간 가상 머신 마이그레이션
향상된 웹 콘솔에서 제공되는 그래픽 포털을 통해 OpenShift Container Platform 클러스터 컨테이너 및 인프라와 함께 가상화 리소스를 관리할 수 있습니다.
OpenShift Virtualization은 Red Hat OpenShift Data Foundation 기능과 원활하게 작동하도록 설계 및 테스트되었습니다.
OpenShift Data Foundation을 사용하여 OpenShift Virtualization을 배포할 때 Windows 가상 머신 디스크용 전용 스토리지 클래스를 생성해야 합니다. 자세한 내용은 Windows VM용 ODF PersistentVolume 최적화 를 참조하십시오.
OVN-Kubernetes,OpenShift SDN 또는 인증된 OpenShift CNI 플러그인에 나열된 다른 인증 네트워크 플러그인 중 하나와 함께 OpenShift Virtualization을 사용할 수 있습니다.
Compliance Operator 를 설치하고 ocp4-moderate
및 ocp4-moderate-node
프로필 을 사용하여 검사를 실행하여 OpenShift Virtualization 클러스터에서 규정 준수 문제를 확인할 수 있습니다. Compliance Operator는 NIST 인증 툴 인 OpenSCAP을 사용하여 보안 정책을 검사하고 적용합니다.
1.1.1.1. OpenShift Virtualization 지원 클러스터 버전 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 4.15 클러스터에서 사용할 수 있도록 OpenShift Virtualization 4.15가 지원됩니다. OpenShift Virtualization의 최신 z-stream 릴리스를 사용하려면 먼저 OpenShift Container Platform의 최신 버전으로 업그레이드해야 합니다.
1.1.2. 가상 머신 디스크의 볼륨 및 액세스 모드 정보 링크 복사링크가 클립보드에 복사되었습니다!
알려진 스토리지 공급자와 스토리지 API를 사용하는 경우 볼륨 및 액세스 모드가 자동으로 선택됩니다. 그러나 스토리지 프로필이 없는 스토리지 클래스를 사용하는 경우 볼륨 및 액세스 모드를 구성해야 합니다.
최상의 결과를 얻으려면 RWX( ReadWriteMany
) 액세스 모드와 Block
볼륨 모드를 사용합니다. 이는 다음과 같은 이유로 중요합니다.
-
실시간 마이그레이션에는 RWX(
ReadWriteMany
) 액세스 모드가 필요합니다. 블록
볼륨 모드는Filesystem
볼륨 모드보다 훨씬 더 잘 작동합니다. 이는Filesystem
볼륨 모드가 파일 시스템 계층 및 디스크 이미지 파일을 포함하여 더 많은 스토리지 계층을 사용하기 때문입니다. 이러한 계층은 VM 디스크 스토리지에 필요하지 않습니다.예를 들어 Red Hat OpenShift Data Foundation을 사용하는 경우 CephFS 볼륨에 Ceph RBD 볼륨을 사용하는 것이 좋습니다.
다음 구성으로 가상 머신을 실시간 마이그레이션할 수 없습니다.
-
RWO(
ReadWriteOnce
) 액세스 모드가 있는 스토리지 볼륨 - GPU와 같은 패스스루 기능
이러한 가상 머신에 대해 evictionStrategy
필드를 None
으로 설정합니다. None
전략은 노드를 재부팅하는 동안 VM의 전원을 끕니다.
1.1.3. 단일 노드 OpenShift 차이점 링크 복사링크가 클립보드에 복사되었습니다!
단일 노드 OpenShift에 OpenShift Virtualization을 설치할 수 있습니다.
그러나 Single-node OpenShift는 다음 기능을 지원하지 않습니다.
- 고가용성
- Pod 중단
- 실시간 마이그레이션
- 제거 전략이 구성된 가상 머신 또는 템플릿
1.2. 보안 정책 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization 보안 및 권한 부여에 대해 알아보십시오.
키 포인트
-
OpenShift Virtualization은 Pod 보안을 위해 현재 모범 사례를 적용하는 것을 목표로
제한된
Kubernetes Pod 보안 표준 프로필을 준수합니다. - VM(가상 머신) 워크로드는 권한이 없는 Pod로 실행됩니다.
-
SCC( 보안 컨텍스트 제약 조건 )는
kubevirt-controller
서비스 계정에 대해 정의됩니다. - OpenShift Virtualization 구성 요소의 TLS 인증서는 자동으로 갱신되고 순환됩니다.
1.2.1. 워크로드 보안 정보 링크 복사링크가 클립보드에 복사되었습니다!
기본적으로 VM(가상 머신) 워크로드는 OpenShift Virtualization에서 root 권한으로 실행되지 않으며 루트 권한이 필요한 OpenShift Virtualization 기능이 없습니다.
각 VM에 대해 virt-launcher
Pod는 세션 모드에서 libvirt
인스턴스를 실행하여 VM 프로세스를 관리합니다. 세션 모드에서 libvirt
데몬은 루트가 아닌 사용자 계정으로 실행되며 동일한 사용자 식별자(UID)에서 실행 중인 클라이언트의 연결만 허용합니다. 따라서 VM은 권한이 없는 포드로 실행되며 최소 권한의 보안 원칙을 따릅니다.
1.2.2. TLS 인증서 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization 구성 요소의 TLS 인증서는 자동으로 갱신되고 순환됩니다. 수동으로 새로 고치지 않아도 됩니다.
자동 갱신 일정
TLS 인증서는 다음 일정에 따라 자동으로 삭제되고 교체됩니다.
- KubeVirt 인증서는 매일 갱신됩니다.
- CDI(Containerized Data Importer) 컨트롤러 인증서는 15일마다 갱신됩니다.
- MAC 풀 인증서는 매년 갱신됩니다.
자동 TLS 인증서 순환이 수행되어도 작업이 중단되지 않습니다. 예를 들면 다음 작업이 중단되지 않고 계속 수행됩니다.
- 마이그레이션
- 이미지 업로드
- VNC 및 콘솔 연결
1.2.3. 권한 부여 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization에서는 역할 기반 액세스 제어 (RBAC)를 사용하여 사용자 및 서비스 계정에 대한 권한을 정의합니다. 서비스 계정에 정의된 권한은 OpenShift Virtualization 구성 요소가 수행할 수 있는 작업을 제어합니다.
RBAC 역할을 사용하여 가상화 기능에 대한 사용자 액세스를 관리할 수도 있습니다. 예를 들어 관리자는 가상 머신을 시작하는 데 필요한 권한을 제공하는 RBAC 역할을 생성할 수 있습니다. 그러면 관리자가 특정 사용자에게 역할을 바인딩하여 액세스를 제한할 수 있습니다.
1.2.3.1. OpenShift Virtualization의 기본 클러스터 역할 링크 복사링크가 클립보드에 복사되었습니다!
클러스터 역할 집계를 사용하면 OpenShift Virtualization에서 기본 OpenShift Container Platform 클러스터 역할을 확장하여 가상화 오브젝트에 대한 액세스 권한을 포함합니다.
기본 클러스터 역할 | OpenShift Virtualization 클러스터 역할 | OpenShift Virtualization 클러스터 역할 설명 |
---|---|---|
|
| 클러스터의 모든 OpenShift Virtualization 리소스를 볼 수 있지만 생성, 삭제, 수정 또는 액세스할 수 없는 사용자입니다. 예를 들어 사용자는 VM(가상 머신)이 실행 중이지만 이를 종료하거나 콘솔에 액세스할 수 없음을 확인할 수 있습니다. |
|
| 클러스터의 모든 OpenShift Virtualization 리소스를 수정할 수 있는 사용자입니다. 예를 들어 사용자가 VM을 생성하고 VM 콘솔에 액세스한 후 VM을 삭제할 수 있습니다. |
|
|
리소스 컬렉션 삭제 기능을 포함하여 모든 OpenShift Virtualization 리소스에 대한 전체 권한이 있는 사용자입니다. 사용자는 |
1.2.3.2. OpenShift Virtualization의 스토리지 기능에 대한 RBAC 역할 링크 복사링크가 클립보드에 복사되었습니다!
cdi-operator
및 cdi-controller
서비스 계정을 포함하여 CDI(Containerized Data Importer)에 다음 권한이 부여됩니다.
1.2.3.2.1. 클러스터 전체 RBAC 역할 링크 복사링크가 클립보드에 복사되었습니다!
CDI 클러스터 역할 | Resources | verbs |
---|---|---|
|
|
|
|
| |
|
|
|
|
| |
|
|
|
|
| |
|
|
|
API 그룹 | Resources | verbs |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
허용 목록: |
|
|
허용 목록: |
|
|
|
|
API 그룹 | Resources | verbs |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.2.3.2.2. 네임스페이스가 지정된 RBAC 역할 링크 복사링크가 클립보드에 복사되었습니다!
API 그룹 | Resources | verbs |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
API 그룹 | Resources | verbs |
---|---|---|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
1.2.3.3. kubevirt-controller 서비스 계정에 대한 추가 SCC 및 권한 링크 복사링크가 클립보드에 복사되었습니다!
SCC(보안 컨텍스트 제약 조건)는 Pod에 대한 권한을 제어합니다. 이러한 권한에는 컨테이너 모음인 Pod에서 수행할 수 있는 작업과 액세스할 수 있는 리소스가 포함됩니다. Pod가 시스템에 수용되려면 일련의 조건을 함께 실행해야 하는데, SCC를 사용하여 이러한 조건을 정의할 수 있습니다.
virt-controller
는 클러스터의 가상 머신에 대해 virt-launcher
Pod를 생성하는 클러스터 컨트롤러입니다. 이러한 Pod에는 kubevirt-controller
서비스 계정에서 권한을 부여합니다.
kubevirt-controller
서비스 계정에는 적절한 권한으로 virt-launcher
Pod를 생성할 수 있도록 추가 SCC 및 Linux 기능이 부여됩니다. 이러한 확장된 권한을 통해 가상 머신은 일반적인 Pod 범위를 벗어나는 OpenShift Virtualization 기능을 사용할 수 있습니다.
kubevirt-controller
서비스 계정에는 다음 SCC가 부여됩니다.
-
scc.AllowHostDirVolumePlugin = true
가상 머신에서 hostpath 볼륨 플러그인을 사용할 수 있습니다. -
scc.AllowPrivilegedContainer = false
virt-launcher Pod가 권한 있는 컨테이너로 실행되지 않습니다. scc.AllowedCapabilities = []corev1.Capability{"SYS_NICE", "NET_BIND_SERVICE"}
-
SYS_NICE
를 사용하면 CPU 선호도를 설정할 수 있습니다. -
NET_BIND_SERVICE
는 DHCP 및 Slirp 작업을 허용합니다.
-
kubevirt-controller에 대한 SCC 및 RBAC 정의 보기
oc
툴을 사용하여 kubevirt-controller
에 대한 SecurityContextConstraints
정의를 볼 수 있습니다.
oc get scc kubevirt-controller -o yaml
$ oc get scc kubevirt-controller -o yaml
oc
툴을 사용하여 kubevirt-controller
clusterrole에 대한 RBAC 정의를 볼 수 있습니다.
oc get clusterrole kubevirt-controller -o yaml
$ oc get clusterrole kubevirt-controller -o yaml
1.3. OpenShift Virtualization Architecture 링크 복사링크가 클립보드에 복사되었습니다!
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를 담당하는
Pod를 배포합니다.
hyperconverged-cluster-
operator
모든 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(사용자 정의 리소스)을 생성합니다.
Component | 설명 |
---|---|
|
|
|
클러스터에서 직접 다운로드할 수 있도록 |
| OpenShift Virtualization에 필요한 모든 Operator, CR 및 개체를 포함합니다. |
| 스케줄링, 스케일 및 성능(SSP) CR. 이는 HCO에 의해 자동으로 생성됩니다. |
| CDI(Containerized Data Importer) CR. 이는 HCO에 의해 자동으로 생성됩니다. |
|
|
1.3.2. CDI(Containerized Data Importer) Operator 정보 링크 복사링크가 클립보드에 복사되었습니다!
CDI Operator인 cdi-operator
는 데이터 볼륨을 사용하여 CDI 및 해당 관련 리소스를 관리하여 VM(가상 머신) 이미지를 PVC(영구 볼륨 클레임)로 가져옵니다.
Component | 설명 |
---|---|
| 보안 업로드 토큰을 발행하여 VM 디스크를 PVC에 업로드하는 권한을 관리합니다. |
| 올바른 PVC에 쓸 수 있도록 외부 디스크 업로드 트래픽을 적절한 업로드 서버 pod로 전달합니다. 유효한 업로드 토큰이 필요합니다. |
| 데이터 볼륨을 생성할 때 가상 머신 이미지를 PVC로 가져오는 도우미 Pod입니다. |
1.3.3. CNO(Cluster Network Addons) Operator 정보 링크 복사링크가 클립보드에 복사되었습니다!
Cluster Network Addons Operator인 cluster-network-addons-operator
는 클러스터에 네트워킹 구성 요소를 배포하고 확장된 네트워크 기능에 대한 관련 리소스를 관리합니다.
Component | 설명 |
---|---|
| Kubemacpool의 Webhook TLS 인증서를 관리합니다. |
| VM(가상 머신) 네트워크 인터페이스 카드(NIC)에 대한 MAC 주소 풀링 서비스를 제공합니다. |
| 노드에서 사용 가능한 네트워크 브릿지를 노드 리소스로 표시합니다. |
| 클러스터 노드에 CNI(Container Network Interface) 플러그인을 설치하여 네트워크 연결 정의를 통해 Linux 브리지에 VM을 연결할 수 있습니다. |
1.3.4. HPP(Hostpath Provisioner) Operator 정보 링크 복사링크가 클립보드에 복사되었습니다!
HPP Operator인 hostpath-provisioner-operator
는 다중 노드 HPP 및 관련 리소스를 배포 및 관리합니다.
Component | 설명 |
---|---|
| HPP가 실행되도록 지정된 각 노드에 대해 작업자를 제공합니다. Pod는 지정된 백업 스토리지를 노드에 마운트합니다. |
| HPP의 CSI(Container Storage Interface) 드라이버 인터페이스를 구현합니다. |
| HPP의 레거시 드라이버 인터페이스를 구현합니다. |
1.3.5. SSP(Scheduling, Scale, Performance) Operator 정보 링크 복사링크가 클립보드에 복사되었습니다!
SSP Operator, ssp-operator
는 공통 템플릿, 관련 기본 부팅 소스, 파이프라인 작업, 템플릿 검증기를 배포합니다.
Component | 설명 |
---|---|
| 템플릿에서 VM을 생성합니다. |
| VM 템플릿을 복사합니다. |
| VM 템플릿을 생성하거나 제거합니다. |
| 데이터 볼륨 또는 데이터 소스를 생성하거나 제거합니다. |
| VM에서 스크립트 또는 명령을 실행한 다음 VM을 중지하거나 삭제합니다. |
|
|
|
|
| 특정 VMI(가상 머신 인스턴스) 상태를 기다린 다음 해당 상태에 따라 실패하거나 성공합니다. |
| 매니페스트에서 VM을 생성합니다. |
1.3.6. OpenShift Virtualization Operator 정보 링크 복사링크가 클립보드에 복사되었습니다!
virt-operator
OpenShift Virtualization Operator는 현재 VM(가상 머신) 워크로드를 중단하지 않고 OpenShift Virtualization을 배포, 업그레이드 및 관리합니다.
Component | 설명 |
---|---|
| 모든 가상화 관련 흐름의 진입점 역할을 하는 HTTP API 서버입니다. |
|
새 VM 인스턴스 오브젝트 생성을 관찰하고 해당 Pod를 생성합니다. 노드에 Pod가 예약되면 |
|
VM에 대한 모든 변경 사항을 모니터링하고 |
|
|
2장. 릴리스 노트 링크 복사링크가 클립보드에 복사되었습니다!
2.1. OpenShift Virtualization 릴리스 정보 링크 복사링크가 클립보드에 복사되었습니다!
2.1.1. 보다 포괄적 수용을 위한 오픈 소스 용어 교체 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat은 코드, 문서, 웹 속성에서 문제가 있는 용어를 교체하기 위해 최선을 다하고 있습니다. 먼저 마스터(master), 슬레이브(slave), 블랙리스트(blacklist), 화이트리스트(whitelist) 등 네 가지 용어를 교체하고 있습니다. 이러한 변경 작업은 작업 범위가 크므로 향후 여러 릴리스에 걸쳐 점차 구현할 예정입니다. 자세한 내용은 CTO Chris Wright의 메시지를 참조하십시오.
2.1.2. 문서 피드백 제공 링크 복사링크가 클립보드에 복사되었습니다!
오류를 보고하거나 문서를 개선하기 위해 Red Hat Jira 계정에 로그인하여 Jira 문제를 제출하십시오.
2.1.3. Red Hat OpenShift Virtualization 정보 링크 복사링크가 클립보드에 복사되었습니다!
Red Hat OpenShift Virtualization을 사용하면 기존 VM(가상 머신)을 OpenShift Container Platform에 가져와서 컨테이너와 함께 실행할 수 있습니다. OpenShift Virtualization에서 VM은 OpenShift Container Platform 웹 콘솔 또는 명령줄을 사용하여 관리할 수 있는 기본 Kubernetes 오브젝트입니다.
OpenShift Virtualization은
아이콘으로 표시됩니다.
OVN-Kubernetes 또는 OpenShiftSDN 기본 CNI(Container Network Interface) 네트워크 공급자와 함께 OpenShift Virtualization을 사용할 수 있습니다.
OpenShift Virtualization으로 수행할 수 있는 작업에 대해 자세히 알아보십시오.
OpenShift Virtualization 아키텍처 및 배포에 대해 자세히 알아보십시오.
OpenShift Virtualization을 위한 클러스터를 준비합니다.
2.1.3.1. OpenShift Virtualization 지원 클러스터 버전 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 4.15 클러스터에서 사용할 수 있도록 OpenShift Virtualization 4.15가 지원됩니다. OpenShift Virtualization의 최신 z-stream 릴리스를 사용하려면 먼저 OpenShift Container Platform의 최신 버전으로 업그레이드해야 합니다.
2.1.3.2. 지원되는 게스트 운영 체제 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization에서 지원되는 게스트 운영 체제를 보려면 Certified Guest Operating Systems in Red Hat OpenStack Platform, Red Hat Virtualization, OpenShift Virtualization 및 Red Hat Enterprise Linux with KVM 을 참조하십시오.
2.1.3.3. Microsoft Windows SVVP 인증 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization은 Microsoft의 Windows SVVP(서버 가상화 유효성 검사 프로그램)에서 Windows Server 워크로드를 실행하도록 인증되었습니다.
SVVP 인증은 다음에 적용됩니다.
- Red Hat Enterprise Linux CoreOS 작업자. SVVP 카탈로그에서는 RHEL CoreOS 9의 Red Hat OpenShift Container Platform 4로 이름이 지정됩니다.
- Intel 및 AMD CPU
2.1.4. 퀵스타트 링크 복사링크가 클립보드에 복사되었습니다!
여러 OpenShift Virtualization 기능에 대한 퀵스타트 둘러보기를 사용할 수 있습니다. 둘러보기를 보려면 OpenShift Container Platform 웹 콘솔의 헤더에 있는 메뉴 표시줄에서 도움말 아이콘 ? 을 클릭한 다음 빠른 시작을 선택합니다. 필터 필드에 키워드 가상화를
입력하여 사용 가능한 둘러보기를 필터링 할 수 있습니다.
2.1.5. 새로운 기능 및 변경된 기능 링크 복사링크가 클립보드에 복사되었습니다!
이 릴리스에는 다음 구성 요소 및 개념과 관련된 새로운 기능 및 개선 사항이 추가되었습니다.
2.1.5.1. 설치 및 업데이트 링크 복사링크가 클립보드에 복사되었습니다!
-
kubevirt_vm_created_total
메트릭을 사용하여 지정된 네임스페이스에 생성된 VM 수를 쿼리할 수 있습니다.
2.1.5.2. 인프라 링크 복사링크가 클립보드에 복사되었습니다!
-
이제
instanceType
API에서 더 안정적인v1beta1
버전을 사용합니다.
2.1.5.3. 가상화 링크 복사링크가 클립보드에 복사되었습니다!
- 이제 VM 게스트의 직렬 콘솔 로그에 대한 액세스를 활성화하여 문제 해결을 원활하게 수행할 수 있습니다. 이 기능은 기본적으로 비활성화되어 있습니다. 클러스터 관리자는 웹 콘솔 또는 CLI를 사용하여 VM의 기본 설정을 변경할 수 있습니다. 사용자는 클러스터 전체 기본 설정과 관계없이 개별 VM에서 게스트 로그 액세스를 전환할 수 있습니다.
- 무료 페이지 보고는 기본적으로 활성화되어 있습니다.
- 노드가 과부하될 때 커널 동일 페이지 병합(KSM)을 활성화 하도록 OpenShift Virtualization을 구성할 수 있습니다.
2.1.5.4. 네트워킹 링크 복사링크가 클립보드에 복사되었습니다!
- 보조 네트워크 인터페이스를 실행 중인 VM(가상 머신)에 핫플러그 할 수 있습니다. 핫플러그 및 핫 플러그는 OpenShift Virtualization 4.14 이상에서 생성된 VM에서만 지원됩니다. SR-IOV(Single Root I/O Virtualization) 인터페이스에 핫 연결 해제는 지원되지 않습니다.
- OpenShift Virtualization은 이제 OVN-Kubernetes 보조 네트워크의 localnet 토폴로지를 지원합니다. localnet 토폴로지는 보조 네트워크를 물리적 오버레이에 연결합니다. 이렇게 하면 east-west 클러스터 트래픽과 클러스터 외부에서 실행되는 서비스에 대한 액세스를 모두 사용할 수 있지만 클러스터 노드에서 기본 OVS(Open vSwitch) 시스템에 대한 추가 구성이 필요합니다.
-
OVN-Kubernetes 보조 네트워크는 VM로의 트래픽 흐름을 제어하기 위해
MultiNetworkPolicy
CRD(사용자 정의 리소스 정의)를 제공하는 다중 네트워크 정책 API 와 호환됩니다.ipBlock
속성을 사용하여 특정 CIDR 블록에 대한 네트워크 정책 수신 및 송신 규칙을 정의할 수 있습니다.
- SR-IOV에서 DPDK 워크로드에 대한 클러스터를 구성하는 것은 이전에는 기술 프리뷰였으며 이제 일반적으로 사용할 수 있습니다.
2.1.5.5. 스토리지 링크 복사링크가 클립보드에 복사되었습니다!
-
데이터 볼륨을 복제할 때 CDI(Containerized Data Importer)는 특정 사전 요구 사항이 충족되면 효율적인 CSI(Container Storage Interface) 복제를 선택합니다. 더 효율적인 방법인 호스트 지원 복제가 폴백으로 사용됩니다. 호스트 지원 복제가 사용된 이유를 이해하려면 복제된 PVC(영구 볼륨 클레임)에서
cdi.kubevirt.io/cloneFallbackReason
주석을 확인할 수 있습니다.
2.1.5.6. 웹 콘솔 링크 복사링크가 클립보드에 복사되었습니다!
- 볼륨 또는 PVC(영구 볼륨 클레임)에서 VM(가상 머신)을 생성하기 위해 사용자 지정 인스턴스 유형 및 기본 설정을 설치하고 편집하는 것은 이전에는 이전에는 기술 프리뷰였으며 일반적으로 사용할 수 있습니다.
- 이제 프리뷰 기능 탭은 가상화 → 개요 → 설정에서 확인할 수 있습니다.
여러 VM이 동일한 기본 스토리지를 공유할 수 있도록 일반 VM(가상 머신) 또는 LUN 지원 VM 디스크에 대한 디스크 공유를 구성할 수 있습니다. 공유할 모든 디스크는 블록 모드여야 합니다.
LUN 지원 블록 모드 VM 디스크를 여러 VM에서 공유할 수 있도록 하려면 클러스터 관리자가 SCSI
persistentReservation
기능 게이트를 활성화해야 합니다.자세한 내용은 가상 머신의 공유 볼륨 구성 을 참조하십시오.
- VirtualMachine 세부 정보 페이지의 구성 탭에서 VM 구성 설정을 검색할 수 있습니다.
- 이제 가상화 → 개요 → 설정 → 클러스터 → 일반 설정 → SSH 구성에서 NodePort 서비스를 통해 SSH 를 구성할 수 있습니다.
- 인스턴스 유형에서 VM을 생성할 때 OpenShift Container Platform 웹 콘솔의 볼륨 목록에 켜지어 선호하는 부팅 가능한 볼륨을 지정할 수 있습니다.
- 웹 콘솔을 사용하여 VM 대기 시간 점검을 실행할 수 있습니다. 사이드 메뉴에서 가상화 → 검사 → 네트워크 대기 시간을 클릭합니다. 첫 번째 검사를 실행하려면 권한 설치를 클릭한 다음 점검 실행을 클릭합니다.
- 웹 콘솔을 사용하여 스토리지 검증 점검을 실행할 수 있습니다. 사이드 메뉴에서 가상화 → 점검 → 스토리지를 클릭합니다. 첫 번째 검사를 실행하려면 권한 설치를 클릭한 다음 점검 실행을 클릭합니다.
- 웹 콘솔 을 사용하여 모든 클러스터 노드에 대해 커널 동일 페이지 병합(KSM) 활성화 기능을 활성화 하거나 비활성화할 수 있습니다.
- 웹 콘솔을 사용하여 SR-IOV(Single Root I/O Virtualization) 인터페이스를 실행 중인 VM(가상 머신)에 핫플러그할 수 있습니다.
- 이제 VM 생성 중 공개 SSH 키를 추가하거나 기존 VM에 보안을 추가할 때 다른 프로젝트의 기존 시크릿을 사용할 수 있습니다.
- OpenShift Container Platform 웹 콘솔 을 사용하여 OVN-Kubernetes localnet 토폴로지에 대한 네트워크 연결 정의(NAD)를 생성할 수 있습니다.
2.1.6. 사용되지 않거나 삭제된 기능 링크 복사링크가 클립보드에 복사되었습니다!
2.1.6.1. 더 이상 사용되지 않는 기능 링크 복사링크가 클립보드에 복사되었습니다!
더 이상 사용되지 않는 기능은 현재 릴리스에 포함되어 있으며 지원됩니다. 그러나 향후 릴리스에서 제거될 예정이므로 새로운 배포에는 사용하지 않는 것이 좋습니다.
-
tekton-tasks-operator
는 더 이상 사용되지 않으며 Tekton 작업과 예제 파이프라인은 이제ssp-operator
에서 배포합니다.
-
copy-template
,modify-vm-template
및create-vm-from-template
작업은 더 이상 사용되지 않습니다.
- Windows Server 2012 R2 템플릿에 대한 지원은 더 이상 사용되지 않습니다.
2.1.6.2. 삭제된 기능 링크 복사링크가 클립보드에 복사되었습니다!
제거된 기능은 현재 릴리스에서 지원되지 않습니다.
- 기존 HPP 사용자 정의 리소스 및 관련 스토리지 클래스에 대한 지원이 모든 새 배포에 대해 제거되었습니다. OpenShift Virtualization 4.15에서 HPP Operator는 Kubernetes CSI(Container Storage Interface) 드라이버를 사용하여 로컬 스토리지를 구성합니다. 레거시 HPP 사용자 지정 리소스는 이전 버전의 OpenShift Virtualization에 설치된 경우에만 지원됩니다.
- CentOS 7 및 CentOS 스트림 8은 이제 지원 종료 단계에 있습니다. 그 결과 이러한 운영 체제의 컨테이너 이미지가 OpenShift Virtualization에서 제거되었으며 더 이상 커뮤니티가 지원되지 않습니다.
2.1.7. 기술 프리뷰 기능 링크 복사링크가 클립보드에 복사되었습니다!
이 릴리스의 일부 기능은 현재 기술 프리뷰 단계에 있습니다. 이러한 실험적 기능은 프로덕션용이 아닙니다. 해당 기능은 Red Hat Customer Portal의 지원 범위를 참조하십시오.
- 이제 OpenShift Virtualization 호스트에서 중첩된 가상화를 활성화할 수 있습니다.
- 클러스터 관리자는 이제 개요 → 설정 → 클러스터 → 프리뷰 기능에 있는 OpenShift Container Platform 웹 콘솔의 네임스페이스에서 CPU 리소스 제한을 활성화할 수 있습니다.
2.1.8. 버그 수정 링크 복사링크가 클립보드에 복사되었습니다!
-
이전에는
volumeBindingMode
가WaitForFirstConsumer
로 설정된 스토리지 클래스로 시작할 때windows-efi-installer
파이프라인이 실패했습니다. 이번 수정에서는 파이프라인이 실패하는StorageClass
오브젝트의 주석을 제거합니다. (CNV-32287) -
이전 버전에서는
openshift-virtualization-os-images
네임스페이스에 제공된 데이터 소스를 사용하여 약 1000개의 VM(가상 머신)을 동시에 복제한 경우 일부 VM이 실행 중 상태로 이동되지 않았습니다. 이번 수정을 통해 다수의 VM을 동시에 복제할 수 있습니다. (CNV-30083) -
이전에는
install-config.yaml
파일에서networkType: OVNKubernetes
를 사용할 때 웹 콘솔에 표시되는NodePort
서비스 및 정규화된 도메인 이름(FQDN)을 사용하여 VM에 SSH를 수행할 수 없었습니다. 이번 업데이트를 통해 SSHNodePort
서비스에 대해 액세스 가능한 유효한 엔드포인트가 표시되도록 웹 콘솔을 구성할 수 있습니다. (CNV-24889) - 이번 업데이트를 통해 가상 디스크를 핫플러그한 후 VMI(가상 머신 인스턴스)에 대한 실시간 마이그레이션이 더 이상 실패하지 않습니다. (CNV-34761)
2.1.9. 확인된 문제 링크 복사링크가 클립보드에 복사되었습니다!
모니터링
네트워킹
노드
-
OpenShift Virtualization을 설치 제거해도 OpenShift Virtualization에서 생성한
feature.node.kubevirt.io
노드 레이블이 제거되지 않습니다. 레이블을 수동으로 제거해야 합니다. (CNV-38543)
- 컴퓨팅 노드가 다른 이기종 클러스터에서 HyperV 재조화가 활성화된 가상 머신은 TSC( timestamp-counter scaling)를 지원하지 않거나 적절한 TSC 빈도를 가진 노드에서 예약할 수 없습니다. (BZ#2151169)
스토리지
AWS에서 Portworx를 스토리지 솔루션으로 사용하고 VM 디스크 이미지를 생성하는 경우 두 번 고려되는 파일 시스템 오버헤드로 인해 생성된 이미지가 예상보다 작을 수 있습니다. (CNV-32695)
- 이 문제를 해결하려면 초기 프로비저닝 프로세스가 완료된 후 PVC(영구 볼륨 클레임)를 수동으로 확장하여 사용 가능한 공간을 늘릴 수 있습니다.
경우에 따라 여러 가상 머신이 읽기-쓰기 모드로 동일한 PVC를 마운트할 수 있으므로 데이터가 손상될 수 있습니다. (CNV-13500)
- 이 문제를 해결하려면 여러 VM이 있는 읽기-쓰기 모드에서 단일 PVC를 사용하지 마십시오.
csi-clone
복제 전략을 사용하여 100개 이상의 VM을 복제하면 Ceph CSI에서 복제본을 제거하지 못할 수 있습니다. 복제를 수동으로 삭제하는 경우에도 실패할 수 있습니다. (CNV-23501)-
이 문제를 해결하려면
ceph-mgr
을 다시 시작하여 VM 복제를 제거할 수 있습니다.
-
이 문제를 해결하려면
가상화
qemu-kvm
의 중요한 버그로 인해 디스크 핫플러그 작업 후 VM이 중단되고 I/O 오류가 발생했습니다. 이 문제는 핫 플러그 작업과 관련이 없는 운영 체제 디스크 및 기타 디스크에도 영향을 미칠 수 있습니다. 운영 체제 디스크가 작동을 중지하면 루트 파일 시스템이 종료됩니다. 자세한 내용은 Red Hat 지식 베이스에서 일부 추가 디스크를 핫플러그한 후 가상 머신의 디스크 액세스 권한 손실을 참조하십시오.중요패키지 버전 관리로 인해 OpenShift Virtualization을 4.13.z 또는 4.14.z에서 4.15.0으로 업데이트한 후 이 버그가 다시 표시될 수 있습니다.
-
Windows VM에 vTPM(가상 신뢰할 수 있는 플랫폼 모듈) 장치를 추가하면 vTPM 장치가 영구적이지 않은 경우에도 BitLocker 드라이브 암호화 시스템 검사가 통과됩니다. 이는 영구 저장소가 아닌 vTPM 장치는
virt-launcher
Pod의 수명 동안 임시 스토리지를 사용하여 암호화 키를 복구하기 때문입니다. VM이 마이그레이션되거나 종료되면 vTPM 데이터가 손실됩니다. (CNV-36448)
OpenShift Virtualization은 Pod에서 사용하는 서비스 계정 토큰을 해당 특정 Pod에 연결합니다. OpenShift Virtualization은 토큰이 포함된 디스크 이미지를 생성하여 서비스 계정 볼륨을 구현합니다. VM을 마이그레이션하면 서비스 계정 볼륨이 유효하지 않습니다. (CNV-33835)
- 이 문제를 해결하려면 사용자 계정 토큰이 특정 Pod에 바인딩되지 않으므로 서비스 계정 대신 사용자 계정을 사용합니다.
RHSA-2023:3722 권고가 릴리스되면서 TLS
확장 마스터 시크릿
(ECDSA) 확장(RFC 7627)은 FIPS 지원 Red Hat Enterprise Linux (RHEL) 9 시스템에서 TLS 1.2 연결에 필요합니다. 이는 FIPS-140-3 요구 사항에 따라 수행됩니다. TLS 1.3은 영향을 받지 않습니다.ECDSA 또는 TLS 1.3을 지원하지 않는 기존 OpenSSL 클라이언트는 이제 RHEL 9에서 실행되는 FIPS 서버에 연결할 수 없습니다. 마찬가지로 FIPS 모드의 RHEL 9 클라이언트는 ECDSA 없이 TLS 1.2만 지원하는 서버에 연결할 수 없습니다. 실제로 이러한 클라이언트는 RHEL 6, RHEL 7 및 비 RHEL 레거시 운영 체제의 서버에 연결할 수 없습니다. 이는 OpenSSL의 기존 1.0.x 버전이 ECDSA 또는 TLS 1.3을 지원하지 않기 때문입니다. 자세한 내용은 Red Hat Enterprise Linux 9.2에서 적용된 TLS 확장 "확장 마스터 시크릿" 을 참조하십시오.
-
이 문제를 해결하려면 기존 OpenSSL 클라이언트를 TLS 1.3을 지원하는 버전으로 업데이트하고 FIPS 모드의 경우
Modern
TLS 보안 프로필 유형으로 TLS 1.3을 사용하도록 OpenShift Virtualization을 구성합니다.
-
이 문제를 해결하려면 기존 OpenSSL 클라이언트를 TLS 1.3을 지원하는 버전으로 업데이트하고 FIPS 모드의 경우
웹 콘솔
OpenShift Container Platform 클러스터를 처음 배포할 때 웹 콘솔을 사용하여 템플릿 또는 인스턴스 유형에서 VM을 생성하면
cluster-admin
권한이 없는 경우 실패합니다.- 이 문제를 해결하려면 클러스터 관리자가 먼저 다른 사용자가 템플릿과 인스턴스 유형을 사용하여 VM을 생성할 수 있도록 구성 맵 을 생성해야 합니다. (링크: CNV-38284)
웹 콘솔을 사용하여 OVN-Kubernetes localnet 토폴로지에 대한 네트워크 연결 정의(NAD)를 생성하면 유효하지 않은 주석
k8s.v1.cni.cncf.io/resourceName: openshift.io/
가 표시됩니다. 이 주석은 VM을 시작할 수 없습니다.- 이 문제를 해결하려면 주석을 제거합니다.
3장. 시작하기 링크 복사링크가 클립보드에 복사되었습니다!
3.1. OpenShift Virtualization 시작하기 링크 복사링크가 클립보드에 복사되었습니다!
기본 환경을 설치하고 구성하여 OpenShift Virtualization의 기능 및 기능을 탐색할 수 있습니다.
클러스터 구성 절차에는 cluster-admin
권한이 필요합니다.
3.1.1. OpenShift Virtualization 계획 및 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 클러스터에 OpenShift Virtualization을 계획하고 설치합니다.
계획 및 설치 리소스
3.1.2. 가상 머신 생성 및 관리 링크 복사링크가 클립보드에 복사되었습니다!
VM(가상 머신)을 생성합니다.
Red Hat 템플릿 또는 인스턴스 유형을 사용하여 VM을 생성할 수 있습니다.
컨테이너 레지스트리 또는 웹 페이지에서 사용자 정의 이미지를 가져오거나, 로컬 머신에서 이미지를 업로드하거나 PVC(영구 볼륨 클레임)를 복제하여 VM을 생성할 수 있습니다.
VM을 보조 네트워크에 연결합니다.
- Linux 브리지 네트워크.
- OVN(가상 네트워크)-Kubernetes 보조 네트워크.
SR-IOV(Single Root I/O Virtualization) 네트워크.
참고VM은 기본적으로 Pod 네트워크에 연결됩니다.
VM에 연결합니다.
- VM의 직렬 콘솔 또는 VNC 콘솔에 연결합니다.
- SSH를 사용하여 VM에 연결합니다.
- Windows VM의 데스크탑 뷰어에 연결합니다.
VM을 관리합니다.
3.1.3. 다음 단계 링크 복사링크가 클립보드에 복사되었습니다!
3.2. virtctl 및 libguestfs CLI 툴 사용 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
명령줄 툴을 사용하여 OpenShift Virtualization 리소스를 관리할 수 있습니다.
libguestfs
명령줄 툴을 사용하여 VM(가상 머신) 디스크 이미지에 액세스하고 수정할 수 있습니다. virtctl libguestfs
명령을 사용하여 libguestfs
를 배포합니다.
3.2.1. virtctl 설치 링크 복사링크가 클립보드에 복사되었습니다!
RHEL(Red Hat Enterprise Linux) 9, Linux, Windows 및 MacOS 운영 체제에 virtctl
을 설치하려면 virtctl
바이너리 파일을 다운로드하여 설치합니다.
RHEL 8에 virtctl
을 설치하려면 OpenShift Virtualization 리포지토리를 활성화한 다음 kubevirt-virtctl
패키지를 설치합니다.
3.2.1.1. RHEL 9, Linux, Windows 또는 macOS에 virtctl 바이너리 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Container Platform 웹 콘솔에서 운영 체제의 virtctl
바이너리를 다운로드한 다음 설치할 수 있습니다.
프로세스
- 웹 콘솔의 가상화 → 개요 페이지로 이동합니다.
-
Download virtctl 링크를 클릭하여 운영 체제의
virtctl
바이너리를 다운로드합니다. install
virtctl
:RHEL 9 및 기타 Linux 운영 체제의 경우:
아카이브 파일의 압축을 풉니다.
tar -xvf <virtctl-version-distribution.arch>.tar.gz
$ tar -xvf <virtctl-version-distribution.arch>.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
virtctl
바이너리를 실행할 수 있도록 합니다.chmod +x <path/virtctl-file-name>
$ chmod +x <path/virtctl-file-name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl
바이너리를PATH
환경 변수의 디렉터리로 이동합니다.다음 명령을 실행하여 경로를 확인할 수 있습니다.
echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow KUBECONFIG
환경 변수를 설정합니다.export KUBECONFIG=/home/<user>/clusters/current/auth/kubeconfig
$ export KUBECONFIG=/home/<user>/clusters/current/auth/kubeconfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Windows의 경우:
- 아카이브 파일의 압축을 풉니다.
-
추출된 폴더 계층 구조로 이동하고
virtctl
실행 파일을 두 번 클릭하여 클라이언트를 설치합니다. virtctl
바이너리를PATH
환경 변수의 디렉터리로 이동합니다.다음 명령을 실행하여 경로를 확인할 수 있습니다.
path
C:\> path
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
macOS의 경우:
- 아카이브 파일의 압축을 풉니다.
virtctl
바이너리를PATH
환경 변수의 디렉터리로 이동합니다.다음 명령을 실행하여 경로를 확인할 수 있습니다.
echo $PATH
echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.1.2. RHEL 8에 virtctl RPM 설치 링크 복사링크가 클립보드에 복사되었습니다!
OpenShift Virtualization 리포지토리를 활성화하고 kubevirt-virtctl
패키지를 설치하여 RHEL(Red Hat Enterprise Linux) 8에 virtctl
RPM 패키지를 설치할 수 있습니다.
사전 요구 사항
- 클러스터의 각 호스트는 RHSM(Red Hat Subscription Manager)에 등록되어 있어야 하며 유효한 OpenShift Container Platform 서브스크립션이 있어야 합니다.
프로세스
subscription-manager
CLI 툴을 사용하여 다음 명령을 실행하여 OpenShift Virtualization 리포지토리를 활성화합니다.subscription-manager repos --enable cnv-4.15-for-rhel-8-x86_64-rpms
# subscription-manager repos --enable cnv-4.15-for-rhel-8-x86_64-rpms
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
kubevirt-virtctl
패키지를 설치합니다.yum install kubevirt-virtctl
# yum install kubevirt-virtctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.2. virtctl 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
클라이언트는 OpenShift Virtualization 리소스를 관리하는 명령줄 유틸리티입니다.
VM(가상 머신) 명령은 별도로 지정하지 않는 한 VMI(가상 머신 인스턴스)에도 적용됩니다.
3.2.2.1. virtctl information 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
information 명령을 사용하여 virtctl
클라이언트에 대한 정보를 봅니다.
명령 | 설명 |
---|---|
|
|
|
|
| 특정 명령의 옵션 목록을 확인합니다. |
|
|
3.2.2.2. VM 정보 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl
을 사용하여 VM(가상 머신) 및 VMI(가상 머신 인스턴스)에 대한 정보를 볼 수 있습니다.
명령 | 설명 |
---|---|
| 게스트 머신에서 사용 가능한 파일 시스템을 확인합니다. |
| 게스트 머신의 운영 체제에 대한 정보를 봅니다. |
| 게스트 머신에서 로그인한 사용자를 확인합니다. |
3.2.2.3. VM 매니페스트 생성 명령 링크 복사링크가 클립보드에 복사되었습니다!
virtctl create
명령을 사용하여 가상 머신, 인스턴스 유형 및 기본 설정에 대한 매니페스트를 생성할 수 있습니다.
명령 | 설명 |
---|---|
|
|
| VM 매니페스트를 생성하여 VM의 이름을 지정합니다. |
| 기존 클러스터 전체 인스턴스 유형을 사용하는 VM 매니페스트를 생성합니다. |
| 기존 네임스페이스 인스턴스 유형을 사용하는 VM 매니페스트를 생성합니다. |
| 클러스터 전체 인스턴스 유형에 대한 매니페스트를 생성합니다. |
| 네임스페이스가 지정된 인스턴스 유형에 대한 매니페스트를 생성합니다. |
| 클러스터 전체 VM 기본 설정에 대한 매니페스트를 생성하여 기본 설정 이름을 지정합니다. |
| 네임스페이스가 지정된 VM 기본 설정에 대한 매니페스트를 생성합니다. |
3.2.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2.5. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2.6. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.2.2.7. 링크 복사링크가 클립보드에 복사되었습니다!
oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "add", "path": "/spec/featureGates", \ "value": "HotplugVolumes"}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "add", "path": "/spec/featureGates", \ "value": "HotplugVolumes"}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
virtctl vmexport download <vmexport_name> --vm|pvc=<object_name> \ --volume=<volume_name> --output=<output_file>
$ virtctl vmexport download <vmexport_name> --vm|pvc=<object_name> \
--volume=<volume_name> --output=<output_file>
|
|
|
|
|
|
3.2.2.8. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
3.2.2.9. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
3.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl guestfs -n <namespace> <pvc_name>
$ virtctl guestfs -n <namespace> <pvc_name>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.1.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.2.
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.3.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.4.
|
|
|
|
3.3.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.5.
|
|
|
|
|
|
3.3.1.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.6.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.1.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.7.
|
|
|
|
|
|
3.3.1.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
3.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.8.
|
|
|
|
3.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.9.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.10.
|
|
|
|
|
|
|
|
|
|
3.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.11.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.12.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.13.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.14.
|
|
|
|
|
|
|
|
3.3.3.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.15.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.16.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.17.
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.18.
|
|
|
|
|
|
|
|
3.3.3.1.4.4. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.19.
|
|
|
|
|
|
|
|
|
|
|
|
3.3.3.1.4.5. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.20.
|
|
|
|
3.3.3.1.4.6. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.21.
|
|
|
|
3.3.3.1.4.7. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.22.
|
|
|
|
3.3.3.1.5. 링크 복사링크가 클립보드에 복사되었습니다!
3.3.3.1.6. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.23.
|
|
|
|
|
|
|
|
|
|
3.3.3.1.7. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.24.
|
|
|
|
|
|
|
|
3.3.3.1.8. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.25.
|
|
|
|
|
|
|
|
|
|
|
|
3.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.26.
|
|
|
|
|
|
|
|
|
|
3.3.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.27.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.4.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.28.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.4.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.29.
|
|
|
|
|
|
|
|
3.3.4.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.30.
|
|
|
|
|
|
|
|
|
|
|
|
3.3.4.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.31.
|
|
|
|
|
|
|
|
3.3.4.1.5. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.32.
|
|
|
|
|
|
|
|
3.3.4.1.6. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.33.
|
|
|
|
|
|
3.3.4.1.7. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.34.
|
|
|
|
3.3.5. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.35.
|
|
|
|
|
|
|
|
3.3.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.36.
|
|
|
|
|
|
3.3.5.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.37.
|
|
|
|
|
|
|
|
|
|
3.3.5.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.38.
|
|
|
|
|
|
|
|
3.3.6. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.39.
|
|
|
|
|
|
|
|
3.3.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.40.
|
|
|
|
|
|
3.3.6.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.41.
|
|
|
|
|
|
|
|
|
|
3.3.6.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.42.
|
|
|
|
|
|
|
|
3.3.7. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.43.
|
|
|
|
|
|
|
|
|
|
3.3.7.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.44.
|
|
|
|
3.3.7.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.45.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.7.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.46.
|
|
|
|
|
|
|
|
3.3.8. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.47.
|
|
|
|
|
|
|
|
3.3.8.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.48.
|
|
|
|
|
|
3.3.8.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.49.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
3.3.8.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.50.
|
|
|
|
|
|
|
|
3.3.9. 링크 복사링크가 클립보드에 복사되었습니다!
예 3.51.
|
|
|
|
4장. 링크 복사링크가 클립보드에 복사되었습니다!
4.1. 링크 복사링크가 클립보드에 복사되었습니다!
4.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 중요
4.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 중요
4.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
4.1.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
4.1.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
4.1.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
4.1.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
4.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
Product of (Maximum number of nodes that can drain in parallel) and (Highest total VM memory request allocations across nodes)
Product of (Maximum number of nodes that can drain in parallel) and (Highest total VM memory request allocations across nodes)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
Memory overhead per infrastructure node ≈ 150 MiB
Memory overhead per infrastructure node ≈ 150 MiB
Memory overhead per worker node ≈ 360 MiB
Memory overhead per worker node ≈ 360 MiB
Memory overhead per virtual machine ≈ (1.002 × requested memory) \ + 218 MiB \ + 8 MiB × (number of vCPUs) \ + 16 MiB × (number of graphics devices) \ + (additional memory overhead)
Memory overhead per virtual machine ≈ (1.002 × requested memory) \
+ 218 MiB \
+ 8 MiB × (number of vCPUs) \
+ 16 MiB × (number of graphics devices) \
+ (additional memory overhead)
CPU overhead for infrastructure nodes ≈ 4 cores
CPU overhead for infrastructure nodes ≈ 4 cores
CPU overhead for worker nodes ≈ 2 cores + CPU overhead per virtual machine
CPU overhead for worker nodes ≈ 2 cores + CPU overhead per virtual machine
Aggregated storage overhead per node ≈ 10 GiB
Aggregated storage overhead per node ≈ 10 GiB
4.1.5. 링크 복사링크가 클립보드에 복사되었습니다!
4.1.6. 링크 복사링크가 클립보드에 복사되었습니다!
4.1.7. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
- 참고
4.2. 링크 복사링크가 클립보드에 복사되었습니다!
4.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
4.2.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 주의
- 주의
4.2.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
4.2.1.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <file name>.yaml
$ oc apply -f <file name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2.1.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <file_name>.yaml
$ oc apply -f <file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
watch oc get csv -n openshift-cnv
$ watch oc get csv -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME DISPLAY VERSION REPLACES PHASE kubevirt-hyperconverged-operator.v4.15.8 OpenShift Virtualization 4.15.8 Succeeded
NAME DISPLAY VERSION REPLACES PHASE kubevirt-hyperconverged-operator.v4.15.8 OpenShift Virtualization 4.15.8 Succeeded
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
4.3. 링크 복사링크가 클립보드에 복사되었습니다!
4.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
4.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
4.3.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
4.3.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
4.3.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
4.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc delete HyperConverged kubevirt-hyperconverged -n openshift-cnv
$ oc delete HyperConverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete subscription kubevirt-hyperconverged -n openshift-cnv
$ oc delete subscription kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete csv -n openshift-cnv -l operators.coreos.com/kubevirt-hyperconverged.openshift-cnv
$ oc delete csv -n openshift-cnv -l operators.coreos.com/kubevirt-hyperconverged.openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete namespace openshift-cnv
$ oc delete namespace openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete crd --dry-run=client -l operators.coreos.com/kubevirt-hyperconverged.openshift-cnv
$ oc delete crd --dry-run=client -l operators.coreos.com/kubevirt-hyperconverged.openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete crd -l operators.coreos.com/kubevirt-hyperconverged.openshift-cnv
$ oc delete crd -l operators.coreos.com/kubevirt-hyperconverged.openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5장. 링크 복사링크가 클립보드에 복사되었습니다!
5.1. 링크 복사링크가 클립보드에 복사되었습니다!
5.2. 링크 복사링크가 클립보드에 복사되었습니다!
5.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
5.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit <resource_type> <resource_name> -n {CNVNamespace}
$ oc edit <resource_type> <resource_name> -n {CNVNamespace}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
5.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
5.2.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
5.2.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
5.3. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
5.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get vmi <vmi_name> -o jsonpath='{.status.migrationState.targetNodeAddress}'
$ oc get vmi <vmi_name> -o jsonpath='{.status.migrationState.targetNodeAddress}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.3.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
5.3.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc create -f <name>-sriov-node-network.yaml
$ oc create -f <name>-sriov-node-network.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get sriovnetworknodestates -n openshift-sriov-network-operator <node_name> -o jsonpath='{.status.syncStatus}'
$ oc get sriovnetworknodestates -n openshift-sriov-network-operator <node_name> -o jsonpath='{.status.syncStatus}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
5.3.5. 링크 복사링크가 클립보드에 복사되었습니다!
5.4. 링크 복사링크가 클립보드에 복사되었습니다!
5.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
5.4.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
6장. 링크 복사링크가 클립보드에 복사되었습니다!
6.1. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.2.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc get kv kubevirt-kubevirt-hyperconverged \ -n openshift-cnv -o jsonpath='{.spec.workloadUpdateStrategy.workloadUpdateMethods}'
$ oc get kv kubevirt-kubevirt-hyperconverged \ -n openshift-cnv -o jsonpath='{.spec.workloadUpdateStrategy.workloadUpdateMethods}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op":"replace","path":"/spec/workloadUpdateStrategy/workloadUpdateMethods", "value":[]}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op":"replace","path":"/spec/workloadUpdateStrategy/workloadUpdateMethods", "value":[]}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow hyperconverged.hco.kubevirt.io/kubevirt-hyperconverged patched
hyperconverged.hco.kubevirt.io/kubevirt-hyperconverged patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv -o json | jq ".status.conditions"
$ oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv -o json | jq ".status.conditions"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 6.1.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm upgrade
$ oc adm upgrade
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get clusterversion
$ oc get clusterversion
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고
oc get csv -n openshift-cnv
$ oc get csv -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv -o json | jq ".status.versions"
$ oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv -o json | jq ".status.versions"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv -o json | jq ".status.conditions"
$ oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv -o json | jq ".status.conditions"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get clusterversion
$ oc get clusterversion
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get csv -n openshift-cnv
$ oc get csv -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv --type json -p \ "[{\"op\":\"add\",\"path\":\"/spec/workloadUpdateStrategy/workloadUpdateMethods\", \"value\":{WorkloadUpdateMethodConfig}}]"
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv --type json -p \ "[{\"op\":\"add\",\"path\":\"/spec/workloadUpdateStrategy/workloadUpdateMethods\", \"value\":{WorkloadUpdateMethodConfig}}]"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow hyperconverged.hco.kubevirt.io/kubevirt-hyperconverged patched
hyperconverged.hco.kubevirt.io/kubevirt-hyperconverged patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get vmim -A
$ oc get vmim -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
6.1.5. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.6. 링크 복사링크가 클립보드에 복사되었습니다!
6.1.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc get csv -n openshift-cnv
$ oc get csv -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow VERSION REPLACES PHASE 4.9.0 kubevirt-hyperconverged-operator.v4.8.2 Installing 4.9.0 kubevirt-hyperconverged-operator.v4.9.0 Replacing
VERSION REPLACES PHASE 4.9.0 kubevirt-hyperconverged-operator.v4.8.2 Installing 4.9.0 kubevirt-hyperconverged-operator.v4.9.0 Replacing
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv \ -o=jsonpath='{range .status.conditions[*]}{.type}{"\t"}{.status}{"\t"}{.message}{"\n"}{end}'
$ oc get hyperconverged kubevirt-hyperconverged -n openshift-cnv \ -o=jsonpath='{range .status.conditions[*]}{.type}{"\t"}{.status}{"\t"}{.message}{"\n"}{end}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ReconcileComplete True Reconcile completed successfully Available True Reconcile completed successfully Progressing False Reconcile completed successfully Degraded False Reconcile completed successfully Upgradeable True Reconcile completed successfully
ReconcileComplete True Reconcile completed successfully Available True Reconcile completed successfully Progressing False Reconcile completed successfully Degraded False Reconcile completed successfully Upgradeable True Reconcile completed successfully
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
6.1.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc get vmi -l kubevirt.io/outdatedLauncherImage --all-namespaces
$ oc get vmi -l kubevirt.io/outdatedLauncherImage --all-namespaces
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7장. 링크 복사링크가 클립보드에 복사되었습니다!
7.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.1.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.2.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl create instancetype --cpu 2 --memory 256Mi
$ virtctl create instancetype --cpu 2 --memory 256Mi
virtctl create instancetype --cpu 2 --memory 256Mi | oc apply -f -
$ virtctl create instancetype --cpu 2 --memory 256Mi | oc apply -f -
7.1.2.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
| |
| |
|
| |
| |
|
| |
| |
|
| |
| |
|
| |
| |
|
| |
| |
7.1.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
7.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
참고
|
|
|
7.1.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
참고
|
7.1.3.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.3.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.1.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <vm_manifest_file>.yaml
$ oc create -f <vm_manifest_file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl start <vm_name> -n <namespace>
$ virtctl start <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build -t <registry>/<container_disk_name>:latest .
$ podman build -t <registry>/<container_disk_name>:latest .
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push <registry>/<container_disk_name>:latest
$ podman push <registry>/<container_disk_name>:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f data-source-secret.yaml
$ oc apply -f data-source-secret.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create configmap tls-certs
$ oc create configmap tls-certs
1 --from-file=</path/to/file/ca.pem>
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f vm-fedora-datavolume.yaml
$ oc create -f vm-fedora-datavolume.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get pods
$ oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc describe dv fedora-dv
$ oc describe dv fedora-dv
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl console vm-fedora-datavolume
$ virtctl console vm-fedora-datavolume
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f data-source-secret.yaml
$ oc apply -f data-source-secret.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create configmap tls-certs
$ oc create configmap tls-certs
1 --from-file=</path/to/file/ca.pem>
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f vm-fedora-datavolume.yaml
$ oc create -f vm-fedora-datavolume.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get pods
$ oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc describe dv fedora-dv
$ oc describe dv fedora-dv
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl console vm-fedora-datavolume
$ virtctl console vm-fedora-datavolume
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.4.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
%WINDIR%\System32\Sysprep\sysprep.exe /generalize /shutdown /oobe /mode:vm
%WINDIR%\System32\Sysprep\sysprep.exe /generalize /shutdown /oobe /mode:vm
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.4.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl image-upload dv <datavolume_name> \ --size=<datavolume_size> \ --image-path=</path/to/image> \
$ virtctl image-upload dv <datavolume_name> \
1 --size=<datavolume_size> \
2 --image-path=</path/to/image> \
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc get dvs
$ oc get dvs
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.5. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
yum install -y qemu-guest-agent
$ yum install -y qemu-guest-agent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl enable --now qemu-guest-agent
$ systemctl enable --now qemu-guest-agent
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get vm <vm_name>
$ oc get vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.5.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
net start
$ net start
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
7.2.5.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.2.5. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl start <vm> -n <namespace>
$ virtctl start <vm> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <vm.yaml>
$ oc apply -f <vm.yaml>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.5.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.5.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.6. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
NAMESPACE LAST SEEN TYPE REASON OBJECT MESSAGE test-ns 0s Warning IncompatibleVolumeModes persistentvolumeclaim/test-target The volume modes of source and target are incompatible
NAMESPACE LAST SEEN TYPE REASON OBJECT MESSAGE
test-ns 0s Warning IncompatibleVolumeModes persistentvolumeclaim/test-target The volume modes of source and target are incompatible
7.2.7.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.2.7.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
kind: VolumeSnapshotClass apiVersion: snapshot.storage.k8s.io/v1 driver: openshift-storage.rbd.csi.ceph.com # ...
kind: VolumeSnapshotClass apiVersion: snapshot.storage.k8s.io/v1 driver: openshift-storage.rbd.csi.ceph.com # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow kind: StorageClass apiVersion: storage.k8s.io/v1 # ... provisioner: openshift-storage.rbd.csi.ceph.com
kind: StorageClass apiVersion: storage.k8s.io/v1 # ... provisioner: openshift-storage.rbd.csi.ceph.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.2.7.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.3.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl vnc <vm_name>
$ virtctl vnc <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl vnc <vm_name> -v 4
$ virtctl vnc <vm_name> -v 4
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.3.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv --type json -p '[{"op": "replace", "path": "/spec/featureGates/deployVmConsoleProxy", "value": true}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv --type json -p '[{"op": "replace", "path": "/spec/featureGates/deployVmConsoleProxy", "value": true}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --header "Authorization: Bearer ${TOKEN}" \ "https://api.<cluster_fqdn>/apis/token.kubevirt.io/v1alpha1/namespaces/<namespace>/virtualmachines/<vm_name>/vnc?duration=<duration>"
$ curl --header "Authorization: Bearer ${TOKEN}" \ "https://api.<cluster_fqdn>/apis/token.kubevirt.io/v1alpha1/namespaces/<namespace>/virtualmachines/<vm_name>/vnc?duration=<duration>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow { "token": "eyJhb..." }
{ "token": "eyJhb..." }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow export VNC_TOKEN="<token>"
$ export VNC_TOKEN="<token>"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc login --token ${VNC_TOKEN}
$ oc login --token ${VNC_TOKEN}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl vnc <vm_name> -n <namespace>
$ virtctl vnc <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
virtctl delete serviceaccount --namespace "<namespace>" "<vm_name>-vnc-access"
$ virtctl delete serviceaccount --namespace "<namespace>" "<vm_name>-vnc-access"
7.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl console <vm_name>
$ virtctl console <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
7.4.2.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <manifest_file>.yaml
$ oc create -f <manifest_file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl start vm example-vm -n example-namespace
$ virtctl start vm example-vm -n example-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc describe vm example-vm -n example-namespace
$ oc describe vm example-vm -n example-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
7.4.2.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.2.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <manifest_file>.yaml
$ oc create -f <manifest_file>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl start vm example-vm -n example-namespace
$ virtctl start vm example-vm -n example-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc describe vm example-vm -n example-namespace
$ oc describe vm example-vm -n example-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl -n <namespace> ssh <username>@example-vm -i <ssh_key>
$ virtctl -n <namespace> ssh <username>@example-vm -i <ssh_key>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl -n my-namespace ssh cloud-user@example-vm -i my-key
$ virtctl -n my-namespace ssh cloud-user@example-vm -i my-key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
Host vm/* ProxyCommand virtctl port-forward --stdio=true %h %p
Host vm/* ProxyCommand virtctl port-forward --stdio=true %h %p
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh <user>@vm/<vm_name>.<namespace>
$ ssh <user>@vm/<vm_name>.<namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.4.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.4.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.4.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl expose vm <vm_name> --name <service_name> --type <service_type> --port <port>
$ virtctl expose vm <vm_name> --name <service_name> --type <service_type> --port <port>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl expose vm example-vm --name example-service --type NodePort --port 22
$ virtctl expose vm example-vm --name example-service --type NodePort --port 22
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get service
$ oc get service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.4.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f example-service.yaml
$ oc create -f example-service.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get service -n example-namespace
$ oc get service -n example-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
ssh <user_name>@<ip_address> -p <port>
$ ssh <user_name>@<ip_address> -p <port>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.4.5. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.4.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc describe vm <vm_name> -n <namespace>
$ oc describe vm <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh <user_name>@<ip_address> -i <ssh_key>
$ ssh <user_name>@<ip_address> -i <ssh_key>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh cloud-user@10.244.0.37 -i ~/.ssh/id_rsa_cloud-user
$ ssh cloud-user@10.244.0.37 -i ~/.ssh/id_rsa_cloud-user
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.5. 링크 복사링크가 클립보드에 복사되었습니다!
7.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply vm <vm_name> -n <namespace>
$ oc apply vm <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.5.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
|
|
|
|
참고
|
7.5.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.6. 링크 복사링크가 클립보드에 복사되었습니다!
7.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.6.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.6.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.7. 링크 복사링크가 클립보드에 복사되었습니다!
7.7.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.7.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc delete vm <vm_name>
$ oc delete vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고
7.8. 링크 복사링크가 클립보드에 복사되었습니다!
7.8.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f example-export.yaml
$ oc create -f example-export.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get vmexport example-export -o yaml
$ oc get vmexport example-export -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.8.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
oc get vmexport <export_name> -o jsonpath={.status.links.external.cert} > cacert.crt
$ oc get vmexport <export_name> -o jsonpath={.status.links.external.cert} > cacert.crt
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get secret export-token-<export_name> -o jsonpath={.data.token} | base64 --decode > token_decode
$ oc get secret export-token-<export_name> -o jsonpath={.data.token} | base64 --decode > token_decode
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get vmexport <export_name> -o yaml
$ oc get vmexport <export_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --cacert cacert.crt <secret_manifest_url> -H \ "x-kubevirt-export-token:token_decode" -H \ "Accept:application/yaml"
$ curl --cacert cacert.crt <secret_manifest_url> -H \
1 "x-kubevirt-export-token:token_decode" -H \
2 "Accept:application/yaml"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --cacert cacert.crt https://vmexport-proxy.test.net/api/export.kubevirt.io/v1alpha1/namespaces/example/virtualmachineexports/example-export/external/manifests/secret -H "x-kubevirt-export-token:token_decode" -H "Accept:application/yaml"
$ curl --cacert cacert.crt https://vmexport-proxy.test.net/api/export.kubevirt.io/v1alpha1/namespaces/example/virtualmachineexports/example-export/external/manifests/secret -H "x-kubevirt-export-token:token_decode" -H "Accept:application/yaml"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --cacert cacert.crt <all_manifest_url> -H \ "x-kubevirt-export-token:token_decode" -H \ "Accept:application/yaml"
$ curl --cacert cacert.crt <all_manifest_url> -H \
1 "x-kubevirt-export-token:token_decode" -H \
2 "Accept:application/yaml"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl --cacert cacert.crt https://vmexport-proxy.test.net/api/export.kubevirt.io/v1alpha1/namespaces/example/virtualmachineexports/example-export/external/manifests/all -H "x-kubevirt-export-token:token_decode" -H "Accept:application/yaml"
$ curl --cacert cacert.crt https://vmexport-proxy.test.net/api/export.kubevirt.io/v1alpha1/namespaces/example/virtualmachineexports/example-export/external/manifests/all -H "x-kubevirt-export-token:token_decode" -H "Accept:application/yaml"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.9. 링크 복사링크가 클립보드에 복사되었습니다!
7.9.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.9.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc get vmis -A
$ oc get vmis -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.9.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.9.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.9.5. 링크 복사링크가 클립보드에 복사되었습니다!
oc delete vmi <vmi_name>
$ oc delete vmi <vmi_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.9.6. 링크 복사링크가 클립보드에 복사되었습니다!
7.10. 링크 복사링크가 클립보드에 복사되었습니다!
7.10.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.10.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.10.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.10.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.10.5. 링크 복사링크가 클립보드에 복사되었습니다!
7.11. 링크 복사링크가 클립보드에 복사되었습니다!
7.11.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.11.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.12. 링크 복사링크가 클립보드에 복사되었습니다!
7.12.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.12.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.12.3. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
7.12.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.12.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.12.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f windows10-installer-run.yaml
$ oc apply -f windows10-installer-run.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f windows10-customize-run.yaml
$ oc apply -f windows10-customize-run.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
7.13.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.2.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.2.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.2.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.2.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.4. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
error: hyperconvergeds.hco.kubevirt.io "kubevirt-hyperconverged" could not be patched: admission webhook "validate-hco.kubevirt.io" denied the request: spec.certConfig: ca.duration is smaller than server.duration
error: hyperconvergeds.hco.kubevirt.io "kubevirt-hyperconverged" could not be patched: admission webhook "validate-hco.kubevirt.io" denied the request: spec.certConfig: ca.duration is smaller than server.duration
7.13.5. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.6. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.7. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.7.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.7.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc create -f pxe-net-conf.yaml
$ oc create -f pxe-net-conf.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc create -f vmi-pxe-boot.yaml
$ oc create -f vmi-pxe-boot.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtualmachineinstance.kubevirt.io "vmi-pxe-boot" created
virtualmachineinstance.kubevirt.io "vmi-pxe-boot" created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get vmi vmi-pxe-boot -o yaml | grep -i phase
$ oc get vmi vmi-pxe-boot -o yaml | grep -i phase phase: Running
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl vnc vmi-pxe-boot
$ virtctl vnc vmi-pxe-boot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl console vmi-pxe-boot
$ virtctl console vmi-pxe-boot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
ip addr
$ ip addr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ... 3. eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether de:00:00:00:00:de brd ff:ff:ff:ff:ff:ff
... 3. eth1: <BROADCAST,MULTICAST> mtu 1500 qdisc noop state DOWN group default qlen 1000 link/ether de:00:00:00:00:de brd ff:ff:ff:ff:ff:ff
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.7.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.8. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.8.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.8.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.8.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.9. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.9.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.9.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.9.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.10. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.10.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
7.13.10.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.10.3. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.10.4. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.10.5. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get pods
$ oc get pods
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME READY STATUS RESTARTS AGE virt-launcher-vm-fedora-dpc87 2/2 Running 0 24m
NAME READY STATUS RESTARTS AGE virt-launcher-vm-fedora-dpc87 2/2 Running 0 24m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc describe pod virt-launcher-vm-fedora-dpc87
$ oc describe pod virt-launcher-vm-fedora-dpc87
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.11. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.11.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.11.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc label node <node_name> nvidia.com/gpu.deploy.operands=false
$ oc label node <node_name> nvidia.com/gpu.deploy.operands=false
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc describe node <node_name>
$ oc describe node <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods -n nvidia-gpu-operator
$ oc get pods -n nvidia-gpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get pods -n nvidia-gpu-operator
$ oc get pods -n nvidia-gpu-operator
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.11.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.11.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.11.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f 100-worker-kernel-arg-iommu.yaml
$ oc create -f 100-worker-kernel-arg-iommu.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get MachineConfig
$ oc get MachineConfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.11.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
lspci -nnv | grep -i nvidia
$ lspci -nnv | grep -i nvidia
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 02:01.0 3D controller [0302]: NVIDIA Corporation GV100GL [Tesla V100 PCIe 32GB] [10de:1eb8] (rev a1)
02:01.0 3D controller [0302]: NVIDIA Corporation GV100GL [Tesla V100 PCIe 32GB] [10de:1eb8] (rev a1)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 참고
Copy to Clipboard Copied! Toggle word wrap Toggle overflow butane 100-worker-vfiopci.bu -o 100-worker-vfiopci.yaml
$ butane 100-worker-vfiopci.bu -o 100-worker-vfiopci.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f 100-worker-vfiopci.yaml
$ oc apply -f 100-worker-vfiopci.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get MachineConfig
$ oc get MachineConfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
lspci -nnk -d 10de:
$ lspci -nnk -d 10de:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 04:00.0 3D controller [0302]: NVIDIA Corporation GP102GL [Tesla P40] [10de:1eb8] (rev a1) Subsystem: NVIDIA Corporation Device [10de:1eb8] Kernel driver in use: vfio-pci Kernel modules: nouveau
04:00.0 3D controller [0302]: NVIDIA Corporation GP102GL [Tesla P40] [10de:1eb8] (rev a1) Subsystem: NVIDIA Corporation Device [10de:1eb8] Kernel driver in use: vfio-pci Kernel modules: nouveau
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.11.2.4. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고
oc describe node <node_name>
$ oc describe node <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.11.2.5. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc describe node <node_name>
$ oc describe node <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.11.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.11.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
lspci -nnk | grep NVIDIA
$ lspci -nnk | grep NVIDIA
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 02:01.0 3D controller [0302]: NVIDIA Corporation GV100GL [Tesla V100 PCIe 32GB] [10de:1eb8] (rev a1)
$ 02:01.0 3D controller [0302]: NVIDIA Corporation GV100GL [Tesla V100 PCIe 32GB] [10de:1eb8] (rev a1)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.12. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f 100-worker-kernel-arg-iommu.yaml
$ oc create -f 100-worker-kernel-arg-iommu.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get MachineConfig
$ oc get MachineConfig
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.12.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.4. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.12.5. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 7.1.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow 중요oc get $NODE -o json \ | jq '.status.allocatable \ | with_entries(select(.key | startswith("nvidia.com/"))) \ | with_entries(select(.value != "0"))'
$ oc get $NODE -o json \ | jq '.status.allocatable \ | with_entries(select(.key | startswith("nvidia.com/"))) \ | with_entries(select(.value != "0"))'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc describe node <node_name>
$ oc describe node <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.12.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
7.13.12.5.3. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.6. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.12.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
lspci -nnk | grep <device_name>
$ lspci -nnk | grep <device_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.12.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.13. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.13.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.13.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 중요
7.13.13.3. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.14. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.15. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.15.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type=json -p='[{"op": "add", "path": "/spec/tuningPolicy", \ "value": "highBurst"}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type=json -p='[{"op": "add", "path": "/spec/tuningPolicy", \ "value": "highBurst"}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get kubevirt.kubevirt.io/kubevirt-kubevirt-hyperconverged \ -n openshift-cnv -o go-template --template='{{range $config, \ $value := .spec.configuration}} {{if eq $config "apiConfiguration" \ "webhookConfiguration" "controllerConfiguration" "handlerConfiguration"}} \ {{"\n"}} {{$config}} = {{$value}} {{end}} {{end}} {{"\n"}}
$ oc get kubevirt.kubevirt.io/kubevirt-kubevirt-hyperconverged \ -n openshift-cnv -o go-template --template='{{range $config, \ $value := .spec.configuration}} {{if eq $config "apiConfiguration" \ "webhookConfiguration" "controllerConfiguration" "handlerConfiguration"}} \ {{"\n"}} {{$config}} = {{$value}} {{end}} {{end}} {{"\n"}}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.13.16. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.16.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.13.16.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ... spec: resourceRequirements: vmiCPUAllocationRatio: 1 # ...
... spec: resourceRequirements: vmiCPUAllocationRatio: 1
1 # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.14. 링크 복사링크가 클립보드에 복사되었습니다!
7.14.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.14.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
7.14.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl addvolume <virtual-machine|virtual-machine-instance> \ --volume-name=<datavolume|PVC> \ [--persist] [--serial=<label-name>]
$ virtctl addvolume <virtual-machine|virtual-machine-instance> \ --volume-name=<datavolume|PVC> \ [--persist] [--serial=<label-name>]
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl removevolume <virtual-machine|virtual-machine-instance> \ --volume-name=<datavolume|PVC>
$ virtctl removevolume <virtual-machine|virtual-machine-instance> \ --volume-name=<datavolume|PVC>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.14.2. 링크 복사링크가 클립보드에 복사되었습니다!
7.14.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit pvc <pvc_name>
$ oc edit pvc <pvc_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
7.14.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
8장. 링크 복사링크가 클립보드에 복사되었습니다!
8.1. 링크 복사링크가 클립보드에 복사되었습니다!
그림 8.1.
8.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
8.1.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
8.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
8.1.5. 링크 복사링크가 클립보드에 복사되었습니다!
8.1.6. 링크 복사링크가 클립보드에 복사되었습니다!
8.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f example-vm-ipv6.yaml
$ oc create -f example-vm-ipv6.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get vmi <vmi-name> -o jsonpath="{.status.interfaces[*].ipAddresses}"
$ oc get vmi <vmi-name> -o jsonpath="{.status.interfaces[*].ipAddresses}"
8.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
8.3. 링크 복사링크가 클립보드에 복사되었습니다!
8.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f example-service.yaml
$ oc create -f example-service.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get service -n example-namespace
$ oc get service -n example-namespace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.4. 링크 복사링크가 클립보드에 복사되었습니다!
8.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.4.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
8.4.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc create -f network-attachment-definition.yaml
$ oc create -f network-attachment-definition.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get network-attachment-definition bridge-network
$ oc get network-attachment-definition bridge-network
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
8.4.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
8.4.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.5. 링크 복사링크가 클립보드에 복사되었습니다!
8.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc create -f <name>-sriov-node-network.yaml
$ oc create -f <name>-sriov-node-network.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get sriovnetworknodestates -n openshift-sriov-network-operator <node_name> -o jsonpath='{.status.syncStatus}'
$ oc get sriovnetworknodestates -n openshift-sriov-network-operator <node_name> -o jsonpath='{.status.syncStatus}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc create -f <name>-sriov-network.yaml
$ oc create -f <name>-sriov-network.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get net-attach-def -n <namespace>
$ oc get net-attach-def -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.5.3. 링크 복사링크가 클립보드에 복사되었습니다!
8.5.4. 링크 복사링크가 클립보드에 복사되었습니다!
8.6. 링크 복사링크가 클립보드에 복사되었습니다!
8.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc label node <node_name> node-role.kubernetes.io/worker-dpdk=""
$ oc label node <node_name> node-role.kubernetes.io/worker-dpdk=""
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc get performanceprofiles.performance.openshift.io profile-1 -o=jsonpath='{.status.runtimeClass}{"\n"}'
$ oc get performanceprofiles.performance.openshift.io profile-1 -o=jsonpath='{.status.runtimeClass}{"\n"}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type='json' -p='[{"op": "add", "path": "/spec/defaultRuntimeClass", "value":"<runtimeclass-name>"}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type='json' -p='[{"op": "add", "path": "/spec/defaultRuntimeClass", "value":"<runtimeclass-name>"}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type='json' -p='[{"op": "replace", "path": "/spec/featureGates/alignCPUs", "value": true}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type='json' -p='[{"op": "replace", "path": "/spec/featureGates/alignCPUs", "value": true}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.6.3. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <file_name>.yaml
$ oc apply -f <file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow grubby --update-kernel=ALL --args="default_hugepagesz=1GB hugepagesz=1G hugepages=8"
$ grubby --update-kernel=ALL --args="default_hugepagesz=1GB hugepagesz=1G hugepages=8"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow dnf install -y tuned-profiles-cpu-partitioning
$ dnf install -y tuned-profiles-cpu-partitioning
Copy to Clipboard Copied! Toggle word wrap Toggle overflow echo isolated_cores=2-9 > /etc/tuned/cpu-partitioning-variables.conf
$ echo isolated_cores=2-9 > /etc/tuned/cpu-partitioning-variables.conf
Copy to Clipboard Copied! Toggle word wrap Toggle overflow tuned-adm profile cpu-partitioning
$ tuned-adm profile cpu-partitioning
Copy to Clipboard Copied! Toggle word wrap Toggle overflow dnf install -y driverctl
$ dnf install -y driverctl
Copy to Clipboard Copied! Toggle word wrap Toggle overflow driverctl set-override 0000:07:00.0 vfio-pci
$ driverctl set-override 0000:07:00.0 vfio-pci
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.7. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
8.7.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.7.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.7.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.7.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
8.7.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
8.7.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.7.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.8. 링크 복사링크가 클립보드에 복사되었습니다!
8.8.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.8.2. 링크 복사링크가 클립보드에 복사되었습니다!
virtctl start <vm_name> -n <namespace>
$ virtctl start <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl migrate <vm_name>
$ virtctl migrate <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get VirtualMachineInstanceMigration -w
$ oc get VirtualMachineInstanceMigration -w
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get vmi vm-fedora -ojsonpath="{ @.status.interfaces }"
$ oc get vmi vm-fedora -ojsonpath="{ @.status.interfaces }"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.8.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl migrate <vm_name>
$ virtctl migrate <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.9. 링크 복사링크가 클립보드에 복사되었습니다!
8.9.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -f <vm_name>.yaml
$ oc apply -f <vm_name>.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <service_name>.yaml
$ oc create -f <service_name>.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.10. 링크 복사링크가 클립보드에 복사되었습니다!
8.10.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get vmi <vmi_name> -o jsonpath='{.status.migrationState.targetNodeAddress}'
$ oc get vmi <vmi_name> -o jsonpath='{.status.migrationState.targetNodeAddress}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.10.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.11. 링크 복사링크가 클립보드에 복사되었습니다!
8.11.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.11.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.11.2. 링크 복사링크가 클립보드에 복사되었습니다!
8.11.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
8.11.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc describe vmi <vmi_name>
$ oc describe vmi <vmi_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.12. 링크 복사링크가 클립보드에 복사되었습니다!
8.12.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc expose -n openshift-cnv deployment/secondary-dns --name=dns-lb \ --type=LoadBalancer --port=53 --target-port=5353 --protocol='UDP'
$ oc expose -n openshift-cnv deployment/secondary-dns --name=dns-lb \ --type=LoadBalancer --port=53 --target-port=5353 --protocol='UDP'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get service -n openshift-cnv
$ oc get service -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE dns-lb LoadBalancer 172.30.27.5 10.46.41.94 53:31829/TCP 5s
NAME TYPE CLUSTER-IP EXTERNAL-IP PORT(S) AGE dns-lb LoadBalancer 172.30.27.5 10.46.41.94 53:31829/TCP 5s
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dnses.config.openshift.io cluster -o jsonpath='{.spec.baseDomain}'
$ oc get dnses.config.openshift.io cluster -o jsonpath='{.spec.baseDomain}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow openshift.example.com
openshift.example.com
Copy to Clipboard Copied! Toggle word wrap Toggle overflow vm.<FQDN>. IN NS ns.vm.<FQDN>.
vm.<FQDN>. IN NS ns.vm.<FQDN>.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ns.vm.<FQDN>. IN A <kubeSecondaryDNSNameServerIP>
ns.vm.<FQDN>. IN A <kubeSecondaryDNSNameServerIP>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.12.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc get dnses.config.openshift.io cluster -o json | jq .spec.baseDomain
$ oc get dnses.config.openshift.io cluster -o json | jq .spec.baseDomain
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get vm -n <namespace> <vm_name> -o yaml
$ oc get vm -n <namespace> <vm_name> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow ssh <user_name>@<interface_name>.<vm_name>.<namespace>.vm.<cluster_fqdn>
$ ssh <user_name>@<interface_name>.<vm_name>.<namespace>.vm.<cluster_fqdn>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
8.13. 링크 복사링크가 클립보드에 복사되었습니다!
8.13.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc label namespace <namespace1> <namespace2> mutatevirtualmachines.kubemacpool.io=ignore
$ oc label namespace <namespace1> <namespace2> mutatevirtualmachines.kubemacpool.io=ignore
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc label namespace <namespace1> <namespace2> mutatevirtualmachines.kubemacpool.io-
$ oc label namespace <namespace1> <namespace2> mutatevirtualmachines.kubemacpool.io-
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9장. 링크 복사링크가 클립보드에 복사되었습니다!
9.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
9.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
9.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit storageprofile <storage_class>
$ oc edit storageprofile <storage_class>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.2.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
9.3. 링크 복사링크가 클립보드에 복사되었습니다!
9.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "replace", "path": \ "/spec/featureGates/enableCommonBootImageImport", \ "value": false}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "replace", "path": \ "/spec/featureGates/enableCommonBootImageImport", \ "value": false}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "replace", "path": \ "/spec/featureGates/enableCommonBootImageImport", \ "value": true}]'
$ oc patch hyperconverged kubevirt-hyperconverged -n openshift-cnv \ --type json -p '[{"op": "replace", "path": \ "/spec/featureGates/enableCommonBootImageImport", \ "value": true}]'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow For the custom image to be detected as an available boot source, the value of the `spec.dataVolumeTemplates.spec.sourceRef.name` parameter in the VM template must match this value.
For the custom image to be detected as an available boot source, the value of the `spec.dataVolumeTemplates.spec.sourceRef.name` parameter in the VM template must match this value.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get storageclass
$ oc get storageclass
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE csi-manila-ceph manila.csi.openstack.org Delete Immediate false 11d hostpath-csi-basic (default) kubevirt.io.hostpath-provisioner Delete WaitForFirstConsumer false 11d
NAME PROVISIONER RECLAIMPOLICY VOLUMEBINDINGMODE ALLOWVOLUMEEXPANSION AGE csi-manila-ceph manila.csi.openstack.org Delete Immediate false 11d hostpath-csi-basic (default) kubevirt.io.hostpath-provisioner Delete WaitForFirstConsumer false 11d
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc patch storageclass <current_default_storage_class> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
$ oc patch storageclass <current_default_storage_class> -p '{"metadata": {"annotations":{"storageclass.kubernetes.io/is-default-class":"false"}}}'
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc patch storageclass <new_storage_class> -p '{"metadata":{"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
$ oc patch storageclass <new_storage_class> -p '{"metadata":{"annotations":{"storageclass.kubernetes.io/is-default-class":"true"}}}'
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.3.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit storageprofile <storage_class>
$ oc edit storageprofile <storage_class>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get storageprofile <storage_class> -oyaml
$ oc get storageprofile <storage_class> -oyaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 참고
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
9.4. 링크 복사링크가 클립보드에 복사되었습니다!
9.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get cdiconfig -o yaml
$ oc get cdiconfig -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get cdiconfig -o jsonpath='{.items..status.filesystemOverhead}'
$ oc get cdiconfig -o jsonpath='{.items..status.filesystemOverhead}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5. 링크 복사링크가 클립보드에 복사되었습니다!
9.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f hpp_cr.yaml
$ oc create -f hpp_cr.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.5.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.5.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.5.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.6. 링크 복사링크가 클립보드에 복사되었습니다!
9.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <datavolume-cloner.yaml>
$ oc create -f <datavolume-cloner.yaml>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <datavolume-cloner.yaml>
$ oc create -f <datavolume-cloner.yaml>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.7. 링크 복사링크가 클립보드에 복사되었습니다!
9.7.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.7.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.8. 링크 복사링크가 클립보드에 복사되었습니다!
9.8.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.8.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
9.8.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
9.8.4. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
9.9. 링크 복사링크가 클립보드에 복사되었습니다!
9.9.1. 링크 복사링크가 클립보드에 복사되었습니다!
9.9.2. 링크 복사링크가 클립보드에 복사되었습니다!
9.10. 링크 복사링크가 클립보드에 복사되었습니다!
9.10.1. 링크 복사링크가 클립보드에 복사되었습니다!
10장. 링크 복사링크가 클립보드에 복사되었습니다!
10.1. 링크 복사링크가 클립보드에 복사되었습니다!
10.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
Product of (Maximum number of nodes that can drain in parallel) and (Highest total VM memory request allocations across nodes)
Product of (Maximum number of nodes that can drain in parallel) and (Highest total VM memory request allocations across nodes)
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
10.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
10.2. 링크 복사링크가 클립보드에 복사되었습니다!
10.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
10.2.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
10.2.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create migrationpolicy -f <migration_policy>.yaml
$ oc create migrationpolicy -f <migration_policy>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.3. 링크 복사링크가 클립보드에 복사되었습니다!
10.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
10.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
10.3.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <migration_name>.yaml
$ oc create -f <migration_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc describe vmi <vm_name> -n <namespace>
$ oc describe vmi <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
10.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
10.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
10.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc delete vmim migration-job
$ oc delete vmim migration-job
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11장. 링크 복사링크가 클립보드에 복사되었습니다!
11.1. 링크 복사링크가 클립보드에 복사되었습니다!
11.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 중요
|
|
|
|
|
|
|
|
|
|
|
|
11.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit vm <vm_name> -n <namespace>
$ oc edit vm <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl restart <vm_name> -n <namespace>
$ virtctl restart <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.1.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
11.1.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
11.1.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit vm <vm_name> -n <namespace>
$ oc edit vm <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow apiVersion: kubevirt.io/v1 kind: VirtualMachine spec: runStrategy: Always # ...
apiVersion: kubevirt.io/v1 kind: VirtualMachine spec: runStrategy: Always # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
11.2. 링크 복사링크가 클립보드에 복사되었습니다!
11.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 11.1.
11.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
예 11.2.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 11.3.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 11.4.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
11.3. 링크 복사링크가 클립보드에 복사되었습니다!
11.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc annotate node <node_name> node-labeller.kubevirt.io/skip-node=true
$ oc annotate node <node_name> node-labeller.kubevirt.io/skip-node=true
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.4. 링크 복사링크가 클립보드에 복사되었습니다!
11.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
11.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc adm cordon <node_name>
$ oc adm cordon <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc adm drain <node_name> --force=true
$ oc adm drain <node_name> --force=true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete node <node_name>
$ oc delete node <node_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
11.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
11.4.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc get vmis -A
$ oc get vmis -A
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12장. 링크 복사링크가 클립보드에 복사되었습니다!
12.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 중요
12.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
12.2.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.2.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
12.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
예 12.1.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <latency_sa_roles_rolebinding>.yaml
$ oc apply -n <target_namespace> -f <latency_sa_roles_rolebinding>.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <latency_config_map>.yaml
$ oc apply -n <target_namespace> -f <latency_config_map>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <latency_job>.yaml
$ oc apply -n <target_namespace> -f <latency_job>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc wait job kubevirt-vm-latency-checkup -n <target_namespace> --for condition=complete --timeout 6m
$ oc wait job kubevirt-vm-latency-checkup -n <target_namespace> --for condition=complete --timeout 6m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get configmap kubevirt-vm-latency-checkup-config -n <target_namespace> -o yaml
$ oc get configmap kubevirt-vm-latency-checkup-config -n <target_namespace> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc logs job.batch/kubevirt-vm-latency-checkup -n <target_namespace>
$ oc logs job.batch/kubevirt-vm-latency-checkup -n <target_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete job -n <target_namespace> kubevirt-vm-latency-checkup
$ oc delete job -n <target_namespace> kubevirt-vm-latency-checkup
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete config-map -n <target_namespace> kubevirt-vm-latency-checkup-config
$ oc delete config-map -n <target_namespace> kubevirt-vm-latency-checkup-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete -f <latency_sa_roles_rolebinding>.yaml
$ oc delete -f <latency_sa_roles_rolebinding>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.2.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
예 12.2.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <storage_sa_roles_rolebinding>.yaml
$ oc apply -n <target_namespace> -f <storage_sa_roles_rolebinding>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <storage_configmap_job>.yaml
$ oc apply -n <target_namespace> -f <storage_configmap_job>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc wait job storage-checkup -n <target_namespace> --for condition=complete --timeout 10m
$ oc wait job storage-checkup -n <target_namespace> --for condition=complete --timeout 10m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get configmap storage-checkup-config -n <target_namespace> -o yaml
$ oc get configmap storage-checkup-config -n <target_namespace> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete job -n <target_namespace> storage-checkup
$ oc delete job -n <target_namespace> storage-checkup
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete config-map -n <target_namespace> storage-checkup-config
$ oc delete config-map -n <target_namespace> storage-checkup-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete -f <storage_sa_roles_rolebinding>.yaml
$ oc delete -f <storage_sa_roles_rolebinding>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.2.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
예 12.3.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <dpdk_sa_roles_rolebinding>.yaml
$ oc apply -n <target_namespace> -f <dpdk_sa_roles_rolebinding>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <dpdk_config_map>.yaml
$ oc apply -n <target_namespace> -f <dpdk_config_map>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply -n <target_namespace> -f <dpdk_job>.yaml
$ oc apply -n <target_namespace> -f <dpdk_job>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc wait job dpdk-checkup -n <target_namespace> --for condition=complete --timeout 10m
$ oc wait job dpdk-checkup -n <target_namespace> --for condition=complete --timeout 10m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get configmap dpdk-checkup-config -n <target_namespace> -o yaml
$ oc get configmap dpdk-checkup-config -n <target_namespace> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete job -n <target_namespace> dpdk-checkup
$ oc delete job -n <target_namespace> dpdk-checkup
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete config-map -n <target_namespace> dpdk-checkup-config
$ oc delete config-map -n <target_namespace> dpdk-checkup-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc delete -f <dpdk_sa_roles_rolebinding>.yaml
$ oc delete -f <dpdk_sa_roles_rolebinding>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.2.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
12.2.3.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
dnf install libguestfs-tools
# dnf install libguestfs-tools
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
composer-cli distros list
# composer-cli distros list
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고usermod -a -G weldr user
# usermod -a -G weldr user
Copy to Clipboard Copied! Toggle word wrap Toggle overflow newgrp weldr
$ newgrp weldr
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow composer-cli blueprints push dpdk-vm.toml
# composer-cli blueprints push dpdk-vm.toml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow composer-cli compose start dpdk_image qcow2
# composer-cli compose start dpdk_image qcow2
Copy to Clipboard Copied! Toggle word wrap Toggle overflow composer-cli compose status
# composer-cli compose status
Copy to Clipboard Copied! Toggle word wrap Toggle overflow composer-cli compose image <UUID>
# composer-cli compose image <UUID>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow virt-customize -a <UUID>-disk.qcow2 --run=customize-vm --selinux-relabel
$ virt-customize -a <UUID>-disk.qcow2 --run=customize-vm --selinux-relabel
Copy to Clipboard Copied! Toggle word wrap Toggle overflow cat << EOF > Dockerfile FROM scratch COPY --chown=107:107 <UUID>-disk.qcow2 /disk/ EOF
$ cat << EOF > Dockerfile FROM scratch COPY --chown=107:107 <UUID>-disk.qcow2 /disk/ EOF
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman build . -t dpdk-rhel:latest
$ podman build . -t dpdk-rhel:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow podman push dpdk-rhel:latest
$ podman push dpdk-rhel:latest
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
12.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
Expand - 참고참고
Expand
12.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
Expand
12.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_vcpu_wait_seconds_total[6m]))) > 0
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_vcpu_wait_seconds_total[6m]))) > 0
12.3.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_network_receive_bytes_total[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_network_transmit_bytes_total[6m]))) > 0
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_network_receive_bytes_total[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_network_transmit_bytes_total[6m]))) > 0
12.3.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.3.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_storage_read_traffic_bytes_total[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_storage_write_traffic_bytes_total[6m]))) > 0
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_storage_read_traffic_bytes_total[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_storage_write_traffic_bytes_total[6m]))) > 0
12.3.3.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
kubevirt_vmsnapshot_disks_restored_from_source{vm_name="simple-vm", vm_namespace="default"}
kubevirt_vmsnapshot_disks_restored_from_source{vm_name="simple-vm", vm_namespace="default"}
kubevirt_vmsnapshot_disks_restored_from_source_bytes{vm_name="simple-vm", vm_namespace="default"}
kubevirt_vmsnapshot_disks_restored_from_source_bytes{vm_name="simple-vm", vm_namespace="default"}
12.3.3.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_storage_iops_read_total[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_storage_iops_write_total[6m]))) > 0
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_storage_iops_read_total[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_storage_iops_write_total[6m]))) > 0
12.3.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_memory_swap_in_traffic_bytes[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_memory_swap_out_traffic_bytes[6m]))) > 0
topk(3, sum by (name, namespace) (rate(kubevirt_vmi_memory_swap_in_traffic_bytes[6m])) + sum by (name, namespace) (rate(kubevirt_vmi_memory_swap_out_traffic_bytes[6m]))) > 0
12.3.3.5. 링크 복사링크가 클립보드에 복사되었습니다!
12.4. 링크 복사링크가 클립보드에 복사되었습니다!
12.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
$ wget https://github.com/prometheus/node_exporter/releases/download/v1.3.1/node_exporter-1.3.1.linux-amd64.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo tar xvf node_exporter-1.3.1.linux-amd64.tar.gz \ --directory /usr/bin --strip 1 "*/node_exporter"
$ sudo tar xvf node_exporter-1.3.1.linux-amd64.tar.gz \ --directory /usr/bin --strip 1 "*/node_exporter"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow sudo systemctl enable node_exporter.service sudo systemctl start node_exporter.service
$ sudo systemctl enable node_exporter.service $ sudo systemctl start node_exporter.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
curl http://localhost:9100/metrics
$ curl http://localhost:9100/metrics
Copy to Clipboard Copied! Toggle word wrap Toggle overflow go_gc_duration_seconds{quantile="0"} 1.5244e-05 go_gc_duration_seconds{quantile="0.25"} 3.0449e-05 go_gc_duration_seconds{quantile="0.5"} 3.7913e-05
go_gc_duration_seconds{quantile="0"} 1.5244e-05 go_gc_duration_seconds{quantile="0.25"} 3.0449e-05 go_gc_duration_seconds{quantile="0.5"} 3.7913e-05
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.4.3. 링크 복사링크가 클립보드에 복사되었습니다!
spec: template: metadata: labels: monitor: metrics
spec: template: metadata: labels: monitor: metrics
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.4.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc get service -n <namespace> <node-exporter-service>
$ oc get service -n <namespace> <node-exporter-service>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl http://<172.30.226.162:9100>/metrics | grep -vE "^#|^$"
$ curl http://<172.30.226.162:9100>/metrics | grep -vE "^#|^$"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.4.4. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f node-exporter-metrics-monitor.yaml
$ oc create -f node-exporter-metrics-monitor.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.4.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc expose service -n <namespace> <node_exporter_service_name>
$ oc expose service -n <namespace> <node_exporter_service_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get route -o=custom-columns=NAME:.metadata.name,DNS:.spec.host
$ oc get route -o=custom-columns=NAME:.metadata.name,DNS:.spec.host
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME DNS node-exporter-service node-exporter-service-dynamation.apps.cluster.example.org
NAME DNS node-exporter-service node-exporter-service-dynamation.apps.cluster.example.org
Copy to Clipboard Copied! Toggle word wrap Toggle overflow curl -s http://node-exporter-service-dynamation.apps.cluster.example.org/metrics
$ curl -s http://node-exporter-service-dynamation.apps.cluster.example.org/metrics
Copy to Clipboard Copied! Toggle word wrap Toggle overflow go_gc_duration_seconds{quantile="0"} 1.5382e-05 go_gc_duration_seconds{quantile="0.25"} 3.1163e-05 go_gc_duration_seconds{quantile="0.5"} 3.8546e-05 go_gc_duration_seconds{quantile="0.75"} 4.9139e-05 go_gc_duration_seconds{quantile="1"} 0.000189423
go_gc_duration_seconds{quantile="0"} 1.5382e-05 go_gc_duration_seconds{quantile="0.25"} 3.1163e-05 go_gc_duration_seconds{quantile="0.5"} 3.8546e-05 go_gc_duration_seconds{quantile="0.75"} 4.9139e-05 go_gc_duration_seconds{quantile="1"} 0.000189423
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.5. 링크 복사링크가 클립보드에 복사되었습니다!
12.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.5.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.5.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
12.5.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
12.5.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow $ oc apply -f <file_name>.yaml
$ oc apply -f <file_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
lspci | grep watchdog -i
$ lspci | grep watchdog -i
Copy to Clipboard Copied! Toggle word wrap Toggle overflow echo c > /proc/sysrq-trigger
# echo c > /proc/sysrq-trigger
Copy to Clipboard Copied! Toggle word wrap Toggle overflow pkill -9 watchdog
# pkill -9 watchdog
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.5.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
yum install watchdog
# yum install watchdog
Copy to Clipboard Copied! Toggle word wrap Toggle overflow #watchdog-device = /dev/watchdog
#watchdog-device = /dev/watchdog
Copy to Clipboard Copied! Toggle word wrap Toggle overflow systemctl enable --now watchdog.service
# systemctl enable --now watchdog.service
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
12.5.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.6. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.3. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.4. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.5. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.6. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.7. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.8. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.9. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.10. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.11. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.12. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.13. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.14. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.15. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.16. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.17. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.18. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.19. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.20. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.21. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.22. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.23. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.24. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.25. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.26. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.27. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.28. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.29. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.30. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.31. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.32. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.33. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.34. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.35. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.36. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.37. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.38. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.39. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.40. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.41. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.42. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.43. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.44. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.45. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.46. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.47. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.48. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.49. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.50. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.51. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.52. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.53. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.54. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.55. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.56. 링크 복사링크가 클립보드에 복사되었습니다!
12.6.57. 링크 복사링크가 클립보드에 복사되었습니다!
13장. 링크 복사링크가 클립보드에 복사되었습니다!
13.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.1.1.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.1.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
13.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
|
|
|
|
|
|
|
|
13.2. 링크 복사링크가 클립보드에 복사되었습니다!
13.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
13.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ -- /usr/bin/gather
$ oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ -- /usr/bin/gather
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.2.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.2.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 중요
13.2.3.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
|
|
|
|
|
oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ -- <environment_variable_1> <environment_variable_2> <script_name>
$ oc adm must-gather \
--image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \
-- <environment_variable_1> <environment_variable_2> <script_name>
oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ -- PROS=5 /usr/bin/gather
$ oc adm must-gather \
--image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \
-- PROS=5 /usr/bin/gather
oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ -- NS=mynamespace VM=my-vm /usr/bin/gather --vms_details
$ oc adm must-gather \
--image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \
-- NS=mynamespace VM=my-vm /usr/bin/gather --vms_details
oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ /usr/bin/gather --images
$ oc adm must-gather \
--image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \
/usr/bin/gather --images
oc adm must-gather \ --image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \ /usr/bin/gather --instancetypes
$ oc adm must-gather \
--image=registry.redhat.io/container-native-virtualization/cnv-must-gather-rhel9:v4.15.8 \
/usr/bin/gather --instancetypes
13.3. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc get events -n <namespace>
$ oc get events -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc describe <resource> <resource_name>
$ oc describe <resource> <resource_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.2.3. 링크 복사링크가 클립보드에 복사되었습니다!
oc get pods -n openshift-cnv
$ oc get pods -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 예 13.1.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc logs -n openshift-cnv <pod_name>
$ oc logs -n openshift-cnv <pod_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고예 13.2.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.3.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
$ oc edit hyperconverged kubevirt-hyperconverged -n openshift-cnv
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3.3.3. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
oc edit vm <vm_name>
$ oc edit vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc apply vm <vm_name>
$ oc apply vm <vm_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow virtctl restart <vm_name> -n <namespace>
$ virtctl restart <vm_name> -n <namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3.3.5. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.3.6. 링크 복사링크가 클립보드에 복사되었습니다!
oc logs -n <namespace> -l kubevirt.io/domain=<vm_name> --tail=-1 -c guest-console-log
$ oc logs -n <namespace> -l kubevirt.io/domain=<vm_name> --tail=-1 -c guest-console-log
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
13.3.4. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster"
|
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster" |kubernetes_labels_app_kubernetes_io_component="storage"
|
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster" |kubernetes_labels_app_kubernetes_io_component="deployment"
|
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster" |kubernetes_labels_app_kubernetes_io_component="network"
|
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster" |kubernetes_labels_app_kubernetes_io_component="compute"
|
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster" |kubernetes_labels_app_kubernetes_io_component="schedule"
|
|
{log_type=~".+",kubernetes_container_name=~"<container>|<container>"} |json|kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster"
|
|
{log_type=~".+", kubernetes_container_name="compute"}|json |!= "custom-ga-command"
|
|
|
|
|
|
|
|
|
{log_type=~".+"}|json |kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster" |= "error" != "timeout"
{log_type=~".+"}|json
|kubernetes_labels_app_kubernetes_io_part_of="hyperconverged-cluster"
|= "error" != "timeout"
13.3.5. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.6. 링크 복사링크가 클립보드에 복사되었습니다!
13.3.6.1. 링크 복사링크가 클립보드에 복사되었습니다!
oc describe dv <DataVolume>
$ oc describe dv <DataVolume>
13.3.6.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14장. 링크 복사링크가 클립보드에 복사되었습니다!
14.1. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.2. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <snapshot_name>.yaml
$ oc create -f <snapshot_name>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc wait <vm_name> <snapshot_name> --for condition=Ready
$ oc wait <vm_name> <snapshot_name> --for condition=Ready
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 참고
14.1.3. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.4. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.4.1. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.4.2. 링크 복사링크가 클립보드에 복사되었습니다!
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc create -f <vm_restore>.yaml
$ oc create -f <vm_restore>.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.1.5. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.5.1. 링크 복사링크가 클립보드에 복사되었습니다!
14.1.5.2. 링크 복사링크가 클립보드에 복사되었습니다!
oc delete vmsnapshot <snapshot_name>
$ oc delete vmsnapshot <snapshot_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
oc get vmsnapshot
$ oc get vmsnapshot
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.2. 링크 복사링크가 클립보드에 복사되었습니다!
14.2.1. 링크 복사링크가 클립보드에 복사되었습니다!
- 주의
14.2.2. 링크 복사링크가 클립보드에 복사되었습니다!
- 참고
oc get all -n openshift-adp
$ oc get all -n openshift-adp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get dpa dpa-sample -n openshift-adp -o jsonpath='{.status}'
$ oc get dpa dpa-sample -n openshift-adp -o jsonpath='{.status}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow {"conditions":[{"lastTransitionTime":"2023-10-27T01:23:57Z","message":"Reconcile complete","reason":"Complete","status":"True","type":"Reconciled"}]}
{"conditions":[{"lastTransitionTime":"2023-10-27T01:23:57Z","message":"Reconcile complete","reason":"Complete","status":"True","type":"Reconciled"}]}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc get backupstoragelocations.velero.io -n openshift-adp
$ oc get backupstoragelocations.velero.io -n openshift-adp
Copy to Clipboard Copied! Toggle word wrap Toggle overflow NAME PHASE LAST VALIDATED AGE DEFAULT dpa-sample-1 Available 1s 3d16h true
NAME PHASE LAST VALIDATED AGE DEFAULT dpa-sample-1 Available 1s 3d16h true
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
14.3. 링크 복사링크가 클립보드에 복사되었습니다!
14.3.1. 링크 복사링크가 클립보드에 복사되었습니다!
14.3.1.1. 링크 복사링크가 클립보드에 복사되었습니다!
Legal Notice
링크 복사링크가 클립보드에 복사되었습니다!
Copyright © 2025 Red Hat
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.