Как настроить местоположение журналов VMware на ESXi

VMware ESXi – гипервизор, который, подобно другим операционным системам и программным продуктам, записывает файлы журналов. Мы рассмотрели самые полезные журналы VMware в недавней статье в блоге, и эта статья расширяет конфигурацию. После установки ESXi файлы журналов хранятся в расположении по умолчанию. Однако, при необходимости, вы можете изменить расположение журналов VMware. В этой статье объясняется, как изменить расположение журналов ESXi в командной строке и в графическом интерфейсе пользователя (GUI).

Зачем нужно изменять расположение журналов VMware?

По умолчанию журналы VMware ESXi удаляются после перезагрузки хоста ESXi. Если вы не хотите, чтобы журналы VMware ESXi удалялись после каждой перезагрузки хоста, вы можете изменить расположение журналов VMware на хосте ESXi с раздела временного хранения по умолчанию на постоянное хранилище, такое как директория на хранилище данных.

Первый подход к настройке VMware ESXi для сохранения журналов на постоянном хранилище, таком как хранилище данных, заключается в настройке постоянного раздела временного хранения. По умолчанию ESXi использует файловую систему в памяти (tmpfs) для раздела временного хранения, что означает, что журналы теряются при перезагрузке. Однако с постоянным разделом временного хранения журналы будут сохраняться после перезагрузки и храниться в назначенном хранилище данных.

Второй подход заключается в оставлении конфигурации раздела scratch без изменений, но изменении пути для хранения файлов журналов с раздела временно��о хранения на постоянное хранилище данных. Мы используем этот подход в нашем примере.

Вы можете изменить расположение системных журналов VMware ESXi в командной строке ESXi и в GUI с использованием клиента VMware vSphere.Изменение расположения журналов ESXi с использованием командной строки

Изменить расположение логов ESXi с помощью командной строки

Выполните следующие шаги, чтобы изменить расположение логов ESXi в командной строке:

  1. Во-первых, определите хранилище данных, где вы хотите хранить логи. Убедитесь, что хранилище данных имеет достаточно свободного места для размещения файлов журналов.
  2. Включите SSH и подключитесь к хосту ESXi. Используйте клиент SSH (например, PuTTY) для подключения к IP-адресу управления хоста ESXi.
  3. Проверьте текущую конфигурацию скретча и расположение логов VMware. Выполните следующую команду, чтобы проверить текущую конфигурацию для хранения логов VMware:

    esxcli system syslog config get

    Как видно на нашем скриншоте, /scratch/log является локальным выводом логов.

  4. Вы также можете использовать команду для просмотра информации о текущей конфигурации скретча:

    vim-cmd hostsvc/advopt/view ScratchConfig.ConfiguredScratchLocation

  5. Создайте каталог на хранилище данных. Используйте следующую команду для создания каталога на выбранном хранилище данных, где вы хотите сохранить журналы:

    mkdir /vmfs/volumes/<имя_хранилища_данных>/log

    Замените <имя_хранилища_данных> на имя хранилища данных (datastore10a в нашем случае).

    В нашем случае команда выглядит так:

    mkdir /vmfs/volumes/datastore10a/log

  6. Установите новое местоположение для хранения журналов VMware. Вы можете установить каталог на хранилище данных локального или удаленного хоста ESXi с помощью команды:

    Мы установили недавно созданный каталог на Datastore10a на нашем локальном хосте ESXi в качестве нового местоположения для хранения журналов VMware с помощью команды:

    esxcli system syslog config set --logdir=/vmfs/volumes/Datastore10a/log

    Если вы видите ошибку вроде «Logdir must exist and be a directory», и если требуемый каталог уже существует, попробуйте использовать UUID хранилища (раздела) вместо удобного для человека имени хранилища. Самый простой способ проверить UUID хранилища – перейти в каталог хранилища данных:

    cd /vmfs/volumes/Datastore10a/

    Просмотрите путь текущего каталога, где вы должны увидеть UUID хранилища (раздела). В нашем случае UUID datastore10a – 609a545a-50d29185-ffbb-000c293004f2.

    Выполните команду для установки нового местоположения журнала, используя UUID хранилища вместо имени хранилища в пути:

    esxcli system syslog config set --logdir=/vmfs/volumes/609a545a-50d29185-ffbb-000c293004f2/log

    Команда выполнена успешно.

  7. Перезагрузите системный журнал, чтобы применить новые настройки и начать запись журналов в постоянное местоположение, которое является директорией на хранилище данных:

    esxcli system syslog reload

После перезагрузки ESXi будет сохранять свои журналы в указанном каталоге на назначенном хранилище данных. Это обеспечит сохранение журналов при перезагрузке и обеспечит более постоянное и надежное хранилище для файлов журналов.

