Поделиться через


Развертывание Azure Cloud Shell в виртуальной сети с помощью шаблонов быстрого запуска

Перед запуском шаблонов быстрого запуска для развертывания Azure Cloud Shell в виртуальной сети (виртуальная сеть) необходимо выполнить несколько предварительных требований. В подписке должна быть назначена роль владельца . Сведения о просмотре и назначении ролей см. в разделе "Список владельцев подписки".

В этой статье описаны следующие действия по настройке и развертыванию Cloud Shell в виртуальной сети.

  1. Зарегистрируйте поставщиков ресурсов.
  2. Соберите необходимые сведения.
  3. Создайте виртуальные сети с помощью шаблона Azure Cloud Shell — виртуальной сети Azure Resource Manager (шаблон ARM).
  4. Создайте учетную запись хранения виртуальной сети с помощью шаблона ARM хранилища виртуальной сети Azure Cloud Shell.
  5. Настройте и используйте Cloud Shell в виртуальной сети.

1. Регистрация поставщиков ресурсов

Cloud Shell требует доступа к определенным ресурсам Azure. Этот доступ предоставляется через поставщиков ресурсов. В подписке должны быть зарегистрированы следующие поставщики ресурсов:

  • Microsoft.CloudShell
  • Microsoft.ContainerInstance
  • Microsoft.Relay

В зависимости от того, когда клиент был создан, некоторые из этих поставщиков уже могут быть зарегистрированы.

Чтобы просмотреть все поставщики ресурсов и состояние регистрации для вашей подписки, сделайте следующее:

  1. Войдите на портал Azure.
  2. В меню "Портал Azure" найдите раздел Подписки. Выберите подходящий вариант из предложенных.
  3. Выберите подписку, которую нужно просмотреть.
  4. В разделе Параметры выберите Поставщики ресурсов.
  5. В поле поиска введите cloudshell поиск поставщика ресурсов.
  6. Выберите поставщика ресурсов Microsoft.CloudShell из списка поставщиков.
  7. Выберите "Регистрация", чтобы изменить состояние с отмены регистрации на зарегистрированный.
  8. Повторите предыдущие шаги для поставщиков ресурсов Microsoft.ContainerInstance и Microsoft.Relay .

Снимок экрана: выбор поставщиков ресурсов в портал Azure.

2. Сбор необходимых сведений

Перед развертыванием Cloud Shell необходимо собрать несколько фрагментов информации.

Экземпляр Cloud Shell по умолчанию можно использовать для сбора необходимых сведений и создания необходимых ресурсов. Необходимо создать выделенные ресурсы для развертывания виртуальной сети Cloud Shell. Все ресурсы должны находиться в одном регионе Azure и в одной группе ресурсов.

Заполните следующие значения:

  • Подписка: имя подписки, содержащей группу ресурсов для развертывания виртуальной сети Cloud Shell.
  • Группа ресурсов: имя группы ресурсов для развертывания виртуальной сети Cloud Shell.
  • Регион: расположение группы ресурсов.
  • виртуальная сеть: имя виртуальной сети Cloud Shell.
  • Диапазоны адресов подсети . Это развертывание создает три подсети. Необходимо спланировать диапазоны адресов для каждой подсети.
    • Подсеть контейнера— требуется достаточно IP-адресов для поддержки количества одновременных сеансов, которые требуется использовать.
    • Подсеть ретранслятора — для подсети Ретранслятора требуется по крайней мере один IP-адрес.
    • Имя подсети хранилища— требуется достаточно IP-адресов для поддержки количества одновременных сеансов, которые требуется использовать.
  • OID экземпляра контейнера Azure: идентификатор экземпляра контейнера Azure для группы ресурсов.
  • Пространство имен Ретранслятора Azure: имя, которое необходимо назначить ресурсу Azure Relay, который создает шаблон.

Создание или изменение группы ресурсов

Группу ресурсов можно создать с помощью портал Azure, Azure CLI или Azure PowerShell. Дополнительные сведения см. в следующих статьях:

Создание виртуальной сети

Виртуальную сеть можно создать с помощью портал Azure, Azure CLI или Azure PowerShell. Дополнительные сведения см. в следующих статьях:

Примечание.

При настройке префикса адреса подсети контейнера для подсети Cloud Shell важно учитывать количество сеансов Cloud Shell, которые необходимо выполнять одновременно. Если число сеансов Cloud Shell превышает доступные IP-адреса в подсети контейнера, пользователи этих сеансов не могут подключиться к Cloud Shell. Увеличьте диапазон подсети контейнера для удовлетворения конкретных потребностей. Дополнительные сведения см. в разделе "Изменение параметров подсети" в разделе "Добавление, изменение или удаление подсети виртуальной сети".

Получение идентификатора экземпляра контейнера Azure

