Создание и развертывание модели службы роли виртуальной машины

Обновлено: Апрель 2011 г.

[Поддержка функции «Роль виртуальной машины» в Windows Azure прекращается 15 мая 2013 г. После этой даты развертывания этой роли будут удалены. Для продолжения работы с существующими приложениями можно использовать виртуальные машины Windows Azure. Дополнительные сведения об использовании виртуальных машин для приложения см. на веб-странице Moving from VM Role to Windows Azure Virtual Machines (Переход от использования функции «Роль виртуальной машины» к использованию виртуальных машин Windows Azure).

Для включения в облачную службу Windows Azure роли ВМ, так же как и другим ролям, требуется определение и файлы конфигурации службы. Для создания экземпляров роли ВМ необходимо развернуть в Windows Azure пакет модели службы. Дополнительные сведения о создании файлов модели службы см. в разделе Облачные службы (размещенные службы).

Дополнительные сведения об элементах, используемых в файле определения службы для роли ВМ, см. в VirtualMachineRole Schema. Дополнительные сведения об элементах, используемых в файле конфигурации службы для роли ВМ, см. в Service Configuration Schema.

Перед выполнением данной задачи нужно загрузить виртуальный диск, как описано в Загрузка виртуального жесткого диска в Windows Azure.

Для создания файлов модели службы можно использовать любой подходящий текстовый редактор. Выполните следующие шаги, чтобы создать файл ServiceDefinition.csdef.

  1. Откройте текстовый редактор, например Блокнот.

  2. Файл CSDEF должен иметь элемент ServiceDefinition. В следующем примере кода показано определение данного элемента.

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
    </ServiceDefinition>
    
    
  3. Необходимо добавить элемент VirtualMachineRole к элементу ServiceDefinition. В следующем примере показано добавление элемента VirtualMachineRole:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
       <VirtualMachineRole name="MyVMRole" vmsize="Small">
       </VirtualMachineRole>
    </ServiceDefinition>
    
    

    Где name — имя роли виртуальной машины, которая отображается на портале управления, и vmsize — размер, который Windows Azure назначает для экземпляров ролей виртуальной машины. Атрибут vmsize не является обязательным; если не указать размер, то используется значение по умолчанию «Малый». При указании атрибута vmsize следует убедиться, что размер соответствует значению, выбранному для виртуального жесткого диска. В следующей таблице перечислены разрешенные в Windows Azure размеры виртуальных жестких дисков.

    ImportantВажно!
    Для динамических дисков в таблице указаны максимальные размеры, до которых может вырасти этот диск, если потребуется дополнительное пространство.

     

    Размер ВМ Windows Azure Максимальный размер подключаемого виртуального жесткого диска

    Минимальный

    15 ГБ

    Малый

    35 ГБ

    Средний, большой или максимальный

    65 ГБ

  4. (Необязательно) Импортируйте модули для диагностики, удаленного подключения к рабочему столу или модуль Windows Azure Connect. В следующем примере показано добавление элемента Imports с элементами Import:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
       <VirtualMachineRole name="MyVMRole" vmsize="Small">
       <Imports>
          <Import moduleName="Diagnostics" />
          <Import moduleName="RemoteAccess" />
          <Import moduleName="RemoteForwarder" />
          <Import moduleName="Connect" />
       </Imports>
       </VirtualMachineRole>
    </ServiceDefinition>
    
    

    Для получения дополнительных сведений об использовании данных модулей см.

  5. Добавьте конечные точки, необходимые для вашего приложения. В следующем примере показано добавление элемента Endpoints с заданным InputEndpoint для HTTP-протокола и портом номер 8080.

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
       <VirtualMachineRole name="MyVMRole" vmsize="Small">
          <Imports>
             <Import moduleName="Diagnostics" />
             <Import moduleName="RemoteAccess" />
             <Import moduleName="RemoteForwarder" />
             <Import moduleName="Connect" />
          </Imports>
          <Endpoints>
             <InputEndpoint name="Endpoint1" protocol="http" port="8080" localPort="8080" />
          </Endpoints>
       </VirtualMachineRole>
    </ServiceDefinition>
    
  6. Сохраните файл в корневой папке приложения как ServiceDefinition.csdef.

  1. Откройте текстовый редактор, например Блокнот.

  2. Файл CSCFG должен иметь элемент ServiceConfiguration. В следующем примере кода показано определение данного элемента.

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
    </ServiceConfiguration>
    
  3. Необходимо добавить элемент Role к элементу ServiceConfiguration. В следующем примере показано добавление элемента Role:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
       </Role>
    </ServiceConfiguration>
    
    ImportantВажно!
    Значения для атрибута name должно соответствовать имени, которое было определено для элемента VirtualMachineRole, прописанного в файле определения службы.

  4. Задайте количество экземпляров, необходимых для роли ВМ. В следующем примере показано добавление элемента Instances:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="2" />
       </Role>
    </ServiceConfiguration>
    

    Необходимо задать значение не меньше 2, чтобы обеспечить доступность приложения.

  5. Укажите файл виртуального жесткого диска, который следует использовать для инициализации экземпляров роли виртуальной машины. Это может быть основной виртуальный жесткий диск или разностный. В следующем примере показано добавление элемента OsImage:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="2" />
          <OsImage href="base.vhd" />
       </Role>
    </ServiceConfiguration>
    

    Дополнительные сведения о создании основного виртуального жесткого диска см. в разделе Создание образа сервера для роли виртуальной машины в Windows Azure. Дополнительные сведения об использовании разностного виртуального жесткого диска см. в разделе Смена образа сервера для роли виртуальной машины в Windows Azure.

  6. (Необязательно) Если в файл определения службы был добавлен модуль диагностики, необходимо определить параметры настройки для этого модуля. В следующем примере показаны параметры настройки для модуля диагностики:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="2" />
          <OsImage href="base.vhd" />
          <ConfigurationSettings>
             <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"
                value="DefaultEndpointsProtocol=https;AccountName=AccountName;AccountKey=AccountKey" />
          </ConfigurationSettings>
       </Role>
    </ServiceConfiguration>
    
  7. (Необязательно) Если добавлены модули RemoteAccess и RemoteForwarder, необходимо определить параметры настройки для этих модулей. В следующем примере показаны параметры настройки для модулей RemoteAccess и RemoteForwarder:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="2" />
          <OsImage href="base.vhd" />
          <ConfigurationSettings>
             <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"
                value="DefaultEndpointsProtocol=https;AccountName=AccountName;AccountKey=AccountKey" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" 
                value="UserAccountName" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" 
                value="EncryptedPassword" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" 
                value="ExpirationDate" /> 
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
          </ConfigurationSettings>
       </Role>
    </ServiceConfiguration>
    

    AccountUserName — это имя учетной записи пользователя, которая формируется при создании экземпляра роли виртуальной машины. AccountEncryptedPassword — зашифрованный пароль для создаваемой учетной записи пользователя. AccountExpiration — дата истечения срока действия учетной записи пользователя. Дополнительные сведения о настройке подключения к удаленному рабочему столу см. в разделе Настройка удаленного подключения к рабочему столу для роли в Windows Azure.

  8. (Необязательно) Если был добавлен модуль Connect, необходимо задать его параметры настройки. В следующем примере показаны параметры настройки для модуля Connect:

    
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="2" />
          <OsImage href="base.vhd" />
          <ConfigurationSettings>
             <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"
                value="DefaultEndpointsProtocol=https;AccountName=AccountName;AccountKey=AccountKey" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" 
                value="UserAccountName" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" 
                value="EncryptedPassword" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" 
                value="ExpirationDate" /> 
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.ActivationToken" 
                value="ActivationToken"/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Refresh" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Diagnostics" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.WaitForConnectivity" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.EnableDomainJoin" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainFQDN" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainControllerFQDN" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainAccountName" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainPassword" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainOU" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DNSServers" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Administrators" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainSiteName" value=""/>
          </ConfigurationSettings>
       </Role>
    </ServiceConfiguration>
    

    ActivationToken — токен, который получен с портала управления. Остальные обязательные и необязательные параметры используются для присоединения экземпляров роли к домену. Дополнительные сведения о настройке роли виртуальной машины для работы с Windows Azure Connect см. в разделе Включение Windows Azure Connect для роли виртуальной машины.

  9. Добавьте сведения о конфигурации сертификатов, которые используются облачной службой. В следующем примере показано добавление сертификата для удаленного доступа:

    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="2" />
          <OsImage href="base.vhd" />
          <ConfigurationSettings>
             <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString"
                value="DefaultEndpointsProtocol=https;AccountName=AccountName;AccountKey=AccountKey" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" 
                value="UserAccountName" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" 
                value="EncryptedPassword" />
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" 
                value="ExpirationDate" /> 
             <Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.ActivationToken" 
                value="ActivationToken"/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Refresh" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Diagnostics" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.WaitForConnectivity" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.EnableDomainJoin" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainFQDN" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainControllerFQDN" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainAccountName" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainPassword" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainOU" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DNSServers" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Administrators" value=""/>
             <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainSiteName" value=""/>
          </ConfigurationSettings>
          <Certificates>
             <Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption" 
                thumbprint="CertificateThumbprint" thumbprintAlgorithm="sha1" />
          </Certificates>
       </Role>
       
    
    </ServiceConfiguration>
    

    Дополнительные сведения о создании и использовании сертификатов с ролью виртуальной машины см. в разделе Использование сертификатов с ролью виртуальной машины в Windows Azure.

  10. Сохраните файл в корневой папке приложения как ServiceConfiguration.cscfg.

noteПримечание
Для выполнения действий этого раздела нужно установить инструменты Windows Azure для Visual Studio 2010. Загрузить инструменты можно со страницы Загрузки для Windows Azure.

  1. Откройте Visual Studio 2010 от имени администратора.

  2. Создайте новый проект с помощью шаблона проекта Windows Azure.

  3. Введите имя проекта и следуйте шагам мастера, не выбирая шаблон роли. Таким образом, будет создан проект, содержащий только файл определения службы и файл конфигурации службы.

  4. Чтобы добавить элементы роли, щелкните правой кнопкой мыши Роли, выберите Добавить и нажмите кнопку Добавить новую роль виртуальной машины.

  5. Нужно ввести учетные данные, используемые для роли ВМ. Это отпечаток сертификата и идентификатор подписки. Эти сведения можно найти на панели свойств портала управления.

  6. После ввода учетных данных выберите загруженный ранее основной виртуальный жесткий диск.

    На этот момент определение службы содержит следующие сведения о роли виртуальной машины:

    <?xml version="1.0" encoding="utf-8"?>
    <ServiceDefinition name="MyServiceName"
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
       <VirtualMachineRole name="VMRole1" />
    </ServiceDefinition>
    
    

    Конфигурация службы содержит следующие сведения:

      
    <?xml version="1.0" encoding="utf-8"?>
    <ServiceConfiguration serviceName="MyServiceName" 
       xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
       <Role name="MyVMRole">
          <Instances count="1" />
       </Role>
    </ServiceConfiguration>
    
    
  7. Убедитесь, что количество экземпляров не меньше 2 и что выбран соответствующий размер виртуальной машины. Для этого выполните следующее действие.

    1. В обозревателе решений щелкните роль правой кнопкой мыши и выберите пункт Свойства.

    2. На странице Конфигурация измените Число экземпляров на 2 и выберите Размер виртуальной машины. В следующей таблице перечислены разрешенные в Windows Azure размеры виртуальных жестких дисков.

      ImportantВажно!
      Для динамических дисков в таблице указаны максимальные размеры, до которых может вырасти этот диск, если потребуется дополнительное пространство.

       

      Размер ВМ Windows Azure Максимальный размер подключаемого виртуального жесткого диска

      Минимальный

      15 ГБ

      Малый

      35 ГБ

      Средний, большой или максимальный

      65 ГБ

  8. (Необязательно) Включите диагностику. Можно собирать диагностические данные, касающиеся выполнения экземпляров ролей.

    1. В обозревателе решений щелкните роль правой кнопкой мыши и выберите пункт Свойства.

    2. На странице Конфигурация установите флаг Включить диагностику.

      Если включен сбор диагностических данных, необходимо указать учетные данные для записи хранилища. По умолчанию используется запись локального хранилища, но при развертывании в Windows Azure необходимо определить параметры для учетной записи хранилища Windows Azure.

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

  10. (Необязательно) Включите Windows Azure Connect для экземпляров ролей.

    • В обозревателе решений щелкните роль правой кнопкой мыши и выберите пункт Свойства.

    • На странице свойств выберите вкладку Виртуальная сеть.

    • Установите флаг Активировать Windows Azure Connect и затем вставьте в текстовое поле токен активации.

      Следующую строку следует добавить в файл определения службы, чтобы импортировать модуль подключения:

      <Import moduleName="Connect" />
      
      В файл конфигурации службы также добавляются следующие сведения:

      
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.ActivationToken" value="ActivationToken"/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Refresh" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Diagnostics" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.WaitForConnectivity" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.EnableDomainJoin" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainFQDN" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainControllerFQDN" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainAccountName" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainPassword" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainOU" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DNSServers" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.Administrators" value=""/>
      <Setting name="Microsoft.WindowsAzure.Plugins.Connect.DomainSiteName" value=""/>
      
      Единственное значение параметра, которое необходимо для соединения и которое не объединяется с доменом, — это ActivationToken (токен активации). Если планируется присоединить экземпляр роли к домену, необходимо предоставить обязательные и необязательные значения для остальных параметров.

  11. (Необязательно) Настройка подключения к удаленному рабочему столу во время публикации пакета. Щелкните проект правой кнопкой мыши, выберите Опубликовать и нажмите кнопку Настройка подключений к удаленному рабочему столу.

    1. Установите флаг Включить соединения для всех ролей.

    2. Выберите сертификат, добавленный к облачной службе.

    3. Введите имя и пароль учетной записи, используемой для удаленного рабочего стола.

      Определение службы будет выглядеть следующим образом:

      
      <ServiceDefinition name="MyVMRole" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceDefinition">
         <VirtualMachineRole name="VMRole1" vmsize="Medium">
            <Imports>
               <Import moduleName="Diagnostics" />
               <Import moduleName="RemoteAccess" />
               <Import moduleName="RemoteForwarder" />
            </Imports>
            <Endpoints>
               <InputEndpoint name="Endpoint1" protocol="http" port="80" />
            </Endpoints>
         </VirtualMachineRole>
      </ServiceDefinition>
      
      
      Конфигурация службы будет выглядеть следующим образом:

      
      <ServiceConfiguration serviceName="MyVMRole" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration">
         <Role name="VMRole1">
            <Instances count="2" />
            <OsImage href="base.vhd" />
            <ConfigurationSettings>
               <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" 
                        value=" DefaultEndpointsProtocol=https;AccountName=AccountName;AccountNumber=AcountNumber" />
               <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.Enabled" value="true" />
               <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountUsername" 
                        value="AccountName" />
               <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountEncryptedPassword" 
                        value="EncryptedPassword" />
               <Setting name="Microsoft.WindowsAzure.Plugins.RemoteAccess.AccountExpiration" 
                        value="ExpirationDate" />
               <Setting name="Microsoft.WindowsAzure.Plugins.RemoteForwarder.Enabled" value="true" />
            </ConfigurationSettings>
            <Certificates>
               <Certificate name="Microsoft.WindowsAzure.Plugins.RemoteAccess.PasswordEncryption" 
                            thumbprint="CertThumbprint" thumbprintAlgorithm="sha1" />
            </Certificates>
         </Role>
      </ServiceConfiguration>
      
      
      noteПримечание
      При развертывании пакета в Windows Azure с включенной диагностикой, необходимо убедиться, что для строки подключения диагностики используются допустимые учетные данные записи хранилища Windows.

  12. Нажмите кнопку ОК. На портале управления отобразится запуск экземпляров роли ВМ и состояние примет значение Ready.

Для упаковки модели службы приложения роли ВМ можно использовать средство командной строки CSPack. Затем можно развернуть пакет с помощью портала управления. Для упаковки и развертывания приложения можно также использовать Visual Studio 2010. Перед выполнением действий данного раздела необходимо убедиться, что в Windows Azure были созданы облачная служба и учетная запись хранения.

Чтобы развернуть приложение, которое содержит роль ВМ в Windows Azure, необходимо вначале отправить виртуальный жесткий диск, затем нужно упаковать и развернуть модель службы, которая состоит из файла определения службы и файла конфигурации. Для упаковки файлов модели службы используется Средство командной строки CSPack. После создания пакета модели службы его следует развернуть с помощью портала управления платформой Windows Azure.

  1. Нажмите кнопку Пуск, выберите пункт Все программы, затем пакет Windows Azure SDK.

  2. Щелкните правой кнопкой мыши Командная строка пакета Windows Azure SDK и выберите Запустить с правами администратора.

  3. В окне командной строки пакета Windows Azure SDK перейдите в каталог, в котором находятся файлы приложения.

  4. Введите следующую команду:

    cspack ServiceDefinition.csdef
    

    ServiceDefinition — имя файла ServiceDefinition.csdef.

  1. Откройте портал управления.

  2. Создайте новую облачную службу, если она еще не создана.

  3. Разверните приложение в промежуточную или рабочую среду развертывания. Выберите облачную службу на центральной панели, затем щелкните Новое промежуточное развертывание или Новое рабочее развертывание.

  4. На странице Создание нового развертывание введите имя нового развертывания, выберите созданный ранее файл пакета, выберите файл конфигурации модели службы и нажмите кнопку ОК.

Чтобы развернуть приложение, которое содержит роль ВМ в Windows Azure, необходимо вначале отправить виртуальный жесткий диск, затем нужно упаковать и развернуть модель службы, которая состоит из файла определения службы и файла конфигурации. Опубликовать модель службы можно из Visual Studio 2010.

  1. Запустите Visual Studio 2010 с правами администратора, а затем откройте ранее созданный проект Windows Azure.

  2. В обозревателе решений щелкните правой кнопкой мыши проект роли ВМ и выберите команду Опубликовать.

  3. Чтобы добавить новые учетные данные, в диалоговом окне Развертывание проекта Windows Azure щелкните поле Учетные данные и выберите <Add...>. В диалоговом окне Проверка подлинности для управления проектами Windows Azure:

    1. Выберите сертификат управления, созданный ранее и добавленный в Windows Azure.

    2. Введите идентификатор подписки. Можно скопировать это значение из панели Свойства портала управления.

    3. Введите имя, которое будет использоваться для идентификации этих учетных данных, а затем нажмите кнопку ОК.

  4. После того как учетные данные будут проверены в Windows Azure, выберите Среда для развертывания.

  5. Выберите учетную запись хранения для развертывания.

  6. Введите имя для идентификации развертывания на портале управления.

  7. Нажмите кнопку ОК.

См. также

Добавления сообщества

Показ: