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

Управление DNS-серверами… что мне нужно знать

Я больше люблю stackoverflow.com, но наткнулся на кое-что интересное. Я разрабатываю приложение, которым будут управлять после его публикации (надеюсь, в начале следующего года) ...

Моей целью было иметь http://domain.com как сайт с брошюрами и http://client.domain.com/ как хост, на который входит клиент. Надежда состоит в том, что 1 клиент к 1 базе данных, а не все клиенты в одной базе данных. упрощает масштабирование на световые годы .. нужно масштабировать больше, добавить в ферму еще несколько серверов.

Судя по моему обширному исследованию, лучшие методы для этого - использование какого-то сервера имен для размещения «хостов», а затем установка окна iis, которое может читать заголовки и передавать их в приложение, которое может управлять подключениями к базе данных. , и т.д.

Мне было интересно ... Я знаю, что могу использовать WMI для программного управления серверами имен, если все основано на Windows, но это лучший метод? Неужели я столкнусь с множеством головных болей? Может ли кто-нибудь предложить достойную конфигурацию, которая поможет лучше справиться с этим? Я занимаюсь начальной загрузкой программного обеспечения, поэтому у меня ограниченные ресурсы, чтобы запустить его с нуля.

Спасибо.

Почему бы не использовать www.domain.com в качестве сайта с брошюрами, а вместо этого перейти на www.domain.com/client в качестве отдельных сайтов клиентов?

Когда вы начнете использовать SSL, это позволит избежать затрат на подстановочный сертификат и т. Д. И избавит вас от бизнеса DNS.

Выполнить простую настройку DNS действительно не очень сложно. Однако я бы поддержал предложение ErikA провести серьезное исследование (DNS & Bind от O'Reilly - всегда хорошее начало), прежде чем пытаться запустить его самостоятельно.

Я бы определенно сказал, что это стоит сделать, если вы:

  1. иметь надежное, отказоустойчивое присутствие в Интернете
  2. можете потратить разумное количество времени на изучение тонкостей выбранного вами DNS-решения

Лично я использовал привязку с несколькими представлениями около 8 лет и добился очень хороших результатов. Недавно я начал рассматривать PowerDNS с серверной частью mysql и poweradmin для управления, чтобы попытаться сократить кривую обучения моего резервного лица. После настройки он кажется очень быстрым и простым.

PowerDNS может использовать серверную часть базы данных для хранения информации о вашей зоне. В этом случае все, что вам нужно сделать, чтобы добавить поддомен, - это просто вставить строку в базу данных. Он поддерживает мириады баз данных. Излишне говорить, что выполнить вставку SQL чрезвычайно просто программно.

Но предупреждаю ... хостинг DNS не для слабонервных. Вам следует много читать, исследовать и тестировать свои серверы, прежде чем запускать их в производство. Таким образом, я бы очень Рекомендуем вам рассмотреть возможность использования для этого сторонней службы DNS. Многие из них имеют открытые API-интерфейсы, которые можно использовать для управления записями DNS для своей зоны. DNSmadeeasy и Dyndns На ум приходят два, которые разрешают доступ через API. Эти компании зарабатывают деньги на хостинге DNS. Они знают, что делают, и относительно дешевы. Зачем подвергать себя риску и потере времени при размещении DNS самостоятельно, если у вас есть возможность передать его на аутсорсинг?

Этот процесс называется «прозрачное перенаправление» или виртуальный хостинг. Это просто означает, что вы будете подключены к другому веб-сайту в зависимости от того, какой URL-адрес запрашивается в заголовке HTTP.

В Apache это тривиально. А можно в IIS посмотреть: http://www.simpledns.com/kb.aspx?kbid=1149

Для client.domain.com и client2.domain.com требуется 2 записи DNS, поэтому для каждого URL-адреса потребуется новая запись. Вам придется управлять ими для каждого клиента.

Другой способ сделать это - использовать вложенную папку, а не другой виртуальный хост. Это означало бы отсутствие дополнительных записей DNS. Настоящее преимущество.

например www.domain.com/client и www.domain.com/client2

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

Самый простой способ сделать это - просто использовать запись с подстановочными знаками, а затем заставить веб-сервер отсортировать запросы?

Настройте запись DNS для *.example.com, а затем с помощью IIS (я полагаю) привяжите свой сайт брошюры к example.com и www.example.com, а затем сопоставьте свои приложения одно за другим с другими сайтами (client1.example.com, client2.example.com) и т. д.

Таким образом, вы управляете только привязками IIS, а не DNS, и поскольку подстановочный знак является совпадением с самым низким рейтингом для записи DNS, если вам нужно создать запись A или CName для чего-то еще (скажем, support.example.com), подстановочный знак будет ранжироваться ниже этой записи.