Опубликован: 28.01.2014 | Доступ: свободный | Студентов: 2255 / 259 | Длительность: 14:33:00
Самостоятельная работа 5:

Развертывание виртуальной машины из образа

< Лекция 11 || Самостоятельная работа 5: 12345 || Лекция 12 >

Лабораторная работа №6: развертывание SQL Server

В этой лабораторной работе вы развернете простое веб-приложение ASP.NET MVC 4 на веб-сервер, расположенный в Windows Azure, с использованием SQL Server и балансировщика нагрузки, а также познакомитесь с командлетами PowerShell, которые можно использовать для целей автоматизации этих процессов.

Разверните виртуальную машину и настройте балансировку нагрузки, а также разместите в облаке MVC4 приложение. Для этого создайте две новых виртуальных машины из образа Windows Server 2008 R2 SP1 с именами iisvm1 и iisvm2. При создании второй виртуальной машины укажите опцию Connect to existing Virtual Machine и укажите созданную первой машину. Так вы добавите новую виртуальную машину в Cloud Services, созданный для предыдущей виртуальной машины, что позволит этим машинам иметь прямой канал коммуникаций. После создания второй виртуальной машины создайте точку входа на 80 порту: нажмите на имени виртуальной машины iisvm1 и на Dashboard нажмите Endpoints. Выберите Add Endpoint. На Specify endpoint details укажите значение Name как webport, Protocol как TCP и Public Port с Private Port как 80. Нажмите ОК. Запустите процесс создания новой точки входа для второй виртуальной машины для реализации балансировки нагрузки. Выберите Add Endpoint, выберите Load Balance Traffic On An Existing Endpoint. Укажите созданную ранее точку входа и нажмите ОК. На New Endpoint Details укажите значение Name как webport и Private Port как 80. Нажмите на кнопку для создания точки входа. В Virtual Machines перейдите на Dashboard первой виртуальной машины (iisvm1) и нажмите Endpoints. Выберите webport. Убедитесь что значение Load Balancer равно Yes.

Настройте IIS на обеих виртуальных машинах. Для этого подключитесь к первой из них и откройте Start | All Programs | Administrative Tools | Server Manager. Выберите Roles. Нажмите Add Roles. На Select Server Roles выберите Application Server и Web Server (IIS). Нажмите Add Required Features для установки необходимой функциональности и нажмите Next. На Select Role Services выберите для Application Server опцию Web Server (IIS) Support и убедитесь, что отмечен .NET Framework 3.5.1. Нажмите Add Required Role Services для установки необходимой функциональности и нажмите Next. На Confirm Installation Selections нажмите Install.

Настройте таким же образом вторую виртуальную машину.

Создайте новую виртуальную машину и установите SQL Server, после чего добавьте образа дисков к существующей виртуальной машине для того, чтобы разделить данные из логов, генерируемых SQL Server. Для этого создайте новую виртуальную машину из образа SQL Server 2012 с именем sqlvm1 и опцией Connect to existing Virtual Machine, указав первую виртуальную машину.

Подключите два пустых диска с данными по 50 ГБ и инициализируйте их, подключившись к виртуальной машине. Назовите первый диск SQLData, второй – SQLLogs.

Настройте SQL Server 2012.

Для этого сначала создайте директории F:\Data, G:\Logs и G:\Backups.

Откройте Start | All Programs | Microsoft SQL Server 2012 | SQL Server Management Studio. С учетной записью Windows подключите экземпляр SQL Server 2012 по умолчанию.

Теперь необходимо обновить места хранения базы данных по умолчанию так, чтобы DATA и LOGS были разделены. Для этого нажмите правой кнопкой мыши на экземпляр SQL Server правой кнопкой мыши и нажмите Properties. На левой панели выберите Database Settings. Перейдите к разделу Database default locations и обновите значения по умолчанию, указав диски, которые вы подключили ранее.

Нажмите правой кнопкой мыши на экземпляре SQL Server и нажмите Restart.

Откройте Start | All Programs | Administrative Tools | Server Manager. В Server Manager нажмите Configure IE ESC в секции Security Information. В Internet explorer Enhanced Security выберите off для Administrators и нажмите OK.

В данной лабораторной работе используется база данных AdventureWorks2012DW. Загрузите ее с сайта http://msftdbprodsamples.codeplex.com/.

Нажмите правой кнопкой мыши на файл базы данных правой кнопкой мыши и откройте свойства. Нажмите unblock.

Добавьте образец базы данных AdventureWorks на ваш SQL Server. Для этого откройте SQL Server Management Studio, подключитесь к (local) с учетной записью Windows. Найдите ваш экземпляр сервера SQL Server и разверните его.

Нажмите правой кнопкой мыши на директории Databases и выберите Attach. В сведениях базы данных (database details) выберите строку AdventureWorks Log и нажмите Remove. Нажмите OK, чтобы присоединить базу данных.

Создайте полнотекстовый каталог для базы данных. Для этого разверните Storage в базе данных AdventureWorks. Правой кнопкой мыши нажмите кнопку Full Text Catalogs и выберите New Full-Text Catalog.

В диалоговом окне New Full-Text Catalog в пункте Name задайте значение AdventureWorksCatalog и нажмите OK.

