Контроль системы виртуализации
Популярные систем виртуализации
VMware vSphere/ESXi
vSphere комплексное решение, объединяющее физические ресурсы в общую инфраструктуру. Основой vSphere является гипервизор ESXi, который устанавливается непосредственно на сервер и позволяет создавать и управлять виртуальными машинами. Гипервизор ESXi обеспечивает высокую производительность и безопасность.
vCenter Server предоставляет централизованное управление и мониторинг всей виртуализированной инфраструктуры.
VMware ESXi сохраняет активность хоста в лог-файлах, используя установки syslog. Полезные для анализа лог-файлы:
| /var/log/auth.log | События, связанные с аутентификацией для локальной системы. |
| /var/log/hostd.log | Содержит информацию об агенте, который управляет и настраивает хост ESXi и его виртуальные машины. |
| /var/log/shell.log | запись всех команд, введенных в оболочку ESXi, и событий оболочки |
| /var/log/syslog.log | общие сообщения журнала и может использоваться для устранения неполадок |
| /var/log/vpxa.log | Содержит информацию об агенте, который общается с vCenter Server |
| /var/log/vmkernel.log | действия, связанные с виртуальными машинами и ESXi. |
| /var/log/vmksummary.log | определения статистики доступности и времени работы ESXi |
| /var/log/vmkwarning.log | |
| /var/log/loadESX.log | события, связанные с перезагрузкой хоста ESXi через Quick Boot |
Рекомендуется настроить ведение журнала на SIEM. По умолчанию, логи на хостах ESXi хранятся в файловой системе в памяти. Они теряются при перезагрузке хоста и хранятся только 24 часа.
Логи виртуальных машин хранятся в той же директории, что и файлы конфигурации виртуальной машины, и называются vmware.log и vmware*.log2. Путь к лог-файлу должен быть похож на /vmfs/volumes/<datastore>/<virtual machine>/vmware.log.
Ниже пример содержимого лог-файла vmware.log:
2022-07-15T18:50:30.687Z| vmx| I125: SnapshotVMX_TakeSnapshot start: 'Snapshot 1', deviceState=0, lazy=0, logging=0, quiesced=0, forceNative=0
2022-07-15T18:50:30.688Z| vmx| I125: SNAPSHOT: SnapshotConfigInfoRead: Done version 7 data.
2022-07-15T18:50:30.688Z| vmx| I125: SNAPSHOT: SnapshotConfigInfoReadExtra done.
2022-07-15T18:50:30.688Z| vmx| I125: SNAPSHOT: SnapshotDumpConfigInfo: numDisks = 1 version=7 encoding=UTF-8
2022-07-15T18:50:30.688Z| vmx| I125: SNAPSHOT: SnapshotDumpConfigInfo: 'ide0:0.fileName' = 'Windows 7.vmdk'
...
2022-07-15T18:50:31.020Z| vmx| I125: DISKLIB-VMFS : "/vmfs/volumes/4ec4c10b-6e8e3982-e2db-001cc4ded8c6/Windows 7/Windows 7-000001.vmdk" : open successful (10) size = 0, hd = 10527744. Type 3
...
2022-07-15T18:50:31.478Z| vmx| I125: SNAPSHOT: SnapshotBranchDisk: Done with ide0:0.
2022-07-15T18:50:31.478Z| vmx| I125: SnapshotVMX_TakeSnapshot done.
2022-07-15T18:50:31.478Z| vmx| I125: SnapshotVMXTakeSnapshotComplete: Snapshot 1
В этом примере можно увидеть процесс создания снимка для виртуальной машины “Windows 7”. Имя снимка, время его создания и другие детали будут отражены в лог-файле.
Microsoft Hyper-V:
Разработанный Microsoft, Hyper-V предоставляет встроенные инструменты для виртуализации на платформе Windows. Hyper-V включен в операционные системы Windows Server и предоставляет множество возможностей для управления виртуальными машинами и ресурсами.
Группы файлов журналов
Существует 11 различных файлов журналов, которые используются для сбора информации Hyper-V обычным способом просмотра событий, хотя и гораздо более полезным способом. Windows Server 2016 содержит следующие группы файлов журналов, которые помогают устранять неполадки в средах Hyper-V:
Чтобы найти различные журналы событий, специфичные для Hyper-V, в средстве просмотра событий Windows, перейдите в раздел Windows Logs -> Applications and Services Logs -> Microsoft -> Windows.
- Hyper-V-Compute — собирает информацию об API управления контейнерами, известном как Host Compute Service (HCS), и служит API управления низкого уровня.
- Hyper-V-Config — фиксирует события, связанные с файлами конфигурации виртуальной машины. Здесь будут регистрироваться ошибки, связанные с отсутствием, повреждением или недоступностью файлов конфигурации виртуальной машины.
- Hyper-V-Guest-Drivers — файл журнала, который содержит информацию о компонентах служб интеграции Hyper-V и предоставляет ценную информацию по устранению проблем с компонентами интеграции.
- Hyper-V-High-Availability — события, связанные с отказоустойчивыми кластерами Hyper-V Windows Server
- Hyper-V-Hypervisor — события, связанные с самим гипервизором Hyper-V. Например, если Hyper-V не запускается, то причину можно поискать в этой ветке логов. Кроме того, здесь будут регистрироваться информационные сообщения, такие как созданные или удаленные разделы Hyper-V.
- Hyper-V-Shared-VHDX — в этом журнале находится информация, относящаяся к общим виртуальным дискам VHDX между виртуальными машинами.
- Hyper-V-StorageVSP — собирает информацию о поставщике услуг виртуализации хранилища. Здесь содержится информация по устранению неполадок низкого уровня для хранилища виртуальных машин.
- Hyper-V-VID — регистрирует события драйвера инфраструктуры виртуализации, касающиеся назначения памяти, динамической памяти или изменения статической памяти при работающей виртуальной машине.
- Hyper-V-VMMS — события службы управления виртуальными машинами, которые важны для устранения неполадок виртуальной машины, которая не запускается, или сбоя операции динамической миграции.
- Hyper-V-VmSwitch — содержит события от коммутаторов виртуальной сети.
- Hyper-V-Worker — журнал, в котором фиксируется информация о рабочем процессе Hyper-V, который отвечает за фактическую работу виртуальной машины.
Нам будет более интересна группа событий Hyper-V-VMMS. Ниже представлены примеры некоторых событий Hyper-V, которые могут помочь отследить действия с виртуальными машинами:
-
Создание снимка (событие ID 18012): Это событие регистрируется, когда создается новый снимок виртуальной машины. В журнале событий будет указано имя виртуальной машины и имя снимка.
Источник: Microsoft-Windows-Hyper-V-VMMS ID события: 18012 Уровень: Информация Описание: Снимок 'Имя снимка' был успешно создан для виртуальной машины 'Имя виртуальной машины'. -
Изменение конфигурации (событие ID 12540): Это событие регистрируется, когда изменяется конфигурация виртуальной машины. В журнале событий будет указано имя виртуальной машины и детали изменения.
Источник: Microsoft-Windows-Hyper-V-VMMS ID события: 12540 Уровень: Информация Описание: Конфигурация виртуальной машины 'Имя виртуальной машины' была успешно изменена. -
Перемещение виртуальной машины (событие ID 20410): Это событие регистрируется, когда виртуальная машина перемещается с одного хоста на другой. В журнале событий будет указано имя виртуальной машины и детали перемещения.
Источник: Microsoft-Windows-Hyper-V-VMMS ID события: 20410 Уровень: Информация Описание: Виртуальная машина 'Имя виртуальной машины' была успешно перемещена
KVM (Kernel-based Virtual Machine):
KVM встроен в ядро Linux и обеспечивает поддержку виртуализации на уровне аппаратного обеспечения. Это открытое программное обеспечение и является частью многих дистрибутивов Linux. KVM обеспечивает высокую производительность и расширяемость.
Система виртуализации KVM хранит различные типы логов, которые помогают в отслеживании действий и устранении проблем. Ниже представлены некоторые из них:
| /var/log/syslog или /var/log/messages | общие логи операционной системы, которые также могут содержать информацию о действиях KVM |
| /var/log/libvirt/ | Libvirt — это инструментарий для управления платформами виртуализации, включая KVM |
| KVM использует QEMU для эмуляции аппаратного обеспечения. Логи QEMU могут быть полезны для отладки проблем с эмуляцией аппаратного обеспечения. | |
| Каждая виртуальная машина, работающая под управлением KVM, также может генерировать свои собственные логи. Эти логи могут быть полезны для отладки проблем внутри виртуальной машины. Учитывая, что под капотом KVM находится обычный Linux, мы могли бы отслеживать события обращения к критичным ВМ несколькими методами. |
Трекинг команд на хост системе:
# Клонирование VM:
virt-clone
# Создание снепшота диска:
virsh snapshot-create-as
# Изменение конфигурации:
virsh dumpxml
Трекинг логов приложения виртуализации. В логах KVM и libvirt есть записи о выполнении команд, связанных с клонированием виртуальных машин, созданием снимков и изменением конфигурации.
Например, при клонировании виртуальной машины можете увидеть запись вида:
2024-03-10 18:42:35.123+0000: 26757: info : libvirt version: 1.2.2
2024-03-10 18:42:35.123+0000: 26757: info : hostname: kvm-host
2024-03-10 18:42:35.123+0000: 26757: info : Domain id=7 name='original-vm' uuid=546a3d63-11b2-4fd4-b2c5-5e60f7e8cc5a is cloned as id=8 name='cloned-vm' uuid=5e60f7e8cc5a-11b2-4fd4-b2c5-546a3d63
При создании снимка диска:
2024-03-10 18:42:35.123+0000: 26757: info : libvirt version: 1.2.2
2024-03-10 18:42:35.123+0000: 26757: info : hostname: kvm-host
2024-03-10 18:42:35.123+0000: 26757: info : Domain id=7 name='my-vm' uuid=546a3d63-11b2-4fd4-b2c5-5e60f7e8cc5a snapshot 'snapshot1' was created
И при изменении конфигурации виртуальной машины:
2024-03-10 18:42:35.123+0000: 26757: info : libvirt version: 1.2.2
2024-03-10 18:42:35.123+0000: 26757: info : hostname: kvm-host
2024-03-10 18:42:35.123+0000: 26757: info : Domain id=7 name='my-vm' uuid=546a3d63-11b2-4fd4-b2c5-5e60f7e8cc5a configuration was changed
Xen:
Xen предлагает возможность использовать как гипервизор (Xen Hypervisor), так и технологию паравиртуализации. Xen был разработан для обеспечения высокой производительности и безопасности, и широко применяется в различных областях.
Эти системы виртуализации предоставляют различные возможности и применяются в зависимости от требований конкретных сценариев использования. Выбор системы виртуализации зависит от целей, бюджета, уровня экспертизы и конкретных потребностей виртуальной инфраструктуры.
No comments to display
No comments to display