Upgrade to Pro — share decks privately, control downloads, hide ads and more …

OpenShift Virtualization 概要説明資料

Sponsored · SiteGround - Reliable hosting with speed, security, and support you can count on. →

OpenShift Virtualization 概要説明資料

OpenShift Virtualization の概要説明資料です。(as of Jan 2021)

Avatar for Yuhki Hanada

Yuhki Hanada

January 18, 2021

More Decks by Yuhki Hanada

Other Decks in Technology

Transcript

  1. コンテナとVMの共存 2 • OpenShift Virtualization は、KVM を使用します。 • KVM Red

    Hat Enterprise Linux kernel のコアコンポーネントです。 ◦ KVM は、10年以上、プロダクション環境で実績のあるソフト ウェア: 「Red Hat Virtualization」, 「Red Hat OpenStack Platform」 や、「RHEL」 が KVM, QEMU, libvirtを使用して います。 • QEMU は、仮想マシンを実行するのに KVM を使用します • libvirt は抽象化された管理レイヤーを提供します。 • Kubernetes と同じ以下の枠組みを使用します。 ▪ Container Networking Interface (CNI) ▪ Container Storage Interface (CSI) ▪ Custom Resource Definitions (CRD, CR) Physical Machines RHEL CoreOS KVM CPU/RAM STORAGE NETWORK DRIVER DRIVER DRIVER libvirt QEMU VM Pod(s) container 1 container 2 container n VMI Pod 仮想マシンも Pod として稼働する ※RHEL CoreOS ノードは、ベアメタルのみサポート (仮想マシンをベアメタルと見立てても稼働するが、サポートはされない)
  2. 3 コンテナ化された仮想マシン ・CPU、RAM等の制限は、libvirt と QEMU によって決定されされます。 ・ゲストOSは、Linux と Windows が使用できます。(※

    MS社のSVVP認定済み) OpenShift 4.6 / Openshift Virtualization 2.5でサポートされるゲストOS Red Hat Enterprise Linux 6, 7, and 8。 Microsoft Windows Server 2012 R2、2016、および 2019。 Microsoft Windows 10。 ストレージ ・VM diskは、PVC(Persistent Volume Claim) / PV (Persistent Volume) の Kubernetes と同じ概念を使用 ・既存のイメージは、CDI (Containerized Data Importer) コントロー ラーを使用して PVC にインポート。 ネットワーク デフォルトで Pod のネットワークを使用します。 Multus を使用する事で外部ネットワークへのダイレクト接続が可能です。 コンテナ化された仮想マシン ※Windows Server Virtualization Validation Program (SVVP) (Red Hat OpenShift Container Platform 4 on RHEL CoreOS 8)
  3. 4 kubelet (DaemonSet) Pod virt-handler Cluster Services Nodes VM Pod

    virt-launcher Other Pod(s) container 1 libvirtd container 2 VM container n API Server virt-controller virt-controller: k8sのCRDで定義された仮想マシンのリソース(VMI)をもとに、VM Podのライフサイクルを管理 virt-handler: OpenShiftの各Worker Nodeに1つずつデプロイされるDaemonSet。apiやvirt-controllerと連携して 、各Node上でのVM Podの作成や削除のシグナルをvirt-launcherに送信 virt-launcher: virt-handlerからのシグナルをトリガーにして、libvirtdと通信し仮想マシンの作成や削除を制御 https://github.com/kubevirt/kubevirt/blob/master/docs/components.md アーキテクチャー概要
  4. VM と コンテナの連携 5 • pod のネットワークに接続されたVirtual Machines は、標準的 Kubernetes

    の以下の方 法を使ってアクセス可能: ◦ Service ◦ Route ◦ Ingress • アプリケーションの Pod と同様に、VMの Podに も Network policy が適用される。 • VM-to-pod, and pod-to-VMの通信も、SDN や、 ingress など、ネットワーク構成に応じて可能。 仮想マシン 仮想マシン Pod Pod デフォルトでは、仮想マシンとコンテナは同じネットワークにアクセスします
  5. 6 「Source」どのように VMがブートするか • Boot via PXE, optionally diskless •

    URL will import a QCOW2 or raw disk image using a DataVolume • Container uses a container image, pulled from a registry, for the disk • Disk uses an existing PVC 「Flavor」は、事前定義された CPU と Memoryの 割り当て • Tiny = 1 vCPU and 1GB RAM, Small = 1 vCPU and 2GB RAM, etc. 「Workload」は、KVM performance flag をセット するために使われる、期待されるワークロードのカ テゴリーの定義 仮想マシンの作成の流れ 1 2 3 VMware vSphere や Red Hat Virtualization 環境からイ ンポートも可能 OpenShift 管理コンソール
  6. 7 一般的な VMのタスクをサポート ◦ Start/stop/Restart ◦ Live migration ◦ Clone

    ◦ application group, labels, and annotations の編集 ◦ Delete コンセプトは、通常の仮想マシンと変わらないが、 Kubernetes の世界で良く使われる、label, annotation を付ける事ができます。 Virtual Machine に対するアクション OpenShift 管理コンソール
  7. 8 • Kubernetes の枠組みである CR (Custom Resource)を 使用した仮想マシン環境の統合 • OpenShift

    Virtualization 用に以下の CustomResourceDefinitions (CRD)を定義 ◦ VirtualMachine ◦ VirtualMachineInstance ◦ VirtualMachineInstanceMigration ◦ DataVolume OpenShift Virtualization 用の CRD
  8. Virtual Machine ストレージ 9 • OpenShift Virtualization のディスクとしては、 Kubernetes PersistentVolume

    (PV) が使用される • PVs で使用されている技術 ◦ In-tree iSCSI, NFS ◦ CSI drivers ◦ Local storage using host path provisioner ◦ OpenShift Container Storage • 動的 または 静的 provision された PVs • Live Migration には、RWXのPVCが必要 • Diskは、VirtIO or SCSI controllers を使用して接続 ◦ 接続順は VM で定義 • Boot 順は VM definition で変更可能
  9. 10 • FileSystem PVC 上の VM disk は、 thin provisioned

    raw images として作成される。 ◦ Thick provisioned disks are not created by CDI(Containerized Data Importer), may be possible manually • Block PVC は、直接VMにアタッチされる。 • CSI の操作(例: snapshot と clone) は、VM disk PVCではサポートされない ◦ VM disks をクローンする場合いは、DataVolume CRを使う。 • PVC の resize をしても VM disk のサイズは変わらない ◦ 現在未サポート • ディスクの Hot add はサポートされない (for any virtual hardware) PVC 内の VM disk
  10. 11 • UI から Network Interface を設定 • 一つ以上のネットワーク接続 ◦

    デフォルトは Pod の SDN ◦ 追加で Multus ベースのインターフェイス • Model: Network Inteface カードのモデル。e1000e もしくは、virtio をサポート • Type : Masquerade (デフォルトの Pod Network 接 続時の推奨), bridge (Secondary Network に接続す る場合い) • MAC address のカスタマイズが可能 • SR-IOV は、SR-IOV Operator を導入が前提。 VMの Network 4 4
  11. 用語の違い 12 Feature RHV OpenShift Virtualization vSphere Where VM disks

    are stored Storage Domain PVC datastore Policy based storage selection None StorageClass SPBM Non-disruptive VM migration Live migration Live migration vMotion Non-disruptive VM storage migration Storage live migration N/A Storage vMotion Active resource balancing Cluster scheduling policy Pod eviction policy, descheduler Dynamic Resource Scheduling (DRS) Physical network configuration Host network config (via nmstate w/4.4) nmstate Operator, Multus vSwitch / DvSwitch Overlay network configuration OVN OCP SDN (OpenShiftSDN, OVNKubernetes, and partners), Multus NSX-T Host / VM metrics Data warehouse + Grafana (RHV 4.4) OpenShift Metrics, health checks vCenter, vROps
  12. OpenShift Virtualization Performance 13 https://www.openshift.com/blog/openshift-cnv-2.5-available • RHV( Red Hat Virtualization)

    と、 OpenShift Virtualization を使った Performance の比較 • DBの種類によって Performance に違いが あるが、誤差の範囲と考えられる。
  13. 15 OpenShift マニュアル https://docs.openshift.com/container-platform/4.6/virt/about-virt.html OpenShift Virtualization 解説 + User Interface

    のデモ https://www.youtube.com/watch?v=vHAjvX8QfhE Demo ビデオ (Windows Server 2019のデプロイ) https://www.youtube.com/watch?v=Kx110kqoHo0 Demo ビデオ (isoから Windows Server をインストール) https://www.youtube.com/watch?v=yfZ6CCwoR_M Red Hat OpenShift Blog https://www.openshift.com/virtualization/ OpenShift Virtualization に関するリソース
  14. linkedin.com/company/red-hat youtube.com/user/RedHatVideos facebook.com/redhatinc twitter.com/RedHat Red Hat is the world’s leading

    provider of enterprise open source software solutions. Award-winning support, training, and consulting services make Red Hat a trusted adviser to the Fortune 500. Thank you 16