Правой кнопкой мыши нажмите на AdventureWorksCatalog и выберите Properties. Выберите пункт меню Tables/Views. Добавьте таблицу Production.Product в список Table/View objects assigned to the Catalog. Отметьте пункт Name в eligible columns и щелкните OK.

Для добавления пользователя для MVC4 приложения, откройте Security вашего экземпляра SQL Server. Нажмите правой кнопкой мыши на Logins и нажмите New Login.

В разделе General в пункте Login name введите AzureStore. Выберите опцию SQL Server authentication и в поле Password введите Azure$123.

Снимите флажок в пункте Enforce password policy, чтобы не пришлось изменять пароль пользователя при первом входе, для параметра Default database укажите AdventureWorks.

Перейдите в раздел User Mapping. Сопоставьте пользователя с базой данных AdventureWorks и щелкните OK.

Разверните базу данных AdventureWorks внутри папки Databases. В папке Security разверните пункт Users и дважды нажмите на пользователе AzureStore.

Выберите страницу Membership и отметьте роль db_owner для пользователя AzureStore, затем нажмите OK.

Включите Mixed Mode Authentication для экземпляра SQL Server. Для этого в SQL Server Management Studio нажмите экземпляр сервера правой кнопкой мыши и выберите Properties.

На правой панели выберите страницу Security, а затем выберите SQL Server and Windows Authentication mode в разделе Server Authentication. Нажмите OK.

Перезапустите экземпляр SQL Server. Для этого нажмите экземпляр SQL Server правой кнопкой мыши и нажмите Restart.

Чтобы разрешить приложению MVC4 доступ к базе данных SQL Server, в Windows Firewall необходимо добавить Inbound Rule для запросов SQL Server. Для этого откройте Windows Firewall with Advance Security в Start | All Programs | Administrative Tools.

Выберите пункт Inbound Rules, нажмите на нем правой кнопкой мыши и выберите New Rule. В New Inbound Rule Wizard выберите Port в качестве Rule Type.

На Protocols and Ports выберите Specific local ports и введите значение "1433". Нажмите Next.

На шаге Action убедитесь, что выбрана опция Allow the connection и нажмите Next.

На Profile оставьте значения по умолчанию и нажмите Next.

Укажите значение Name правила для входящего подключения SQLServerRule и нажмите Finish.

Настройка SQL Server 2012 закончена.

Разверните ASP.NET MVC 4 приложение в IIS на виртуальной машине в Windows Azure. Для этого подключитесь к виртуальной машине iisvm1. Войдя в систему, загрузите и установите .NET Framework 4.0 по ссылке http://go.microsoft.com/fwlink/?linkid=186916|.

Распакуйте AzureStore.zip в Source\Assets\AzureStore.

Откройте файл Web.config в папке AzureStore в Source\Assets в папке этой лабораторной. В конце файла замените код со строкой подключения на следующий код, заменив соответствующее поле имени SQL Server на имя вашего SQL Server.

<connectionStrings>
    <add name="AdventureWorksEntities" connectionString="metadata=res://*/Models.AdventureWorks.csdl|res://*/
Models.AdventureWorks.ssdl|res://*/Models.AdventureWorks.msl;
provider=System.Data.SqlClient;provider connection string=&quot;data source=
[ENTER YOUR SQL SERVER NAME];initial catalog=AdventureWorks2012;Uid=AzureStore;Password=Azure$123;multipleactiveresultsets=True;
App=EntityFramework&quot;" providerName="System.Data.EntityClient" />
    <add name="DefaultConnection" connectionString=
"Data Source=[ENTER YOUR SQL SERVER NAME];initial catalog=AdventureWorks2012;Uid=AzureStore;Password=Azure$123;
MultipleActiveResultSets=True" providerName="System.Data.SqlClient" />
</connectionStrings>

Вернитесь в виртуальную машину и перейдите в директорию C:\inetpub\wwwroot, после чего скопируйте в эту директорию MVC4 приложение из директории Source\Assets\AzureStore.

Откройте Start | All Programs | Administrative Tools | Internet Information Services (IIS) Manager.

В панели Connections разверните Default Web Site. Вы должны увидеть скопированную папку AzureStore.

Нажмите правой кнопкой мыши на папке AzureStore и нажмите Convert to Application.

Выберите Application Pools и нажмите два раза на DefaultAppPool.

В Edit Application Pool измените версию .Net Framework на v4.0 и нажмите OK.

Повторите последовательность действий для второй виртуальной машины, созданной в первом упражнении (iisvm2).

Проверьте работоспособность развернутого MVC4 приложения.

Перейдите на http://[YOUR-SERVICE-NAME].cloudapp.net/AzureStore. Service Name - имя, созданное при создании виртуальных машин с IIS.

Развертывание MVC-приложения

увеличить изображение
Рис. 16.11. Развертывание MVC-приложения

В Search введите Classic и нажмите Search. После этого действия должен появиться список продуктов, чье имя удовлетворяет заданному критерию поиска.

Поиск в MVC-приложении

увеличить изображение
Рис. 16.12. Поиск в MVC-приложении
< Лекция 11 || Самостоятельная работа 5: 12345 || Лекция 12 >
Руслан Муравьев
Руслан Муравьев

Сайт dreamspark пишет что код истек :(

Andriy Zymenko
Andriy Zymenko

Этот курс требует оновления https://portal.azure.com/#create/hub здесь нет пункта Web Site в разделе Compute. К тому же для создание трубуется подписка