KVM и Докер на единственном хосте Ubuntu?

У меня есть единственный домашний сервер лаборатории, который я использую для выполнения некоторых VM’s в настоящее время. Я хотел бы начать мигрировать на некоторое контейнерное использование, но, продолжу нуждаться в VM’s также. Таким образом, мой вопрос, мог я запускать Ubuntu как свой хост ОС, и затем устанавливать и выполнять KVM для моих потребностей VM и Докера для моих контейнерных потребностей.
Прежде чем я запущу движущиеся вещи, я хотел бы знать, будут ли они сосуществовать приятно на единственном сервере Ubuntu.

Цените свои мысли!

1
задан 7 June 2018 в 13:00

2 ответа

Я не нашел никакой информации, которая бы предлагала какие-либо красные флаги или предостережение для достижения вашей цели.

Я немного исследовал это и обнаружил, что компонент ядра KVM был встроен в основной Linux начиная с ядра 2.6.20, 18.04 LTS поставляется с ядром 4.15. KVM хорошо интегрирован в Ubuntu 18.04 LTS.

Согласно Docker для Ubuntu, Docker оптимизирован для серверов и виртуальных машин.

Вы можете прочитать больше о KVM и Docker соответственно.

1
ответ дан 3 December 2019 в 06:51

Да, гости KVM (например, Windows или OSX, работающий в QEMU, с помощью KVM) и Докер (например, Докер CE рабочие контейнеры), хорошо работают все одновременно на том же экземпляре Ubuntu.

Ваш вопрос в основном описывает мою рабочую нагрузку. В данный момент я выполняю два эмулятора Android (использующий аппаратное ускорение виртуализации, которое является KVM на Linux), гость Windows 10 QEMU, OS X Высокая Горная цепь гость QEMU и Докер (установленный с помощью этих инструкций https://docs.docker.com/install/linux/docker-ce/ubuntu/) с их привет мировым выполнением в качестве примера, все одновременно на хосте Ubuntu 18.04.

Краткое объяснение, почему это работает, состоит в том, что виртуальные машины (QEMU, и т.д.) на Linux используют гипервизор (KVM в случае QEMU, но Virtualbox и VMware используют различные гипервизоры) использовать аппаратные ресурсы Вашего компьютера, в то время как Докер использует пространства имен Linux для простого использования доступных аппаратных ресурсов в настоящее время рабочего ядра, но отдельный от основной операционной системы.

Таким образом гости KVM и Докер на самом деле выполняют использование отдельные технологии и действительно даже не находятся во взаимосвязи друг другу на уровне ядра. Это в отличие от случая, где Вы пытаетесь использовать различные гипервизоры (например, QEMU+KVM и VirtualBox) одновременно - который не работает, поскольку можно только выполнить один тип гипервизора за один раз (хотя можно выполнить несколько VMs от каждого типа гипервизора).

Существуют большие объяснения технологических деталей здесь: https://stackoverflow.com/questions/16047306/how-is-docker-different-from-a-virtual-machine

3
ответ дан 3 December 2019 в 06:51

Другие вопросы по тегам:

Похожие вопросы: