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


Группы близкого размещения

Применимо к: ✔️ Виртуальные машины Linux ✔️ Виртуальные машины Windows ✔️ Гибкие группы масштабирования ✔️ Унифицированные группы масштабирования

Размещение виртуальных машин в одном регионе уменьшает физическое расстояние между экземплярами. Размещение их в пределах одной зоны доступности также приведет их физически ближе друг к другу. Однако по мере роста объема ресурсов Azure одна зона доступности может охватывать несколько физических центров обработки данных, что может привести к задержке в сети, влияющей на приложение.

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

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

  • Низкая задержка между автономными виртуальными машинами.
  • Низкая задержка между виртуальными машинами в пределах одного набора доступности или масштабируемого набора виртуальных машин.
  • Низкая задержка между автономными виртуальными машинами, виртуальными машинами в нескольких группах доступности или несколькими масштабируемыми наборами. Вы можете использовать несколько вычислительных ресурсов в одной группе размещения, чтобы объединить многоуровневое приложение.
  • Низкая задержка между несколькими уровнями приложений с использованием разных типов оборудования. Например, использование серии M для серверной части в группе доступности и запуск интерфейсной части на экземпляре серии D в наборе масштабирования в одной группе размещения с учетом близости.

Рисунок для групп близкого размещения

Использование групп близкого размещения

Группа близкого размещения — это ресурс в Azure. Сначала необходимо создать один, прежде чем использовать его с другими ресурсами. После создания его можно использовать с виртуальными машинами, наборами обеспечивающих доступность, или масштабируемыми наборами виртуальных машин. Вы указываете группу близкого размещения при создании вычислительных ресурсов, указав идентификатор группы.

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

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

Группа размещения близкого взаимодействия — это ограничение совместного размещения, а не механизм привязки. Он привязан к определённому центру обработки данных при развертывании первого ресурса для использования. После того как все ресурсы, использующие группу размещения по близости, остановлены (освобождены ресурсов) или удалены, она больше не закрепляется. Поэтому всякий раз, когда вы используете группу размещения по близости с несколькими сериями ВМ, важно указать все необходимые типы заранее в шаблоне, если это возможно, или следовать последовательности развертывания, что повысит вероятность успешного развертывания. Если развертывание завершится сбоем, перезапустите развертывание, сначала выбрав в качестве размера виртуальной машины тот, на котором произошел сбой.

Использование намерения для указания размеров виртуальных машин

Можно использовать необязательный параметр intent, чтобы указать нужные размеры ВМ, которые будут частью группы близкого размещения. Этот параметр можно указать во время создания группы близкого размещения или его можно добавить или изменить при обновлении группы близкого размещения после деактивации всех виртуальных машин.

При указании intent можно также добавить необязательный параметр zone для определения зоны доступности, что означает, что группа размещения близкого взаимодействия должна быть создана в определенной зоне доступности. Обратите внимание на следующие моменты при предоставлении zone параметра:

  • Параметр зоны доступности может быть указан только во время создания группы близкого размещения и не может быть изменен позже.
  • Параметр zone можно использовать только с intent, его нельзя использовать только в одиночку.
  • Можно указать только одну зону доступности.

Создание или обновление группы близкого размещения будет успешно только в том случае, если хотя бы один центр обработки данных поддерживает все размеры виртуальных машин, обозначенные в намерении. В противном случае создание или обновление завершится сбоем с параметром OverconstrainedAllocationRequest, указывая, что сочетание размеров виртуальных машин не может поддерживаться в группе размещения близкого взаимодействия. Намерение не предоставляет никакого резервирования емкости или гарантии. Размеры и зоны intent виртуальных машин используются для выбора соответствующего центра обработки данных, что снижает вероятность сбоя, если требуемый размер виртуальной машины недоступен в центре обработки данных. Сбои выделения по-прежнему могут возникать, если в момент развертывания нет больше емкости для данного размера виртуальной машины.

Примечание.

Чтобы использовать намерение для групп размещения близкого взаимодействия, убедитесь, что версия API — 2021-11-01 или выше

Рекомендации при использовании намерения

  • Укажите зону доступности для группы размещения близкого взаимодействия, только если вы предоставляете намерение. Предоставление зоны доступности без намерения приведет к ошибке при создании группы размещения близкого взаимодействия.
  • Если вы предоставляете зону доступности в намерении, убедитесь, что зона доступности виртуальных машин, развернутых в намерении, соответствует тому, что указано в намерении, чтобы избежать ошибок при развертывании виртуальных машин.
  • Создание или добавление виртуальных машин с размерами, которые не включены в намерение, разрешены, но не рекомендуется. Размер может не существовать в выбранном центре обработки данных и может привести к сбоям во время развертывания виртуальной машины.
  • Для существующих групп размещения рекомендуется указывать размеры уже имеющихся виртуальных машин при обновлении конфигурации, чтобы избежать сбоя при повторном развертывании виртуальных машин.

