我们正在开发一个处理excel文件并吐出输出的应用程序.可用性不是一个大要求.
我们可以在晚上关闭VM设置并在早上再打开它们吗?这种设置是否适用于服务结构?如果是这样,有没有办法安排它?
我为节点应用程序使用VM scale集.我的应用程序有一个公共可访问的动作,www.mydomain.com/api/healthcheck
并打印一些json.当我配置我的健康探针使用TCP
协议时,一切正常,我的api也返回了预期的json(和状态200).但是,当我现在将我的健康探针切换为use HTTP
和path =时/api/healthcheck
,我的网站不再可访问(ERR_CONNECTION_TIMED_OUT
...我想负载均衡器取出所有实例,因为健康探测器告诉他每个实例都不健康)
我在我的节点应用程序前面使用nginx,但我也尝试(测试)配置我的LoadBalancer将端口80路由到backendport 8080(我的节点应用程序在每台机器上运行,所以我可以避免使用nginx代理).但我得到了同样的行为.
我的想法为什么我的自定义健康检查不起作用.希望你能帮忙.
编辑:为了测试,我做了以下事情:
tcp
mydoamin.com:3000/hello
可用(打印hello并返回200)http
-protocol,port 3000
和location /hello
.VM 规模集可用于根据业务需求创建多个 VM,此外,Azure 批处理还可用于在多个 VM 中执行作业。
Azure Batch 和 VM 规模集之间的确切区别是什么?
我是 Azure 的新手,一直在努力解决专门更新域和故障域的概念。可能很难理解更新域。据我了解,在 3 个故障域中拥有 3 个虚拟机本质上就是将这些虚拟机分散到三个机架上?那是对的吗?像这样
故障域1 | 故障域2 | 故障域3 |
---|---|---|
虚拟机1 | 虚拟机2 | 虚拟机3 |
如果这是错误的,请纠正我。那么什么是更新域呢?我看过的很多文档都显示了与上表类似的故障域演示,并将描述故障域的声音是什么样的。如果您有一个很好的解释的链接,这将是一个很大的帮助,或者如果您认为您可以为我简化一下,那也可以。
azure azure-virtual-machine azure-availability-set azure-vm-scale-set
似乎如果您将 Scale Set 的overprovision
属性设置为true
( https://azure.microsoft.com/en-us/documentation/articles/virtual-machine-scale-sets-design-overview/#overprovisioning ),您会得到一个无效的 SF集群(删除的不必要的虚拟机在集群中显示为坏节点)。
有没有办法让它工作?当您有多个 VM 扩展时,过度配置可以真正帮助部署成功。
azure-virtual-machine azure-service-fabric azure-vm-scale-set
我想知道如何使用 Terraform-provider-azurerm 检索规模集虚拟机的私有 IP 地址。我认为没有资源或数据资源直接返回VM IP。
我尝试的一种选择是通过模板资源生成 shellscript。
# get_vmss_privateip.tpl
#!/bin/bash
cap=`az vmss show \
--resource-group ${resource_group} \
--subscription ${subscription} \
--name ${name} \
--query 'sku.capacity'`
for i in `seq 1 $cap`
do
az resource show \
--resource-group ${resource_group} \
--resource-type Microsoft.Compute/virtualMachineScaleSets \
--api-version 2017-03-30 \
--name ${name}/virtualMachines/$i/networkInterfaces \
--query 'value[0].properties.ipConfigurations[0].properties' \
| jq -c '{privateIPAddress}'
done
Run Code Online (Sandbox Code Playgroud)
然后运行terraform生成sh。
data "template_file" "private_ip_scripts" {
template = "${file("templates/get_vmss_privateip.tpl")}"
vars {
resource_group = "${data.azurerm_resource_group.current.name}"
subscription = "${data.azurerm_subscription.current.subscription_id}"
name = "${azurerm_virtual_machine_scale_set.test.name}"
}
}
resource "local_file" …
Run Code Online (Sandbox Code Playgroud) 我正在尝试自动化一些我们的 BAT 脚本,为此我们的脚本需要知道每个 VMSS 实例的私有 IP(实例没有公共 IP)。
有没有办法使用 azure cli 查询特定 VMSS 下所有实例的私有 IP。我尝试了 LB 和 VMSS 的几个命令,但还没有找到解决方案。
az vmss show -g <rg> -n <vmss>
az vmss list-instances -g <rg> -n <vmss>
az vmss nic list-vm-nics -g <rg> --vmss-name <vmss> --ids <id>
az network lb address-pool list -g <rg> --lb-name <lb>
az vmss list-instance-connection-info -g <rg> -n <vmss>
Run Code Online (Sandbox Code Playgroud)
任何帮助都是非常可观的,我不是在寻找 powershell。
我有一个实例数为 3 的 VMSS。假设我指定如果 CPU 利用率 <20%,则将实例减少 3 到 1。假设这 3 个实例正在处理一些请求,假设每个请求需要 60 秒才能完成.
假设此时 CPU 利用率达到 15%,那么实例数应该减少 2。那么此时由其他两个实例服务的现有请求会发生什么。这些实例是否将其正在进行的进程转移到其他实例,或者在它们完成正在进行的请求之前不会减少计数?
我已经使用应用程序网关附加了规模集并启用了连接排空,以便正在进行的进程不会丢失。但它正在下降。由于它失败了,我正在尝试使用 API 管理修订版和版本做一些事情。
期望:一旦发生缩小/缩小,正在进行的请求不应下降。
我有一个包含多个实例的 VMSS,其中部署了一个 java 应用程序。VMSS 连接到应用程序网关。网关启用了会话亲和性。
是否可以覆盖或告诉网关使用由java应用程序创建的cookie?
我需要它的原因是,当请求到达具有多个参数的应用程序网关时,处理是由java应用程序完成的。此处理会创建用户重定向到的唯一 ID 记录。
当此重定向请求到达应用程序网关时,网关将请求发送到另一台不存在唯一 ID 的服务器,从而引发错误。
我的想法:当请求到达网关并到达java程序时,我创建一个包含一些信息的cookie。cookie 被发回,当请求重定向时,我使用相同的 cookie 来识别服务器。
这可能吗?
我可以使用应用程序 cookie 并告诉应用程序网关使用该 cookie 来识别服务器吗?
azure session-cookies azure-application-gateway azure-vm-scale-set
我正在 Azure 门户中使用虚拟机。在那里,我通过 RDP 连接了虚拟机。现在,当我看到我的积分时,花费了 19 美元以及 Azure Bastion 的使用情况。
之后,我做了一些研发并弄清楚了如何通过 Azure PowerShell 删除所有 Azure Bastion 资源。我删除了所有 Azure Bastion 并使用此命令进行检查az network bastion network
,列表为空。
一天后,我再次通过 RDP 连接虚拟机,今天当我检查使用的详细信息时,它增加了 4 美元。
我的问题是,为什么在删除了 Azure 门户中的所有堡垒资源后还会发生这种情况?我怎样才能完全阻止它,因为我不想支付更多费用?