From 89a102965c8d1a59b59e094c2ca522a57ed906e3 Mon Sep 17 00:00:00 2001 From: dannc Date: Thu, 21 Apr 2022 10:46:07 +0700 Subject: [PATCH] add homework 5.1 --- readme.md | 1 + src/homework/05-virtualization/5.1/readme.md | 62 ++++++++++++++++++++ 2 files changed, 63 insertions(+) create mode 100644 src/homework/05-virtualization/5.1/readme.md diff --git a/readme.md b/readme.md index a8b7111..0eef80a 100644 --- a/readme.md +++ b/readme.md @@ -19,3 +19,4 @@ * [4.1. Командная оболочка Bash: Практические навыки](/src/homework/04-script/4.1) * [4.2. Использование Python для решения типовых DevOps задач](/src/homework/04-script/4.2) * [4.3. Языки разметки JSON и YAML](/src/homework/04-script/4.3) +* [5.1. Основы виртуализации](/src/homework/05-virtualization/5.1) diff --git a/src/homework/05-virtualization/5.1/readme.md b/src/homework/05-virtualization/5.1/readme.md new file mode 100644 index 0000000..7935efa --- /dev/null +++ b/src/homework/05-virtualization/5.1/readme.md @@ -0,0 +1,62 @@ +Выполнение [домашнего задания](https://github.com/netology-code/virt-homeworks/blob/master/05-virt-01-basics/README.md) +по теме "5.1. Основы виртуализации". + +## Q/A + +### Задача 1 + +> Вкратце опишите, как вы поняли - в чем основное отличие паравиртуализации и виртуализации на основе ОС. + +Главное отличие паравиртуализации от виртуализации на основе ОС в том, что в качестве гостевой операционной системы используются ОС с модифицированным ядром, +которые взаимодействуют с гипервизором посредством определённого API. + +При этом виртуализация на основе ОС предоставляет гостевой ОС доступ +непосредственно до системных вызовов ядра хостовой операционной системы, при этом изолируя данные вызовы. +В таком случае не нужна модификация операционной системы для использования внутри виртуальных машин. + +### Задача 2 + +> Выберите тип один из вариантов использования организации физических серверов, в зависимости от условий использования. +> +> Организация серверов: +> * физические сервера +> * паравиртуализация +> * виртуализация уровня ОС +> +> Условия использования: +> * Высоконагруженная база данных, чувствительная к отказу +> * Различные Java-приложения +> * Windows системы для использования Бухгалтерским отделом +> * Системы, выполняющие высокопроизводительные расчеты на GPU +> +> Опишите, почему вы выбрали к каждому целевому использованию такую организацию. + +1. Высоконагруженная база данных, чувствительная к отказу + +Для данной задачи лучше всего подойдут физические сервера. Это объясняется тем, что любая виртуализация накладывает дополнительные +риски на стабильность работы системы. При этом во взаимодействии между гостевой ОС и хостом есть дополнительные расходы, +что тоже может быть очень критично в высоконагруженных системах. + +2. Различные Java-приложения + +В данном случае лучше всего использовать виртуализацию уровня операционной системы. Это обосновано тем, +что по задаче приложения имеют различное назначение. При этом они должны запускаться в определённом окружении (желательно одинаковым для каждого приложения), +а для безопасности, данные приложения должны быть изолированы. Таким образом вируализация уровня ОС подходит под данную задачу. + +3. Windows системы для использования Бухгалтерским отделом + +В данном случае лучше всего будет использовать паравиртуализацию, +что обеспечит изолированность систем с минимальной потерей скорости взаимодействия пользователей с системами. + +4. Системы, выполняющие высокопроизводительные расчеты на GPU + +Для данной задачи лучше всего будет использовать физические сервера, так как не все гипервизоры для паравиртуализации имеют поддержку GPU, +а некоторые поддерживают GPU только определённых вендоров/моделей. Вирутализация уровня ОС здесь только помешает, +так как добавляет дополнительные расходы на взаимодействие виртуальной машины и хоста. + +### Задача 3 + +> Как вы думаете, возможно ли совмещать несколько типов виртуализации на одном сервере? Приведите пример такого совмещения. + +Да, совмещение нескольких типов виртуализации возможно. Например, на одну машину возможно установить `VirtualBox` для полной или пара-виртуализации +и `Docker` для виртуализации на уровне ОС. \ No newline at end of file