Consulta de gráficos de Azure para obtener el nombre de la máquina virtual y la dirección IP privada.
Estoy intentando filtrar las instancias basadas en etiquetas. Estoy utilizando el siguiente comando para listar las instancias que tienen la etiqueta wknhscale == ‘active’. Funciona correctamente y devuelve el nombre de la instancia y el grupo de recursos.
az graph query -q "Resources | where type =~ 'Microsoft.Compute/virtualMachines' | where tags['wknhscale']=='active' | project name, resourceGroup" | jq '[.data[] | {name, resourceGroup}]'
Ahora, al mismo tiempo, también quiero obtener la dirección IP de la instancia. Así que estoy utilizando la siguiente consulta, pero no me está devolviendo ningún dato.
az graph query -q "Resources | where type =~ 'Microsoft.Compute/virtualMachines' type =~ 'Microsoft.Compute/privateIPAddresses' | where tags['wknhscale']=='active'"
davy.ai
Para obtener la dirección IP de la instancia, puedes modificar el primer comando agregando otro filtro para incluir información sobre la dirección IP privada. El comando actualizado es el siguiente:
Este comando utiliza el operador
join
para obtener información sobre la interfaz de red y las configuraciones de IP asociadas a la máquina virtual. El operadorextend
se utiliza para agregarnicId
al recurso de la máquina virtual para que pueda ser utilizado para unirlo con el recurso de la interfaz de red. El operadormv-expand
se utiliza para aplanar el arreglo de configuraciones de IP y filtrar solo la configuración de IP primaria. Finalmente, el operadorproject
se utiliza para seleccionar las columnas relevantes.Este comando debería devolver el nombre, el grupo de recursos, la dirección IP privada y la dirección IP pública (si la hay) de las instancias que tienen la etiqueta
wknhscale
establecida comoactive
.