Намерения могут изменитьcя при выводе из эксплуатации

  • Возможно, после создания группы размещения близкого взаимодействия с намерением и перед развертыванием виртуальных машин могут произойти запланированные мероприятия обслуживания, такие как списание оборудования в центре обработки данных Azure, что приведет к недоступности указанного в намерении сочетания размеров виртуальных машин в этом центре обработки данных. В таких случаях возникает ошибка OverconstrainedAllocationRequest, даже при развертывании виртуальных машин размеров, указанных в намерении. Вы можете попытаться освободить все ресурсы в группе размещения по близости и создать их заново, чтобы получить центр обработки данных, который может поддержать вашу цель. Если после вывода из эксплуатации центр обработки данных отсутствует, возможно, потребуется изменить намерение использовать другое сочетание размеров виртуальных машин, так как сочетание размеров виртуальных машин больше не поддерживается.
  • Azure может отказаться от всего семейства виртуальных машин или определенного набора размеров виртуальных машин. Если у вас запланирован такой размер виртуальной машины, возможно, потребуется либо удалить его, либо заменить другим размером до даты завершения использования исходного размера виртуальной машины. В противном случае намерение больше не будет допустимым.

Чего ожидать при использовании проксимальных групп размещения

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

  • При запросе первой виртуальной машины в группе размещения по близости автоматически выбирается центр обработки данных. В некоторых случаях второй запрос на другой размер виртуальной машины может завершиться ошибкой, если он не существует в этом центре обработки данных. В этом случае возвращается ошибка OverconstrainedAllocationRequest . Чтобы избежать этой ошибки, попробуйте изменить порядок развертывания типов вашей виртуальной машины или развернуть оба ресурса с помощью одного шаблона ARM.
  • Если группа размещения близкого взаимодействия создается с намерением, виртуальные машины не требуются для развертывания в определенном порядке и не требуют пакетной обработки с помощью одного шаблона ARM, так как намерение используется для выбора центра обработки данных, поддерживающего все размеры виртуальных машин, указанные в намерении.
  • В случае эластичных рабочих нагрузок, когда вы добавляете и удаляете экземпляры виртуальных машин, ограничение группы близкого размещения в развертывании может привести к сбою выполнения запроса, вызывая ошибку AllocationFailure.
  • Остановка (деалокация) и запуск виртуальных машин по мере необходимости — еще один способ достижения гибкости. Поскольку емкость не сохраняется после остановки (освобождения ресурсов) виртуальной машины, повторный запуск может привести к ошибке AllocationFailure.
  • Операции запуска и повторного развертывания виртуальных машин будут учитывать группу размещения по близости после успешной настройки.

Запланированное обслуживание и группы близкого размещения

Запланированные события обслуживания, такие как вывод оборудования из эксплуатации в центре обработки данных Azure, могут повлиять на выравнивание ресурсов в группах близкого размещения. Ресурсы могут быть перемещены в другой центр обработки данных, что может нарушить прогнозы коллокации и задержки, связанные с группой близкого размещения.

Проверка состояния выравнивания

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

  • Состояние совместного размещения группы ближайшего размещения можно просмотреть с помощью портала, интерфейса командной строки и PowerShell.

    • PowerShell — состояние совместного размещения можно получить с помощью командлета Get-AzProximityPlacementGroup, включив необязательный параметр -ColocationStatus.

    • CLI — состояние совместного размещения можно получить путем az ppg show включения необязательного параметра "--include--colocation-status".

  • Для каждой группы размещения близкого взаимодействия свойство статуса совместного размещения предоставляет текущую сводку состояния группированных ресурсов.

    • Выровнено: Ресурс находится в пределах одной зоны задержки группы размещения близкого взаимодействия.

    • Неизвестно: по крайней мере один из ресурсов виртуальной машины освобожден. После успешного запуска состояние должно вернуться к Выравнено.

    • Не согласовано: По крайней мере один ресурс виртуальной машины не соответствует группе близкого размещения. Определенные ресурсы, которые не согласованы, также будут отдельно указаны в разделе о членстве.

  • Для групп доступности можно просмотреть сведения о выравнивании отдельных виртуальных машин на странице обзора группы доступности.

  • Для масштабируемых наборов можно просмотреть сведения о выравнивании отдельных экземпляров на вкладке "Экземпляры " на странице "Обзор " для масштабируемого набора.

Перераспределить ресурсы

Если группа размещения близкого взаимодействия Not Aligned активна, можно остановить/деаллоцировать, а затем перезапустить затронутые ресурсы. Если виртуальная машина находится в группе доступности или масштабируемом наборе, все виртуальные машины в группе доступности или масштабируемом наборе должны быть остановлены\освобождены сначала перед перезапуском.

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

Лучшие практики

  • Для наименьшей задержки используйте группы размещения по близости вместе с ускоренной сетью. Дополнительные сведения см. в статье "Создание виртуальной машины Linux с ускорением сети" или "Создание виртуальной машиныWindows с ускорением сети".
  • Чтобы избежать размещения на оборудовании, которое не поддерживает все необходимые SKU и размеры виртуальных машин, используйте настройки для групп размещения близкого взаимодействия. Если это уже существующая группа размещения по близости без конкретной конфигурации, можно использовать один шаблон ARM, в котором указаны все размеры виртуальных машин, чтобы избежать этой проблемы.
  • При повторном использовании существующей группы размещения, из которой были удалены виртуальные машины, дождитесь завершения удаления перед добавлением в него виртуальных машин.
  • Если задержка отклика является вашим первым приоритетом, поместите виртуальные машины в группу размещения близкого взаимодействия и всю систему в зоне доступности. Но, если устойчивость системы является вашим главным приоритетом, распределите ваши экземпляры по нескольким зонам доступности (одна группа размещения тесного взаимодействия не может охватывать зоны).

Дальнейшие действия