![](https://habrastorage.org/storage2/2fb/97d/1bf/2fb97d1bf86b9d20fce3db5859a04a81.png)
По умолчанию для создаваемых сервисов, сайтов, хранилищ Windows Azure предлагает свои собственные имена и внутренний DNS, который резолвит имена второго уровня в пределах cloudapp.net, azurewebsites.net, blob.core.windows.net и т.п. Но вопрос собственного доменного имени возникает практически для любого серьезного облачного приложения или сервиса. Помимо вопроса престижа, иногда есть еще чисто технические причины, например, обход проблемы c кросс доменными скриптами.
Свой домен (Custom Domain Name) к сервисам Windows Azure можно привязать следующими способами:
- с помощью CNAME записи вашего домена;
- с помощью A записи.
В случае с CNAME вы застрахованы от проблем, связанных с изменением VIP (Public Virtual IP Address), который закреплен за сервисом, развернутым в Windows Azure, тк. мэппинг происходит на уровне алиасов: yourservice.cloudapp.net (Windows Azure) и
www.mydomain.ru
(CNAME — www), а не IP. Но здесь не возможна привязка к корневому домену, т.е. mydomain.com
(т.к. обязательно должен быть www или другой алиас). В случае c A записью возможна привязка к корневому домену, но появляется зависимость от VIP адреса службы, т.к. A запись мэппиться на определенный IP-адрес. А IP-адрес у службы может поменяться, например, при новом деплойменете или перезагрузки ОС. Можно, кстати, применять комбинированный подход, т.е. указывать CNAME и A записи. Подробнее об IP адресах в Windows Azure читайте в хабростатье Время жизни статических IP-адресов в Windows Azure.
Примечание. Еще можно воспользоваться сторонними сервисами, например, DNS Azure, которые делают примерно все то же самое, что будет описано ниже, но автоматически и прозрачно для клиента.
Статья содержит много картинок.
Далее описаны шаги для:
- Настройки домена для облачных служб (Cloud Service).
- Настройки домена для хранилища и CDN.
- Настройки домена для веб-сайтов (We Sites).
Настройка домена для облачных служб (Cloud Service)
Входные данные: доменное имя – natale2008.ru (зарегистрировано через nic.ru), хостинг DNS (у меня там же, nic.ru, поэтому все записи будем в его панели создавать).
1. Создаем приложение в Windows Azure: на .Net, PHP или другом поддерживаемом языке. У меня это — habr.cloudapp.net. По умолчанию обращения к приложению (habr.cloudapp.net) будут резолвиться через внутренний DNS Windows Azure.
![](https://habrastorage.org/storage2/653/86a/a58/65386aa58ee7f405977aea4932e0192e.png)
2. Заходим в панель редактирования DNS, для nic.ru – это Услуги -> Просмотр и изменение данных -> DNS-master. Замечу, что если у них приобретено только само доменное имя, то DNS-master по умолчанию не будет доступен, нужен еще и хостинг DNS. Для хостинга DNS у nic.ru можно приобрести услугу Primary-Standard.
Настройка услуги Primary-Standard: Заказать услугу -> DNS, Перенаправление, Мобилайзер -> Primary-Standard
![](https://habrastorage.org/storage2/c40/ef4/9ac/c40ef49acbaece74b7cfc4758b808f9c.png)
![](https://habrastorage.org/storage2/c72/8bf/f1b/c728bff1b666e4b65081491b98b28bb0.png)
Редактирование DNS: Услуги -> DNS-master
![](https://habrastorage.org/storage2/444/116/900/44411690020656ce92ac911b7e104ddc.png)
Добавляем новую запись с типом CNAME:
- Alias – www.natale2008.ru.
- Canonical name — habr.cloudapp.net.
![](https://habrastorage.org/storage2/196/ce1/b09/196ce1b0972278b3a58d040573832a7c.png)
Нажимаем сохранить, а потом еще раз “с сохранением” (это означает завершение работы DNS мастера и сохранение всех изменений, иначе ничего не сохранится).
![](https://habrastorage.org/storage2/836/a80/63c/836a8063c67d41355ad15aa081a9febc.png)
3. Ждем пока изменения вступят в силу.
4. Проверяем, выполнив навигацию на www.natale2008.ru (c www).
![](https://habrastorage.org/storage2/e18/2be/ae4/e182beae4722d213545fa2d92c9b44c1.png)
5. Аналогично можно создать A запись для VIP службы, тогда сможем заходить по natale2008.ru (без www). VIP можно получить из панели Windows Azure.
![](https://habrastorage.org/storage2/0e1/058/9b4/0e10589b4ab36696cf095ecf5706c7c7.png)
Настройка домена для хранилища и CDN
Процедура привязки домена (второго уровня) к хранилищу чуть длиннее, т.к. требуется предварительная валидация sub-домена. Входные данные: хранилище Windows Azure — habr, подомен — storage.natale2008.ru.
1. Заходим на старый портал Windows Azure: Hosted Services, Storage Accounts & CDN –> Storage Accounts, выбираем хранилище и нажимаем Add domain.
![](https://habrastorage.org/storage2/a54/ab3/785/a54ab37855967ca1ae83ae207b4c2022.png)
2. В поле Custom Domain Name вбиваем storage.natale2008.ru.
![](https://habrastorage.org/storage2/3c0/ced/176/3c0ced17616f4665531945c99d64d280.png)
3. Получаем ключ для верификации и копируем его.
![](https://habrastorage.org/storage2/5c2/ac1/3fd/5c2ac13fd6a989ad66aaececf4a6666c.png)
4. В DNS Master вносим соответствующие записи:
- Alias — 546a4b57-6082-40d8-b73c-afcfb3779367.storage.natale2008.ru.
- Canonical name — verify.azure.com.
![](https://habrastorage.org/storage2/085/75c/53a/08575c53a313fec5919ebe096248544d.png)
5. Ждем обновления (можно проверять через network-tools.com).
6. Заходим на старый портал Windows Azure: Hosted Services, Storage Accounts & CDN –> Storage Accounts, выбираем хранилище и нажимаем Validate Domain. Получаем сообщение об успешной валидации (статус в колонке Status с Pending изменится на Allowed).
7. В DNS Master вносим еще одну CNAME запись:
- Alias — storage.natale2008.ru.
- Canonical name – habr.blob.core.windows.net. (Custom Domain Name для BLOB хранилища)
![](https://habrastorage.org/storage2/219/087/ce5/219087ce5dc7e74ab1743a62d683cd50.png)
8. Выполняем проверку – storage.natale2008.ru/test/habralogo.jpg. Должна открыться страница с логотипом Хабра.
9. Для CDN настройка домена происходит аналогично настройке для хранилища.
Примечание.Так же иногда еще возникают вопросы про работу SSL в связке с Custom Domain Name. Для Cloud Services это поддерживается, для хранилища – пока, к сожалению, нет (хотя SSL без Custom Domain Name для хранилища работает).
Настройка домена для веб-сайтов (We Sites)
На данный момент для привязки домена возможна только для Reserved режима, для Shared-режима такой возможности в течение Windows Azure Preview пока нет.
1. Первое, что необходимо сделать — это переключиться в Reserved режим. Эта настройка находится в Web Sites -> <ваш сайт> -> Scale.
![](https://habrastorage.org/storage2/abc/41c/9b4/abc41c9b427f6313e0664b19b9faa05d.png)
Не забудьте поставить галочку и сохранить внесенные изменения.
2. Далее настроить CNAME, указанным выше (Настройка домена для облачных служб (Cloud Service)). Если www не занят, то привязываем www.
![](https://habrastorage.org/storage2/452/235/e05/452235e0589dcf3470b1ecbebbe1df40.png)
3. Настроить созданный CNAME на портале Windows Azure. Эта настройка находится в Web Sites -> <ваш сайт> -> Configure.
![](https://habrastorage.org/storage2/61b/862/477/61b8624778e0ccc34d18e9b63e536ef6.png)
Примерно так все и настраивается.