Балансировка нагрузки Web серверов

Балансировка(или выравнивание) нагрузки между двумя Web серверами при помощи DNS (1794 – DNS Support for Load Balancing).

Предположим,,что есть два Web сервера, www1.yourdomain.com (192.168.1.10) и www2.yourdomain.com (192.168.1.20), причем необходимо распределить на грузку для www.yourdomain.com на эти два сервера с помощью циклической DNS. В файл зоны yourdomain.com добавьте строки:

wwwl IN A 192.168.1.10
www2 IN A 192.168.1.20
www IN CNAME www1
www IN CNAME www2

Перезапустите сервер имен и проверьте по ping хост www.yourdomain.com. В выходных данных ping появится адрес 192.168.1.10. Остановите и возобновите ping этого же хоста, и теперь ping покажет второй IP адрес. Это связано с тем фактом, что предыдущая конфигурация заставляет сервер имен циклически проходить по записям CNAME для www. Другими словами, хост www.yourdomain. com является одновременно wwwl.yourdomain.com и www2.yourdomain.com.

Теперь, когда кто-то входит на www.yourdomain. com, сервер имен будет сначала выдавать первый адрес, но следующий запрос будет предоставлять второй адрес и продолжать циклическое повторение этих адресов.

Одним из недостатков этого подхода с циклической DNS является то, что сервер имен не может узнать, какая система перегружена, а какая нет; он вслепую выполняет работу в цикле. Если один из серверов отказывает или становится недоступным по какой то причине, циклическая DNS будет по прежнему регулярно возвращать IP адрес отказавшего сервера. Это внесет большой беспорядок, так как некоторые пользователи смогут получить доступ к серверу, а некоторые — нет.