Whitepaper 'FinOps y gestión de costes para Kubernetes'
Considere darle a OptScale un Estrella en GitHub, es 100% de código abierto. Aumentaría su visibilidad ante los demás y aceleraría el desarrollo de productos. ¡Gracias!
Ebook 'De FinOps a estrategias comprobadas de gestión y optimización de costos en la nube'
OptScale FinOps
OptScale - FinOps
Descripción general de FinOps
Optimización de costos:
AWS
MS Azure
Nube de Google
Alibaba Cloud
Kubernetes
MLOps
OptScale - MLOps
Perfiles de ML/IA
Optimización de ML/IA
Perfilado de Big Data
PRECIOS DE ESCALA OPTICA
cloud migration
Acura: migración a la nube
Descripción general
Cambio de plataforma de la base de datos
Migración a:
AWS
MS Azure
Nube de Google
Alibaba Cloud
VMware
OpenStack
KVM
Nube pública
Migración desde:
En la premisa
disaster recovery
Acura: recuperación ante desastres y respaldo en la nube
Descripción general
Migración a:
AWS
MS Azure
Nube de Google
Alibaba Cloud
VMware
OpenStack
KVM

Detectar máquinas virtuales de Azure detenidas incorrectamente

Problem description: 'Stopped' and 'deallocated' states of an inactive VM

How-to-detect-incorrectly-stopped-Azure-VMs

In clouds your VMs are temporarily leasing a part of the compute power of the hypervisor costs, and you pay money for that. It is obvious that you pay for them when your VM is powered on, but there are some cases where your VM may still consume money for сompute even if it is turned off.

The most annoying thing regarding charges for turned off VMs is the Azure’s difference between ‘stopped’ and ‘deallocated’ states of an inactive VM. The underlying mechanism is the following:

  1. When you stop your VM using Azure portal, it goes to “Stopped (deallocated)” state in the portal. This means that Azure has destroyed your VM instance on the hypervisor host and released all connected resources, like non-static Public IPs related to this. VM.You don’t pay compute costs for a VM in this state.
  2. When you stop your VM via Guest OS call, it goes to “Stopped” state in the portal. Unlike the previous case, the VM won’t be destroyed on its hypervisor host, so you still rent a part of the hypervisor and pay money for that. In most cases this is not what you want. Actually, the only scenario when you would like to have a machine in “Stopped” state is if you want to shut it down for some very short period of time and save non-static Public IPs connected to it.

How to detect not deallocated VMs

So, you want to scan the subscription for stopped, but not deallocated VMs. It can be done manually through the Azure portal, but as this task should be done periodically, Azure CLI is a much better way to perform this check. az vm list command is a very handy way to show VMs in some subscription (with –subscription parameter) and even to filter them by some condition and format output (using –query parameter). But machine state is not shown in this command output due to performance reasons. Therefore, we should use az vm show command with -d parameter set. The next thing to handle – we want to scan the whole subscription for such VMs while az vm show requires either the name of the VM or a list of the VM IDs as an input parameter. So, the first step is to make a quick az vm list query and format its output as IDs list. And at last, we filter output by VM’s powerState field, also noting that API response has a slight difference in VM state naming: “Stopped (deallocated)” in portal is shown as “VM deallocated”, while “Stopped” state is “VM stopped” in the API response. Polishing with some output formatting, and here is the command for detection of incorrectly stopped VMs:
az vm show -d --ids $(az vm list --subscription --query "[].id" -o tsv) --query "[?powerState=='VM stopped'].{Id:id, ResourceGroup:resourceGroup}" --output table

You can execute this command in Bash console integrated into Azure portal or set up a periodical job to check your subscriptions.

Max BozhenkoEntusiasta y practicante de FinOps, Director de tecnología en Hystax

Ingresa tu email para recibir contenido nuevo y relevante

¡Gracias por estar con nosotros!

Esperamos que lo encuentre útil.

Puede darse de baja de estas comunicaciones en cualquier momento. política de privacidad

Noticias e informes

FinOps y MLOps

Una descripción completa de OptScale como una plataforma de código abierto FinOps y MLOps para optimizar el rendimiento de la carga de trabajo en la nube y el costo de la infraestructura. Optimización de los costos de la nube, Dimensionamiento correcto de VM, instrumentación PaaS, Buscador de duplicados S3, Uso de RI/SP, detección de anomalías, + herramientas de desarrollo de IA para una utilización óptima de la nube.

FinOps, optimización de costos en la nube y seguridad

Descubra nuestras mejores prácticas: 

  • Cómo liberar direcciones IP elásticas en Amazon EC2
  • Detectar máquinas virtuales de MS Azure detenidas incorrectamente
  • Reduce tu factura de AWS eliminando las copias instantáneas de disco huérfanas y no utilizadas
  • Y conocimientos mucho más profundos

Optimice el uso de RI/SP para equipos de ML/AI con OptScale

Descubra cómo:

  • ver cobertura RI/SP
  • obtenga recomendaciones para el uso óptimo de RI/SP
  • Mejore la utilización de RI/SP por parte de los equipos de ML/AI con OptScale