Идентификатор экземпляра контейнера Azure — это уникальное значение для каждого клиента. Этот идентификатор используется в шаблонах быстрого запуска для настройки виртуальной сети для Cloud Shell. Чтобы получить идентификатор из командной строки, см . альтернативный способ получения идентификатора экземпляра контейнера Azure.

  1. Войдите на портал Azure. На домашней странице выберите идентификатор Microsoft Entra. Если значок не отображается, введите Microsoft Entra ID в верхней строке поиска.

  2. В меню слева выберите "Обзор". Затем введите azure container instance service в строке поиска.

    Снимок экрана: поиск службы экземпляра контейнеров Azure.

  3. В результатах в разделе "Корпоративные приложения" выберите службу экземпляра контейнеров Azure.

  4. На странице обзора службы экземпляров контейнеров Azure найдите значение идентификатора объекта, указанное в разделе "Свойства".

    Этот идентификатор используется в шаблоне быстрого запуска для виртуальной сети.

    Снимок экрана: сведения о службе экземпляра контейнеров Azure.

3. Создание необходимых сетевых ресурсов с помощью шаблона ARM

Чтобы создать ресурсы Cloud Shell в виртуальной сети, используйте шаблон ARM с именем Azure Cloud Shell — виртуальная сеть. Шаблон создает три подсети в созданной ранее виртуальной сети. Вы можете изменить предоставленные имена подсетей или использовать значения по умолчанию.

Для виртуальной сети и подсетей требуются допустимые назначения IP-адресов. Вам потребуется достаточно адресов для поддержки следующих ресурсов:

  • По крайней мере один IP-адрес для подсети Ретранслятора
  • Достаточно IP-адресов в подсети контейнера для поддержки количества одновременных сеансов, которые вы планируете использовать.

Шаблон ARM требует определенных сведений о ресурсах, созданных ранее, а также сведения об именовании для новых ресурсов. Эти сведения заполняются вместе с предварительно заполненными сведениями в форме.

Сведения, необходимые для шаблона, включают:

  • Подписка: имя подписки, содержащей группу ресурсов для виртуальной сети Cloud Shell.
  • Группа ресурсов: имя существующей или недавно созданной группы ресурсов.
  • Регион: расположение группы ресурсов.
  • виртуальная сеть: имя виртуальной сети Cloud Shell.
  • Группа безопасности сети: имя, которое необходимо назначить группе безопасности сети (NSG), которую создает шаблон.
  • OID экземпляра контейнера Azure: идентификатор экземпляра контейнера Azure для группы ресурсов.

Заполните форму, указав следующую информацию.

Сведения о проекте Значение
Подписка По умолчанию используется текущий контекст подписки.
В примере в этой статье используется Contoso.
Группа ресурсов Введите имя группы ресурсов из сведений о предварительных требованиях.
В примере в этой статье используется rg-cloudshell-eastus.
Сведения об экземпляре Значение
Регион Предварительно заполнено регионом по умолчанию.
В примере в этой статье используется East US.
Существующее имя виртуальной сети Введите значение из собранных сведений о предварительных требованиях.
В примере в этой статье используется vnet-cloudshell-eastus.
Имя пространства имен ретранслятора Создайте имя, которое нужно назначить ресурсу Ретранслятора, который создает шаблон.
В примере в этой статье используется arn-cloudshell-eastus.
Имя Nsg Введите имя группы безопасности сети. Развертывание создает эту группу безопасности сети и назначает ему правило доступа.
OID экземпляра контейнера Azure Введите значение из собранных сведений о предварительных требованиях.
В примере в этой статье используется aaaaaaaa-0000-1111-2222-bbbbbbbbbbbb.
Имя подсети контейнера По умолчанию — cloudshellsubnet. Введите имя подсети для контейнера.
Префикс адреса подсети контейнера В примере в этой статье используется 10.0.1.0/24254 IP-адреса для экземпляров Cloud Shell.
Имя подсети ретранслятора По умолчанию — relaysubnet. Введите имя подсети, содержащей ретранслятор.
Префикс адреса подсети ретранслятора В примере в этой статье используется 10.0.2.0/24.
Имя подсети хранилища По умолчанию — storagesubnet. Введите имя подсети, содержащей хранилище.
Префикс адреса подсети хранилища В примере в этой статье используется 10.0.3.0/24.
Имя частной конечной точки По умолчанию — cloudshellRelayEndpoint. Введите имя подсети, содержащей контейнер.
Имя тега По умолчанию — {"Environment":"cloudshell"}. Оставьте без изменений или добавьте дополнительные теги.
Местонахождение По умолчанию — [resourceGroup().location]. Оставьте без изменений.

После завершения формы нажмите кнопку "Проверить и создать " и разверните шаблон сетевого ARM в подписке.