Изменение местоположения журнала ESXi с использованием клиента VMware vSphere

Выполните следующие шаги, чтобы изменить местоположение журнала ESXi в графическом интерфейсе vCenter с помощью клиента VMware vSphere:

  1. Выберите вид Хосты и кластеры и выберите нужный хост ESXi в панели навигации (которая расположена слева от интерфейса).
  2. Нажмите вкладку Настроить, а затем нажмите Дополнительные системные настройки в разделе Система панели настройки.
  3. Найдите ключ Syslog.global.logDir для настройки. В нашем случае этот ключ находится на странице 31.

    Нажмите Изменить, чтобы изменить значение для ключа Syslog.global.logDir.

  4. A new window to edit advanced system settings opens.

    Измените значение по умолчанию /scratch/log на пользовательское значение, которое может быть каталогом на вашем хранилище данных, и нажмите ОК, чтобы сохранить настройки.

Изменение местоположения журнала ESXi в клиенте хоста VMware

Если у вас нет сервера vCenter или вы используете автономный хост ESXi, вы можете изменить местоположение журнала ESXi в клиенте хоста VMware:

  1. Введите IP-адрес хоста ESXi в веб-браузере и выполните вход в VMware Host Client.
  2. Перейдите в раздел Хост>Управление>Система>Расширенные настройки.
  3. Найдите ключ Syslog.global.logDir в списке опций.
  4. Выберите ключ Syslog.global.logDir и нажмите на опцию Изменить.

  5. Введите новое значение для местоположения журнала ESXi в соответствующем поле и нажмите Сохранить.

Как изменить местоположение журнала ESXi в PowerCLI

Если вам нравится vSphere PowerCLI, который является интерфейсом командной строки на основе Windows PowerShell, вы можете рассмотреть следующие способы изменения местоположения журнала хоста VMware ESXi. Могут быть три сценария.

Изменение местоположения журнала ESXi на автономном хосте

  1. Откройте PowerCLI и выполните вход на сервер ESXi с административными учетными данными:

    Connect-VIServer -Server <ESXiHostIPAddress> -User <Имя пользователя> -Password <Пароль>

  2. Установите новое местоположение журнала ESXi в PowerCLI:

    Set-VMHostAdvancedConfiguration -VMHost <HostNameOrIPAddress> -Name "Syslog.global.logDir" -Value "[<DatastoreName>] <Path>"

    Замените <DatastoreName> на имя хранилища данных, где вы хотите хранить журналы, а <Path> – на новый путь каталога для журналов.

Изменение местоположения журнала ESXi для нескольких хостов ESXi без vCenter

Если у вас есть несколько хостов ESXi, но они не управляются через vCenter, выполните следующее:

  1. Подготовьте список хостов ESXi. Создайте текстовый файл, перечисляющий каждый IP-адрес или имя хоста на одной строке (например, hosts.txt).
  2. $hosts = Get-Content -Path "C:\path\to\hosts.txt"

    foreach ($host in $hosts) {

    Connect-VIServer -Server $host -User <User> -Password <Password>

    Set-VMHostAdvancedConfiguration -VMHost $host -Name "Syslog.global.logDir" -Value "[<DatastoreName>] <Path>"

    Disconnect-VIServer -Server $host -Confirm:$false

    }

    Введите необходимые значения на основе вашей среды и инфраструктуры.

Изменение местоположения журналов ESXi для нескольких хостов с помощью vCenter

Если ваши хосты ESXi управляются с помощью vCenter, вы можете изменить местоположение журналов ESXi в PowerShell следующим образом:

  1. Подключитесь к серверу vCenter в PowerCLI:

    Connect-VIServer -Server <vCenterHostNameOrIPAddress> -User <User> -Password <Password>

  2. Установите местоположение журналов ESXi для всех хостов, управляемых vCenter:

    Get-VMHost | ForEach-Object {

    Set-VMHostAdvancedConfiguration -VMHost $_ -Name "Syslog.global.logDir" -Value "[<DatastoreName>] <Path>"

    }

    Введите необходимые значения при выполнении команд, чтобы соответствовать конфигурации вашей среды.

Вывод

Использование постоянного хранилища для журналов ESXi позволяет сохранить эти журналы после перезагрузки ESXi. Вы можете изменить местоположение журналов ESXi, используя командную строку и графический интерфейс пользователя. Если хост ESXi управляется сервером vCenter, вы можете использовать клиент VMware vSphere. Если хост ESXi не управляется vCenter, используйте командную строку ESXi или клиент VMware Host. Организации с большими виртуальными средами могут настроить сервер журналов с общим хранилищем данных для записи журналов ESXi нескольких хостов на этот сервер.

Source:
https://www.nakivo.com/blog/change-vmware-esxi-logs-location/