取得领先
VMware 提供培训和认证,助您飞速进步。
了解更多注意:此文章由我们的朋友 Kylie Liang (@liangkylie) 撰写,她来自 Microsoft Azure Spring Cloud 团队。感谢 Kylie!
我们很高兴宣布 Azure Spring Cloud 托管虚拟网络和自动缩放功能正式可用。这两项功能对于在 Azure Spring Cloud 服务上安全地大规模运行生产工作负载至关重要。
借助托管虚拟网络功能,您可以在自己的虚拟网络中预配 Azure Spring Cloud 服务,这使得能够实现以下几点:
此外,我们还支持自带路由表进行自定义路由管理。您可以提供包含附加路由表和 UDR(用户定义的路由)的子网,这些 UDR 控制对您的本地系统的访问以及出站 Internet 连接。
例如,当您创建 Azure Spring Cloud 服务实例时,如果您的自定义子网包含路由表,Azure Spring Cloud 会在服务创建期间识别现有路由表并相应地添加/更新规则。如果您的自定义子网不包含路由表,Azure Spring Cloud 会为您创建一个并在服务生命周期内向其中添加规则。
图 1:在托管虚拟网络中带有自定义路由表的 Azure Spring Cloud
Azure Spring Cloud 还提供了自诊断功能,帮助您排查网络连接问题,例如私有 DNS 区域配置错误。
图 2:用于诊断网络连接等问题的诊断页面
图 3:DNS 解析自诊断示例
要了解更多信息,请通过在虚拟网络中部署 Azure Spring Cloud 开始。
借助 Azure Spring Cloud 自动缩放功能,您可以自动化应用程序的扩容或缩容,以满足高峰时段的需求,并在不需要时缩减规模以降低运营成本。启用自动缩放后,服务将负责您的底层基础设施以及应用的负载。
图 4:带有扩容和缩容的指标
由于有些应用受 CPU 限制,而有些应用受内存限制,您可以选择指标并根据其值定义缩放规则。如果您的流量在周一至周五上午 9 点总是急剧飙升,您可以为工作日安排更积极的自动缩放目标。
在 Azure Spring Cloud 中,应用(App)是单个业务应用或单个微服务的抽象。作为应用(App)部署的一个版本的代码或二进制文件在部署(Deployment)中运行。您可以有一个用于生产的活动部署,另一个用于暂存。您可以为每个部署配置自动缩放设置。
图 5:Azure Spring Cloud 应用/部署的自动缩放设置
您可以学习如何为 Azure Spring Cloud 应用/部署设置自动缩放。您还可以使用 Terraform 自动化 Azure Spring Cloud 应用/部署的自动缩放。以下是一个示例。
resource "azurerm_monitor_autoscale_setting" "test" {
name = "acctestautoscale-cz"
resource_group_name = data.azurerm_resource_group.test.name
location = data.azurerm_resource_group.test.location
target_resource_id = azurerm_spring_cloud_java_deployment.test.id
enabled = true
profile {
name = "metricRules"
capacity {
default = 1
minimum = 1
maximum = 2
}
rule {
metric_trigger {
dimensions {
name = "AppName"
operator = "Equals"
values = [azurerm_spring_cloud_app.test.name]
}
dimensions {
name = "Deployment"
operator = "Equals"
values = [azurerm_spring_cloud_java_deployment.test.name]
}
metric_name = "AppCpuUsage"
metric_namespace = "microsoft.appplatform/spring"
metric_resource_id = azurerm_spring_cloud_service.test.id
time_grain = "PT1M"
statistic = "Average"
time_window = "PT5M"
time_aggregation = "Average"
operator = "GreaterThan"
threshold = 75
}
scale_action {
direction = "Increase"
type = "ChangeCount"
value = 1
cooldown = "PT1M"
}
}
}
}
我们将继续发布新功能,您的反馈对它们的改进至关重要,如果您有任何反馈或问题,请联系我们。