AksCompute 类
管理 Azure 机器学习中的 Azure Kubernetes 服务计算目标。
Azure Kubernetes 服务(AKSCompute)目标通常用于大规模生产部署,因为它们提供快速响应时间和自动缩放部署的服务。 有关详细信息,请参阅 什么是 Azure 机器学习中的计算目标?
类 ComputeTarget 构造函数。
检索与提供的工作区关联的计算对象的云表示形式。 返回与检索的计算对象的特定类型对应的子类的实例。
构造函数
AksCompute(workspace, name)
参数
名称 | 说明 |
---|---|
workspace
必需
|
包含要检索的 AksCompute 对象的工作区对象。 |
name
必需
|
要检索的 AksCompute 对象的名称。 |
workspace
必需
|
包含要检索的 Compute 对象的工作区对象。 |
name
必需
|
要检索的 Compute 对象的名称。 |
注解
以下示例演示如何创建启用了 FPGA 的计算机的 AKS 群集。
from azureml.core.compute import AksCompute, ComputeTarget
# Uses the specific FPGA enabled VM (sku: Standard_PB6s)
# Standard_PB6s are available in: eastus, westus2, westeurope, southeastasia
prov_config = AksCompute.provisioning_configuration(vm_size = "Standard_PB6s",
agent_count = 1,
___location = "eastus")
aks_name = 'my-aks-pb6'
# Create the cluster
aks_target = ComputeTarget.create(workspace = ws,
name = aks_name,
provisioning_configuration = prov_config)
方法
attach |
荒废的。 请改用该方法 将现有 AKS 计算资源与提供的工作区相关联。 |
attach_configuration |
创建用于附加 AKS 计算目标的配置对象。 |
delete |
从其关联的工作区中删除 AksCompute 对象。 如果此对象是通过 Azure 机器学习创建的,则也会删除相应的基于云的对象。 如果此对象是在外部创建的,并且仅附加到工作区,则此方法将引发且 ComputeTargetException 不会更改任何内容。 |
deserialize |
将 JSON 对象转换为 AksCompute 对象。 |
detach |
从关联的工作区中分离 AksCompute 对象。 基础云对象不会被删除,只会删除关联。 |
get_credentials |
检索 AKS 目标的凭据。 |
provisioning_configuration |
创建用于预配 AKS 计算目标的配置对象。 |
refresh_state |
对对象的属性执行就地更新。 此方法根据相应云对象的当前状态更新属性。 这主要用于手动轮询计算状态。 |
serialize |
将此 AksCompute 对象转换为 json 序列化字典。 |
update |
使用提供的更新配置更新 AksCompute 对象。 |
attach
荒废的。 请改用该方法 attach_configuration
。
将现有 AKS 计算资源与提供的工作区相关联。
static attach(workspace, name, resource_id)
参数
名称 | 说明 |
---|---|
workspace
必需
|
要与计算资源关联的工作区对象。 |
name
必需
|
要与提供的工作区中的计算资源关联的名称。 不必与要附加的计算资源的名称匹配。 |
resource_id
必需
|
要附加的计算资源的 Azure 资源 ID。 |
返回
类型 | 说明 |
---|---|
计算对象的 AksCompute 对象表示形式。 |
例外
类型 | 说明 |
---|---|
attach_configuration
创建用于附加 AKS 计算目标的配置对象。
static attach_configuration(resource_group=None, cluster_name=None, resource_id=None, cluster_purpose=None, load_balancer_type=None, load_balancer_subnet=None)
参数
名称 | 说明 |
---|---|
resource_group
|
AKS 所在的资源组的名称。 默认值: None
|
cluster_name
|
AKS 群集名称。 默认值: None
|
resource_id
|
要附加的计算资源的 Azure 资源 ID。 默认值: None
|
cluster_purpose
|
群集的目标用法。 这用于预配 Azure 机器学习组件,以确保所需的容错级别和 QoS。 该 ClusterPurpose 类定义可能的值。 有关详细信息,请参阅 附加现有的 AKS 群集。 默认值: None
|
load_balancer_type
|
AKS 群集类型。 有效值为 PublicIp 和 InternalLoadBalancer。 默认值为 PublicIp。 默认值: None
|
load_balancer_subnet
|
AKS 负载均衡器子网。 仅当 InternalLoadBalancer 用作负载均衡器类型时,才能使用它。 默认值为 aks-subnet。 默认值: None
|
返回
类型 | 说明 |
---|---|
附加计算对象时要使用的配置对象。 |
delete
从其关联的工作区中删除 AksCompute 对象。
如果此对象是通过 Azure 机器学习创建的,则也会删除相应的基于云的对象。 如果此对象是在外部创建的,并且仅附加到工作区,则此方法将引发且 ComputeTargetException 不会更改任何内容。
delete()
例外
类型 | 说明 |
---|---|
deserialize
将 JSON 对象转换为 AksCompute 对象。
static deserialize(workspace, object_dict)
参数
名称 | 说明 |
---|---|
workspace
必需
|
AksCompute 对象与之关联的工作区对象。 |
object_dict
必需
|
要转换为 AksCompute 对象的 JSON 对象。 |
返回
类型 | 说明 |
---|---|
提供的 JSON 对象的 AksCompute 表示形式。 |
例外
类型 | 说明 |
---|---|
注解
如果提供的工作区不是计算与之关联的工作区,则引发该 ComputeTargetException 工作区。
detach
get_credentials
provisioning_configuration
创建用于预配 AKS 计算目标的配置对象。
static provisioning_configuration(agent_count=None, vm_size=None, ssl_cname=None, ssl_cert_pem_file=None, ssl_key_pem_file=None, ___location=None, vnet_resourcegroup_name=None, vnet_name=None, subnet_name=None, service_cidr=None, dns_service_ip=None, docker_bridge_cidr=None, cluster_purpose=None, load_balancer_type=None, load_balancer_subnet=None)
参数
名称 | 说明 |
---|---|
agent_count
|
要托管容器的代理数(VM)。 默认值为 3。 默认值: None
|
vm_size
|
代理 VM 的大小。 可在此处找到选项的完整列表: https://aka.ms/azureml-aks-details 默认为Standard_D3_v2。 默认值: None
|
ssl_cname
|
在群集上启用 SSL 验证时要使用的 CName。 必须提供所有三个 CName、证书文件和密钥文件才能启用 SSL 验证。 默认值: None
|
ssl_cert_pem_file
|
包含 SSL 验证证书信息的文件路径。 必须提供所有三个 CName、证书文件和密钥文件才能启用 SSL 验证。 默认值: None
|
ssl_key_pem_file
|
包含 SSL 验证密钥信息的文件路径。 必须提供所有三个 CName、证书文件和密钥文件才能启用 SSL 验证。 默认值: None
|
___location
|
要在其中预配群集的位置。 如果未指定,则默认为工作区位置。 可在此处找到此计算的可用区域:https://azure.microsoft.com/global-infrastructure/services/?regions=all&products=kubernetes-service 默认值: None
|
vnet_resourcegroup_name
|
虚拟网络所在的资源组的名称。 默认值: None
|
vnet_name
|
虚拟网络的名称。 默认值: None
|
subnet_name
|
vnet 中子网的名称。 默认值: None
|
service_cidr
|
从中分配服务群集 IP 的 CIDR 表示法 IP 范围。 默认值: None
|
dns_service_ip
|
容器 DNS 服务器 IP 地址。 默认值: None
|
docker_bridge_cidr
|
Docker 桥的 CIDR 表示法 IP。 默认值: None
|
cluster_purpose
|
群集的目标用法。 这用于预配 Azure 机器学习组件,以确保所需的容错级别和 QoS。 为方便指定可用值,提供了 AksCompute.ClusterPurpose 类。 有关这些值及其用例的更多详细信息,可在此处找到: https://aka.ms/azureml-create-attach-aks 默认值: None
|
load_balancer_type
|
AKS 群集的负载均衡器类型。 有效值为 PublicIp 和 InternalLoadBalancer。 默认值为 PublicIp。 默认值: None
|
load_balancer_subnet
|
AKS 群集的负载均衡器子网。 仅当内部负载均衡器用作负载均衡器类型时,才能使用它。 默认值为 aks-subnet。 默认值: None
|
返回
类型 | 说明 |
---|---|
创建计算对象时要使用的配置对象 |
例外
类型 | 说明 |
---|---|
refresh_state
对对象的属性执行就地更新。
此方法根据相应云对象的当前状态更新属性。 这主要用于手动轮询计算状态。
refresh_state()
serialize
update
使用提供的更新配置更新 AksCompute 对象。
update(update_configuration)
参数
名称 | 说明 |
---|---|
update_configuration
必需
|
AKS 更新配置对象。 |
例外
类型 | 说明 |
---|---|