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


Выбор виртуальной машины на основе атрибутов для вычислительного флота Azure (предварительная версия)

Внимание

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

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

Снимок экрана: схема потока для выбора виртуальной машины на основе атрибутов.

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

Необходимые компоненты

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

Льготы

  • Оптимальная гибкость для точечных виртуальных машин: вычислительный флот обеспечивает оптимальную гибкость при развертывании точечных Виртуальные машины путем выбора из широкого диапазона размеров виртуальных машин. Этот процесс соответствует рекомендациям по использованию точечных вычислений, обеспечивая гибкость в выборе размера виртуальной машины, что повышает вероятность собрания виртуальных машин Azure Spot VM и выделения требуемой вычислительной емкости.
  • Упрощенный выбор типа виртуальной машины: при наличии огромного массива размеров виртуальных машин поиск оптимального соответствия рабочей нагрузки может быть сложной задачей. Указав атрибуты виртуальной машины, Azure Масштабируемые наборы виртуальных машин может автоматически выбрать размеры виртуальных машин, которые соответствуют требованиям рабочей нагрузки. Эта автоматизация упрощает процесс и гарантирует выбор нужных ресурсов.
  • Автоматическое внедрение новых размеров виртуальных машин: Azure Масштабируемые наборы виртуальных машин может автоматически включать новые размеры виртуальных машин поколения по мере их доступности. Когда эти новые размеры виртуальных машин соответствуют заданным требованиям и соответствуют выбранным стратегиям выделения, они легко используются масштабируемым набором, обеспечивая преимущества развертывания от последних улучшений без обновлений вручную.

Обработка

Как работает выбор виртуальной машины на основе атрибутов? Процесс включает два основных шага: определение типа виртуальной машины, за которым следует приложение стратегии распределения.

  • Определение типа виртуальной машины: выбор на основе атрибутов создает список типов виртуальных машин на основе указанных атрибутов, выбранных регионов Azure и Зоны доступности.
  • Приложение стратегии выделения. Вычислительный флот применяет выбранную стратегию распределения к созданному списку виртуальных машин.

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

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

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

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

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

vCpuCount

  • Обязательное поле
  • Необходимо указать, если VMAttributes задано
  • Диапазон vCpuCount от минимального до максимального
  • Если задано значение или min(uint) max(uint) требуется
"vCpuCount": {
	"value": {
		"min": 2, 
		"max": 24
	}
}

memoryInGiB

  • Обязательное поле
  • Необходимо указать, если VMAttributes задано
  • Диапазон memoryInGiB от минимального до максимального
  • Если задано значение или min(double) max(double) требуется
"memoryInGiB": { 
	"value": {  
		"min": 0,
		"max": 1024
	}
}

memoryInGiBPerVCpu

  • Необязательно
  • Диапазон memoryInGiBPerVCpu от минимального до максимального
  • Если задано значение или min(double) max(double) требуется
"memoryInGiBPerVCpu": { 
	"value": {  
		"min": 0,
		"max": 8 
	} 
}

localStorageSupport

  • Необязательно
  • Указывает, следует ли использовать размер виртуальной машины, поддерживающей локальное хранилище, для создания вычислительного парка или нет
  • Возможные значения:
    • Исключено . Не включать размеры виртуальных машин, которые поддерживают локальное хранилище
    • Обязательно . Включают только размеры виртуальных машин, поддерживающие локальное хранилище.
    • Включен. Включение размеров виртуальных машин, которые поддерживают и не поддерживают локальное хранилище, является значением по умолчанию, если localStorageSupport не указано
"localStorageSupport": "Included"

localStorageInGiB

  • Необязательно
  • Диапазон localStorageInGiB от минимального до максимального
  • Если задано значение или min(double) max(double) требуется
  • localStorageSupportДля использования этого атрибута виртуальной машины необходимо задать значение "Включен" или "Обязательный"
  • Если localStorageSupport задано значение "Исключено", этот атрибут виртуальной машины не может использоваться
"localStorageInGiB": { 
	"value": {  
		"min": 0,
		"max": 100 
	}
}

localStorageDiskTypes

  • Необязательно
  • Указан localStorageDiskTypes в виде списка
  • Допустимые значения : SSD и HDD
  • localStorageSupportДля использования этого атрибута виртуальной машины необходимо задать значение "Включен" или "Обязательный"
  • Если localStorageSupport задано значение "Исключено", этот атрибут виртуальной машины не может использоваться
  • Значение по умолчанию для localStorageDiskTypes( если не указано) имеет значение ANY допустимых значений.
"localStorageDiskTypes": { 
	"value": [ 
		"SSD", 
		"HDD" 
	] 
}

dataDiskCount

  • Необязательно
  • Диапазон указанного dataDiskCount от min до max
  • Если задано значение или min(uint) max(uint) требуется
"dataDiskCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

networkInterfaceCount

  • Необязательно
  • Диапазон указанного networkInterfaceCount от min до max
  • Если задано значение или min(uint) max(uint) требуется
"networkInterfaceCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

networkBandwidthInMbps

  • Необязательно
  • Диапазон указанного networkBandwidthInMbps от min до max
  • Если задано значение или min(double) max(double) требуется
"networkBandwidthInMbps": { 
	"value": {  
		"min": 0, 
		"max": 500 
	} 
}

rdmaSupport

  • Необязательно
  • Указывает, следует ли использовать размер виртуальной машины, поддерживающий удаленный прямой доступ к памяти (RDMA), для создания вычислительного флота или нет.
  • Возможные значения:
    • Исключен. Не включайте размеры виртуальных машин, поддерживающие RDMA, является значением по умолчанию, если rdmaSupport не указано
    • Обязательный параметр . Включайте только размеры виртуальных машин, поддерживающие RDMA
    • Включен. Включение размеров виртуальных машин, которые поддерживают и не поддерживают RDMA
