Настройка ролей облачных служб Azure (расширенная поддержка) с помощью Visual Studio
Заметка
Эта статья относится к Azure облачным службам Azure (расширенная поддержка). Облачные службы (классическая версия) прекращены с 31 августа 2024 г. Дополнительные сведения см. в разделе Модель развертывания облачных служб (классическая) будет прекращена 31 августа 2024 г.. Для новой разработки мы рекомендуем использовать более современные службы, разработанные для ваших конкретных целей, такие как служба приложений Azure, Функции Azureили приложения контейнеров Azure. Последний список доступных служб см. в каталоге продуктов Azure.
Проект облачных служб Azure (расширенная поддержка) может иметь одну или несколько рабочих или веб-ролей. Для каждой роли необходимо определить, как настроена эта роль, а также настроить запуск этой роли.
Сведения для облачной службы хранятся в следующих файлах:
-
ServiceDefinition.csdef — файл определения службы определяет параметры времени выполнения для облачной службы, включая необходимые роли, конечные точки и размер виртуальной машины. Ни одни из данных, хранящихся в
ServiceDefinition.csdef
, не могут быть изменены, когда ваша роль выполняется. -
ServiceConfiguration.cscfg — файл конфигурации службы настраивает количество экземпляров роли и значения параметров, определенных для роли. Данные, хранящиеся в
ServiceConfiguration.cscfg
, можно изменить во время выполнения роли.
Чтобы сохранить различные значения параметров, которые управляют запуском роли, можно определить несколько конфигураций служб. Для каждой среды развертывания можно использовать другую конфигурацию службы. Например, можно задать строку подключения учетной записи хранения для использования локального эмулятора службы хранилища Azure в конфигурации локальной службы и создать другую конфигурацию службы для использования службы хранилища Azure в облаке.
При создании проекта облачных служб Azure (расширенная поддержка) в Visual Studio автоматически создаются две конфигурации служб и добавляются в проект Azure:
ServiceConfiguration.Cloud.cscfg
ServiceConfiguration.Local.cscfg
Необходимые условия
- Visual Studio (см. [скачивание Visual Studio] (https://visualstudio.microsoft.com/downloads/?cid=learn-onpage-download-cta)) с установленной рабочей нагрузкой разработки Azure и установленным и шаблонами проектов и элементов .NET Framework отдельных компонентов. См. изменить Visual Studio.
- Учетная запись Azure. Если у вас нет учетной записи Azure, активируйте преимущества Azure для подписчиков Visual Studio или зарегистрируйтесь для получения бесплатной пробной версии.
Настройка проекта облачных служб Azure (расширенная поддержка)
Проект облачных служб Azure (расширенная поддержка) можно настроить из обозревателя решений в Visual Studio, как показано на следующих шагах:
Создайте или откройте проект облачных служб Azure (расширенная поддержка) в Visual Studio.
В Проводнике решений, щелкните правой кнопкой мыши на проекте и в контекстном меню выберите пункт "Свойства".
На странице свойств проекта выберите вкладку Разработка.
страница свойств проекта
В списке конфигурации службы выберите имя конфигурации службы, которую требуется изменить.
Изменение количества экземпляров роли
Чтобы повысить производительность облачной службы, можно изменить количество экземпляров выполняемой роли на основе количества пользователей или нагрузки, ожидаемой для определенной роли. Отдельная виртуальная машина создается для каждого экземпляра роли при запуске облачной службы в Azure. Это влияет на выставление счетов для развертывания этой облачной службы. Для получения дополнительной информации о выставлении счетов см. раздел Понять ваш счет за Microsoft Azure.
Создайте или откройте проект облачных служб Azure (расширенная поддержка) в Visual Studio.
В обозревателе решенийразверните узел проекта. В узле ролей щелкните правой кнопкой мыши роль, которую нужно обновить, и в контекстном меню выберите пункт Свойства.
контекстное меню роли Azure
Выберите вкладку Конфигурация.
вкладка "Конфигурация
В списке конфигурации службы выберите конфигурацию службы, которую требуется обновить. (Если вы хотите внести изменения во все конфигурации службы для этой роли, выберите Все конфигурации.)
Важный
Если выбрать определенную конфигурацию службы, некоторые свойства отключены, так как их можно задать только для всех конфигураций. Чтобы изменить эти свойства, необходимо выбрать Все конфигурации.
список конфигураций службы
В текстовом поле "Число экземпляров" введите количество экземпляров, которые вы хотите запустить для этой роли. Каждый экземпляр выполняется на отдельной виртуальной машине, когда вы публикуете облачную службу в Azure.
На панели инструментов Visual Studio выберите Сохранить.
Управление строками подключения для учетных записей хранения
Вы можете добавлять, удалять или изменять строки подключения для конфигураций служб. Вы также можете настроить конфигурацию облачной службы, которая использует учетную запись хранения в Azure.
Предупреждение
При вводе сведений о ключе учетной записи хранения Azure для строки подключения учетной записи хранения эти сведения хранятся локально в файле конфигурации службы. Однако эти сведения в настоящее время не хранятся в виде зашифрованного текста.
Используя другое значение для каждой конфигурации службы, вам не нужно использовать разные строки подключения в облачной службе или изменить код при публикации облачной службы в Azure. Вы можете использовать то же имя для строки подключения в коде, а значение отличается в зависимости от конфигурации службы, выбранной при сборке облачной службы или при публикации.
Создайте или откройте проект облачных служб Azure (расширенная поддержка) в Visual Studio.
В обозревателе решенийразверните узел проекта. В узле ролей щелкните правой кнопкой мыши роль, которую нужно обновить, и в контекстном меню выберите пункт Свойства.
контекстное меню
Перейдите на вкладку "Параметры".
вкладка
В списке конфигурации службы выберите конфигурацию службы, которую требуется обновить.
Чтобы добавить строку подключения, выберите Добавить параметр.
После добавления нового параметра в список обновите строку в списке с необходимыми сведениями.
- Имя. Введите имя, которое вы хотите использовать для строки подключения.
- Тип — выберите Строку подключения из раскрывающегося списка.
- значение. Вы можете ввести строку подключения непосредственно в ячейку значение или выбрать многоточие (...), чтобы работать в диалоговом окне Создание строки подключения к хранилищу.
В диалоговом окне Создание строки подключения к хранилищу выберите параметр Connect с помощью. Затем выполните инструкции по выбранному варианту:
- эмулятор службы хранилища Microsoft Azure. Если выбрать этот параметр, остальные параметры в диалоговом окне отключены, так как они применяются только к Azure. Нажмите кнопку ОК.
- Ваша подписка. Если выбрать этот параметр, используйте раскрывающийся список, чтобы либо выбрать и войти в учетную запись Майкрософт, либо добавить новую учетную запись Майкрософт. Выберите подписку Azure и учетную запись хранения. Выберите ОК.
- введенные вручную учетные данные. Введите имя учетной записи хранения и первичный или второй ключ. Выберите параметр для подключения (для большинства сценариев рекомендуется использовать протокол HTTPS.) Выберите OK.
Чтобы удалить строку подключения, выберите строку подключения, а затем выберите Удалить параметр.
На панели инструментов Visual Studio выберите Сохранить.
Программный доступ к строке подключения
Ниже показано, как программно получить доступ к строке подключения с помощью C#.
Добавьте следующие директивы using в файл C#, где вы собираетесь использовать этот параметр:
using Microsoft.WindowsAzure; using Microsoft.WindowsAzure.Storage; using Microsoft.WindowsAzure.ServiceRuntime;
В следующем коде показано, как получить доступ к строке подключения. Замените заполнитель <ConnectionStringName> соответствующим значением.
// Setup the connection to Azure Storage var storageAccount = CloudStorageAccount.Parse(RoleEnvironment.GetConfigurationSettingValue("<ConnectionStringName>"));
Добавление пользовательских параметров для использования в проекте облачных служб Azure (расширенная поддержка)
Пользовательские параметры в файле конфигурации службы позволяют добавлять имя и значение строки для определенной конфигурации службы. Этот параметр можно использовать для настройки функции в облачной службе, считывая значение параметра и используя это значение для управления логикой в коде. Эти значения конфигурации службы можно изменить, не перестроив пакет службы или при запуске облачной службы. Код может проверить наличие уведомлений о том, когда изменяется параметр. Дополнительные сведения см. в статье RoleEnvironment.Changing Event.
Вы можете добавлять, удалять или изменять пользовательские параметры для конфигураций служб. Для этих строк могут потребоваться разные значения для разных конфигураций служб.
Используя другое значение для каждой конфигурации службы, вам не нужно использовать разные строки в облачной службе или изменять код при публикации облачной службы в Azure. Вы можете использовать то же имя строки в коде, а значение отличается в зависимости от конфигурации службы, выбранной при сборке облачной службы или при публикации.
Создайте или откройте проект облачных служб Azure (расширенная поддержка) в Visual Studio.
В обозревателе решенийразверните узел проекта. В узле Роли щелкните правой кнопкой мыши на роли, которую хотите обновить, и в контекстном меню выберите пункт Свойства.
Выберите вкладку "Параметры".
В списке конфигурации службы выберите конфигурацию службы, которую требуется обновить.
список конфигураций службы
Чтобы добавить настраиваемый параметр, выберите добавить параметр.
После добавления нового параметра в список обновите строку в списке с необходимыми сведениями.
- Имя — введите имя параметра.
- тип — выберите строку из раскрывающегося списка.
- значение. Введите значение параметра. Можно ввести значение непосредственно в ячейку значения или выбрать многоточие (...), чтобы ввести значение в диалоговом окне Редактирование строки.
Чтобы удалить настраиваемый параметр, выберите параметр, а затем выберите Удалить параметры.
На панели инструментов Visual Studio выберите Сохранить.
Программный доступ к значению настраиваемого параметра
Ниже показано, как программно получить доступ к пользовательскому параметру с помощью C#.
Добавьте следующие директивы using в файл C#, где вы собираетесь использовать этот параметр:
using Microsoft.WindowsAzure; using Microsoft.WindowsAzure.Storage; using Microsoft.WindowsAzure.ServiceRuntime;
В следующем коде показано, как получить доступ к пользовательскому параметру. Замените заполнитель <SettingName> соответствующим значением.
var settingValue = RoleEnvironment.GetConfigurationSettingValue("<SettingName>");
Управление локальным хранилищем для каждого экземпляра роли
Вы можете добавить локальное хранилище файловой системы для каждого экземпляра роли. Данные, хранящиеся в этом хранилище, недоступны другим экземплярам роли, для которой они хранятся, или другим ролям.
Создайте или откройте проект облачных служб Azure (расширенная поддержка) в Visual Studio.
В обозревателе решенийразверните узел проекта. В узле ролей щелкните правой кнопкой мыши роль, которую нужно обновить, и в контекстном меню выберите пункт Свойства.
контекстное меню
Выберите вкладку локального хранилища.
локальное хранилище
В списке конфигурации службы убедитесь, что выбраны Все конфигурации, так как параметры локального хранилища применяются ко всем конфигурациям службы. Любое другое значение приводит к отключению всех полей ввода на странице.
список конфигураций службы
Чтобы добавить запись локального хранилища, выберите Добавить локальное хранилище.
После добавления новой записи локального хранилища в список обновите строку в списке с необходимыми сведениями.
- имя. Введите имя, которое вы хотите использовать для нового локального хранилища.
- размер (МБ). Введите размер в МБ, необходимый для нового локального хранилища.
- Очистка при перезапуске роли - Выберите эту опцию, чтобы удалить данные из локального хранилища при переработке виртуальной машины для роли.
Чтобы удалить запись локального хранилища, выберите запись и выберите Удалить локальное хранилище.
На панели инструментов Visual Studio выберите Сохранить.
Программный доступ к локальному хранилищу
В этом разделе показано, как программно получить доступ к локальному хранилищу с помощью C# путем написания тестового текстового файла MyLocalStorageTest.txt
.
Запись текстового файла в локальное хранилище
В следующем коде показан пример записи текстового файла в локальное хранилище. Замените заполнитель <LocalStorageName> на соответствующее значение.
// Retrieve an object that points to the local storage resource
LocalResource localResource = RoleEnvironment.GetLocalResource("<LocalStorageName>");
//Define the file name and path
string[] paths = { localResource.RootPath, "MyLocalStorageTest.txt" };
String filePath = Path.Combine(paths);
using (FileStream writeStream = File.Create(filePath))
{
Byte[] textToWrite = new UTF8Encoding(true).GetBytes("Testing Web role storage");
writeStream.Write(textToWrite, 0, textToWrite.Length);
}
Поиск файла, записанного в локальное хранилище
Чтобы просмотреть файл, созданный кодом в предыдущем разделе, выполните следующие действия:
В области уведомлений Windows щелкните правой кнопкой мыши значок Azure и в контекстном меню выберите Показать пользовательский интерфейс эмулятора вычислений.
Выберите веб-роль.
В меню Эмулятор вычислений Microsoft Azure выберите Инструменты>Открыть локальное хранилище.
Когда откроется окно Проводника Windows, введите `MyLocalStorageTest.txt` в текстовое поле поиска и выберите Enter, чтобы начать поиск.
Связанное содержимое
Дополнительные сведения о проектах Azure в Visual Studio см. в разделе «Настройка проекта Azure». Дополнительные сведения о схеме облачной службы см. в справочнике по схеме.