Обработка файлов журнала и конфигурации при балансировке нагрузки apache

Итак, в настоящее время я перестраиваю свою веб-платформу с одной машины на кластер машин, и я буду использовать балансировку нагрузки Apache чтобы сделать это., но у меня есть два вопроса, на которые мне нужен хороший ответ, прежде чем продолжить. Я искал в Google и искал здесь, в SO, но ничего хорошего не нашел.

Моя установка будет состоять из одной машины Debian, на которой будет запущен сервер балансировки нагрузки Apache (т.е. Apache с mod_proxy), а затем любое количество «подчиненных» машин, балансирующие члены. Все это VPS внутри машины VMWare, поэтому настройка новых ведомых устройств по мере необходимости будет тривиальной.

Файлы журнала Первый вопрос - это файлы журналов. Чтобы устранить неполадки на моей платформе, мне иногда нужно анализировать файлы журналов, как журналы доступа, так и журналы ошибок, из Apache. Когда нагрузка распределяется равномерно (т.е. я не знаю, буду ли я вообще использовать липкую балансировку, любой хост, вероятно, сможет обработать любой запрос в любое время), то же самое будут файлы журнала для каждого подчиненного экземпляра Apache. Есть ли способ объединить эти живые , что означает, что мой анализатор живого журнала может видеть файлы журналов со всех хостов?Я, конечно, понимаю, что сделать это, когда файлы находятся на нескольких хостах, будет сложно, поэтому есть ли способ убедиться, что все файлы журналов хранятся на одном сервере?

Я сам думаю о двух вещах, но я бы очень признателен за ваш вклад.

syslogd Первый - это syslogd, в котором несколько хостов могут писать на один хост, ведущий журнал. Проблема в том, что в моей текущей настройке каждый виртуальный хост в apache имеет свой собственный файл журнала. Хотя, вероятно, это можно было бы как-то исправить. В основном я использую это для устранения неполадок, а не для ведения отдельных журналов для каждого хоста (хотя, если бы обе цели могли быть достигнуты, это определенно было бы бонусом).

NFS Моя следующая мысль была о NFS, то есть о наличии общего ресурса NFS в локальной сети, где каждое ведомое устройство может писать в один и тот же файл журнала. Я собираюсь пойти дальше и предположить, что это будет сложно, поскольку ведомое устройство 1 откроет файл журнала, а затем ведомое устройство 2 не сможет писать в него.

Как я уже сказал, ваш вклад очень признателен, поскольку я чувствую, что я застрял в том, как решить эту проблему.

Файлы конфигурации Это совсем другое дело. Каждое ведомое устройство будет отвечать на каждый запрос, как если бы оно действовало как один сервер. В этом вся идея. Но как насчет внесения изменений в файлы конфигурации apache, добавления виртуальных хостов, настройки других параметров? Что, если у меня будет десять рабов или пятьдесят? Есть ли способ убедиться, что все эти ведомые устройства всегда синхронизированы? Я уже использую экспорт NFS, чтобы убедиться, что все они имеют одинаковые файлы, но следует ли использовать тот же подход с файлами конфигурации? Или мне следует использовать их в качестве репозитория, а затем использовать rsync, чтобы скопировать их на подчиненные устройства? Одна из проблем заключается в том, что я создал интерфейс на своей веб-платформе, который редактирует эти файлы конфигурации (а именно файл с виртуальными хостами), и, поскольку это действие будет выполняться на одном из ведомых устройств, самая последняя копия этого файла потенциально может быть на одном рабе.

Я понимаю, что это был длинный и полезный пост, и прошу прощения. Я просто хотел убедиться, что все параметры моей проблемы были выражены.

Я надеюсь, что кто-то там может мне помочь, как и вы раньше! Заранее спасибо!

9
задан Sandman 28 July 2011 в 08:55
поделиться