Что касается создания контейнера во время создания VMI с использованием kubevirt - PullRequest
0 голосов
/ 09 ноября 2019

Я использую kubernetes с докером. #kubectl, # Kubevirt

Когда я создаю VMI с использованием containerDisk из реестра docker.io, я обнаружил, что в одном модуле создается два контейнера (один - compute, а другой - volumecontainervolume)

catcentos.yaml |grep -ia3 centos-kubevirt-image

 volumes:

  - name: containervolume

  containerDisk:

    image: munnaeeebd/centos-kubevirt-image:latest

 - name: cloudinitvolume

  cloudInitNoCloud:

    userData: |-

kubectl get pod |grep centos

virt-launcher-centos-5kfvw 2/2 Запуск 0 21h

Но при использовании PVC создается один контейнер, а disk.img загружается через CDI

cat cirros-with-cirros-pvc.yaml |grep -ia3 cirros-pvc

  volumes:

   - name: containervolume

     persistentVolumeClaim:

     claimName: cirros-pvc

   - name: cloudinitvolume

     cloudInitNoCloud:

    userData: |-

kubectl get pod |grep cirros

virt-launcher-cirros-57x2r 1/1 Бег 0 78m

Мой вопрос: нормально ли, что containerDisk создает один дополнительный контейнер, чем PVC * 1025? *

1 Ответ

0 голосов
/ 12 ноября 2019

Как объяснено в этом посте GitHub , оно разработано для поведения.

Контейнер вычислений содержит процесс QEMU с запущенной виртуальной машиной. Виртуальная машина считывает образ машины из подключенного тома, который подается из другого тома-контейнера.

Второй контейнер предоставляет только данные.

Благодаря этому дизайну вы можете упаковать виртуальную машину в образ контейнера и загрузить ее в любой реестр контейнера. После загрузки он может использоваться KubeVirt в качестве диска контейнера.

...