KubeVirtでVMをデプロイするためのVirtualMachineオブジェクトの定義例
KubeVirtを使用すればKubenetes上でコンテナと並列にVMを動作させることできますが、今回は実際にVMをデプロイする際の定義例を紹介します。
KubeVirtの概要に関しては以下の記事を参照ください。
KubeVirtをインストールすると、Kubernetes APIに仮想マシンを管理する「VirtualMachine API」が追加され、他のAPIリソースと同様に、kubectlを使用して管理することができます。
以下が、KubeVirtをインストールしたKubenetes上へのVM(VirtualMachineオブジェクト)の定義例(YAML)になります。
Podを定義する場合と同様に、apiVersionフィールドやspecフィールドがあります。
また、kindにはVirtualMachineを指定します。
apiVersion: kubevirt.io/v1alpha1
kind: VirtualMachine
metadata:
name: testvm
spec:
terminationGracePeriodSeconds: 0
domain:
resources:
requests:
memory: 64M
devices:
disks:
- name: mydisk
volumeName: myvolume
disk:
dev: vda
volumes:
- name: myvolume
iscsi:
iqn: iqn.2017-01.io.kubevirt:sn.42
lun: 2
targetPortal: iscsi-demo-target.kube-system.svc.cluster.local
<参考記事>
http://www.kubevirt.io/user-guide/#/workloads/virtual-machines/creation?id=virtualmachine-api