4. Создание хранилища виртуальной сети с помощью шаблона ARM

Чтобы создать ресурсы Cloud Shell в виртуальной сети, используйте шаблон ARM с именем Azure Cloud Shell — хранилище виртуальной сети. Шаблон создает учетную запись хранения и назначает ее частной виртуальной сети.

Шаблон ARM требует определенных сведений о ресурсах, созданных ранее, а также сведения об именовании для новых ресурсов.

Сведения, необходимые для шаблона, включают:

  • Подписка: имя подписки, содержащей группу ресурсов для виртуальной сети Cloud Shell.
  • Группа ресурсов: имя существующей или недавно созданной группы ресурсов.
  • Регион: расположение группы ресурсов.
  • Существующее имя виртуальной сети: имя созданной ранее виртуальной сети.
  • Существующее имя подсети хранилища: имя подсети хранилища, созданной с помощью шаблона быстрого запуска сети.
  • Существующее имя подсети контейнера: имя подсети контейнера, созданной с помощью шаблона быстрого запуска сети.

Заполните форму, указав следующую информацию.

Сведения о проекте Значение
Подписка По умолчанию используется текущий контекст подписки.
В примере в этой статье используется Contoso.
Группа ресурсов Введите имя группы ресурсов из сведений о предварительных требованиях.
В примере в этой статье используется rg-cloudshell-eastus.
Сведения об экземпляре Значение
Регион Предварительно заполнено регионом по умолчанию.
В примере в этой статье используется East US.
Существующее имя виртуальной сети В примере в этой статье используется vnet-cloudshell-eastus.
Существующее имя подсети хранилища Укажите имя ресурса, создаваемого шаблоном сети.
Существующее имя подсети контейнера Укажите имя ресурса, создаваемого шаблоном сети.
Имя учетной записи хранения Создайте имя новой учетной записи хранения.
В примере в этой статье используется myvnetstorage1138.
Имя общей папки По умолчанию — acsshare. Введите имя общей папки, которую вы хотите создать.
Теги ресурсов По умолчанию — {"Environment":"cloudshell"}. Оставьте без изменений или добавьте дополнительные теги.
Местонахождение По умолчанию — [resourceGroup().location]. Оставьте без изменений.

После завершения формы нажмите кнопку "Проверить и создать " и разверните шаблон сетевого ARM в подписке.

5. Настройка Cloud Shell для использования виртуальной сети

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

Если вы использовали экземпляр Cloud Shell по умолчанию перед развертыванием частного экземпляра, необходимо сбросить параметры пользователя:

  1. Откройте Cloud Shell.

  2. Выберите параметры Cloud Shell в строке меню.

  3. Выберите "Сброс параметров пользователя" и нажмите кнопку "Сброс". Сброс параметров пользователя активирует первое взаимодействие с пользователем.

  4. Выберите предпочитаемый интерфейс оболочки (Bash или PowerShell).

  5. В диалоговом окне "Начало работы":

    1. Выберите "Подключить учетную запись хранения".
    2. Выберите подписку в раскрывающемся списке подписки учетной записи хранения.
    3. Установите флажок "Использовать существующую частную виртуальную сеть".

    Снимок экрана: диалоговое окно

  6. Чтобы продолжить, нажмите кнопку Применить.

  7. В диалоговом окне "Выбор конфигурации виртуальной сети" выберите ресурсы, созданные для этого развертывания.

    Снимок экрана: диалоговое окно конфигурации виртуальной сети GSelect.

  8. Нажмите кнопку Выбрать, чтобы продолжить.

Альтернативный способ получения идентификатора экземпляра контейнера Azure

Если у вас установлена Azure PowerShell, можно использовать следующую команду, чтобы получить идентификатор экземпляра контейнера Azure.

(Get-AzADServicePrincipal -DisplayNameBeginsWith 'Azure Container Instance').Id
d5f227bb-ffa6-4463-a696-7234626df63f

Если у вас установлен Azure CLI, можно использовать следующую команду, чтобы получить идентификатор экземпляра контейнера Azure.

az ad sp list --display-name 'Azure Container Instance' --query "[].id"
[
  "d5f227bb-ffa6-4463-a696-7234626df63f"
]

Следующие шаги

Необходимо выполнить действия по настройке Cloud Shell для каждого пользователя, который должен использовать новый частный экземпляр Cloud Shell. Кроме того, можно настроить экземпляр Cloud Shell, чтобы разрешить нескольким пользователям использовать одни и те же ресурсы хранилища. Дополнительные сведения см. в разделе "Разрешить нескольким пользователям использовать одну учетную запись хранения и общую папку".

Для повышения безопасности можно настроить учетную запись хранения для использования частной конечной точки. Дополнительные сведения см. в статье "Подключение к учетной записи хранения с помощью частной конечной точки Azure".