AksCompute 类
在 Azure 机器学习中管理 Azure Kubernetes 服务计算目标。
Azure Kubernetes 服务 (AKSCompute) 目标通常用于大规模生产部署,因为它们提供了快速响应时间和已部署服务的自动缩放。 有关详细信息,请参阅什么是 Azure 机器学习中的计算目标?
类 ComputeTarget 构造函数。
检索与提供的工作区关联的 Compute 对象的云表示形式。 返回与检索的 Compute 对象的特定类型对应的子类的实例。
- 继承
-
AksCompute
构造函数
AksCompute(workspace, name)
参数
名称 | 说明 |
---|---|
workspace
必需
|
包含要检索的 AksCompute 对象的工作区对象。 |
name
必需
|
要检索的 AmlCompute 对象的名称。 |
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
|
CIDR 表示法 IP 范围,从其中分配服务群集 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
serialize
将此 AksCompute 对象转换为 JSON 序列化字典。
serialize()
返回
类型 | 说明 |
---|---|
此 AksCompute 对象的 JSON 表示形式。 |
例外
类型 | 说明 |
---|---|
update
使用提供的更新配置更新 AksCompute 对象。
update(update_configuration)
参数
名称 | 说明 |
---|---|
update_configuration
必需
|
AKS 更新配置对象。 |
例外
类型 | 说明 |
---|---|