"rdmaSupport": "Included"

rdmaNetworkInterfaceCount

  • Необязательно
  • Диапазон указанного rdmaNetworkInterfaceCount от min до max
  • Если задано значение или min(uint) max(uint) требуется
  • rdmaSupportДля использования этого атрибута виртуальной машины необходимо задать значение "Включен" или "Обязательный"
  • Если rdmaSupport задано значение "Исключено", этот атрибут виртуальной машины не может использоваться
"rdmaNetworkInterfaceCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

acceleratorSupport

  • Необязательно
  • Указывает, следует ли использовать размер виртуальной машины, поддерживающий акселератор для создания вычислительного флота или нет.
  • Возможные значения:
    • Исключено . Не включать размеры виртуальных машин, поддерживающие акселератор, является значением по умолчанию, если acceleratorSupport не указано
    • Обязательно . Включают только размеры виртуальных машин, поддерживающие акселератор
    • Включен. Включение размеров виртуальных машин, которые поддерживают и не поддерживают акселератор
"acceleratorSupport": "Required"

ускорительManufacturers

  • Необязательно
  • Указан acceleratorManufacturers в виде списка
  • Допустимые значения: AMD, Nvidia и Xilinx
  • acceleratorSupportДля использования этого атрибута виртуальной машины необходимо задать значение "Включен" или "Обязательный"
  • Если acceleratorSupport задано значение "Исключено", этот атрибут виртуальной машины не может использоваться
  • Значение по умолчанию для acceleratorManufacturers( если не указано) имеет значение ANY допустимых значений.
"acceleratorManufacturers": { 
	"value": { 
		"Nvidia", 
		"Xilinx" 
	} 
}

acceleratorCount

  • Необязательно
  • Диапазон acceleratorCount задается от min до max
  • Если задано значение или min(uint) max(uint) требуется
  • acceleratorSupportДля использования этого атрибута виртуальной машины необходимо задать значение "Включен" или "Обязательный"
  • Если acceleratorSupport задано значение "Исключено", этот атрибут виртуальной машины не может использоваться
"acceleratorCount": { 
	"value": {  
		"min": 0, 
		"max": 10 
	} 
}

acceleratorTypes

  • Необязательно
  • Указан acceleratorTypes в виде списка
  • Допустимые значения: GPU и FPGA
  • acceleratorSupportДля использования этого атрибута виртуальной машины необходимо задать значение "Включен" или "Обязательный"
  • Если acceleratorSupport задано значение "Исключено", этот атрибут виртуальной машины не может использоваться
  • Значение по умолчанию для acceleratorTypes( если не указано) имеет значение ANY допустимых значений.
"acceleratorTypes": { 
	"value": { 
		"GPU", 
		"FPGA" 
	} 
}

Категории виртуальных машин

  • Необязательно
  • vmCategories указан в виде списка
  • Допустимые значения:
    • GeneralPurpose
    • ComputeOptimized
    • MemoryOptimized
    • StorageOptimized
    • GpuAccelerated
    • FpgaAccelerated
    • HighPerformanceCompute
  • Значение по умолчанию для vmCategoriesпараметра GeneralPurpose , если оно не указано.
"vmCategories": { 
	"value": { 
		"GeneralPurpose", 
		"ComputeOptimized" 
	}
}

architectureTypes

  • Необязательно
  • architectureTypes указан в виде списка
  • Допустимые значения: X64 и Arm64
  • Значение по умолчанию для architectureTypesзначения , если не указано, имеет значение ANY допустимых значений.
"architectureTypes": { 
	"value": { 
		"Arm64", 
		"x64" 
	} 
}

cpuManufacturers

  • Необязательно
  • cpuManufacturers указан в виде списка
  • Допустимые значения: Intel, AMD, Microsoft и Ampere
  • Значение по умолчанию для cpuManufacturersзначения , если не указано, имеет значение ANY допустимых значений.
"cpuManufacturers": { 
	"value": { 
		"Microsoft", 
		"Intel" 
	} 
}

burstableSupport

  • Необязательно
  • Указывает, следует ли использовать размер виртуальной машины, поддерживающий возможность ускорения, для создания вычислительного флота или нет.
  • Возможные значения:
    • Исключено . Не включайте размеры виртуальных машин с возможностью ускорения, это значение по умолчанию, если acceleratorSupport оно не указано.
    • Обязательный параметр . Включайте только размеры виртуальных машин с возможностью ускорения
    • Включен. Включение размеров виртуальных машин, которые поддерживают и не поддерживают возможность ускорения.
"burstableSupport": "Excluded"

исключенные версииVMSizes

  • Необязательно
  • Указывает, какие размеры виртуальных машин следует исключить при создании вычислительного флота
  • Все excludedVMSizes будет игнорироваться, даже если они соответствуют атрибутам виртуальной машины
  • Если excludedVMSizes указан атрибут виртуальной машины, VMSizesProfile невозможно указать и наоборот
  • Ограничение составляет 100 размеров виртуальных машин
"excludedVMSizes": { 
	"value": { 
		"Standard_F1", 
		"Standard_F2" 
	} 
}

VMSizesProfile

  • Необязательно
  • Указывает, какие размеры виртуальных машин следует исключить при создании вычислительного флота
  • Все остальные размеры виртуальных машин будут игнорироваться, даже если они соответствуют атрибутам виртуальной машины.
  • Если VMSizesProfile задано, excludedVMSizes не удается указать и наоборот
  • Ограничение составляет 100 размеров виртуальных машин
"VMSizesProfile": { 
	"value": { 
		{"name": "Standard_F1"}, 
		{"name": "Standard_F2"} 
	} 
}

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