Назад | Перейти на главную страницу

Поиск решения "временного держателя файла" для централизации файлов журналов

У нас есть конкретная под-платформа с около 900 виртуальными машинами RHEL с выходом в Интернет (на ESXi 4U2, если это помогает). Каждая виртуальная машина запускает настраиваемое приложение, которое ведет журнал в файле для каждой виртуальной машины, мы не хотим, чтобы эти журналы становились очень большими, поскольку мы хотим, чтобы виртуальные машины были небольшими. До сих пор мы добивались того, чтобы каждая виртуальная машина помещала свой файл в общую монтировку NFS, каждая из которых названа в честь виртуальной машины.

Это работало до вчерашнего дня, когда мы потеряли половину полки в коробке NetApp, на которой запущен сервер NFS, - хотя все это RAID-массивы и имеют двойные контроллеры, нам нужно было выключить всю систему, чтобы поменять полку местами (у одного агрегата есть несколько членов на полку). В этот момент виртуальные машины не могут записывать свои журналы, и мы потеряли все данные журналов.

Итак, что касается фактического вопроса, я бы хотел, чтобы каждая виртуальная машина записывала в файл, локальный для себя (то есть внутри .vmdk), а затем имел процесс, который обновляет центральную копию NFS любыми обновлениями этого локального файла. и очищает локальный файл, если NFS не работает, этого не происходит, и локальный файл увеличивается до тех пор, пока NFS не вернется, после чего он обновляет центральную копию, а затем очищает локальную копию. Имеет ли это смысл?

В любом случае мне не удалось найти ничего подобного, я почти уверен, что rsync не может, есть ли у вас какие-нибудь идеи?

Да, и мы переписываем приложение для использования системного журнала, но, видимо, это займет 3-6 месяцев :(

Спасибо.

Можно ли выполнить эту простую операцию с помощью сценария prerotate или postrotate в logrotate?