Creación de Máquinas Virtuales con Azure CLI
En Azure se pueden realizar muchas acciones de manera visual y con solo algunos clicks. Pero también se pueden realizar muchas acciones mediante una consola. En nuestro cosa usaremos la consola de comandos para realizar un una máquina virtual (VM). Antes de continuar con el post , se debe tener ciertos programas descargados.
El primero y el mas importante es Azure Cli que se debe de instalar en el caso de que no se use la consola de la web de Azure , sino una consola local. El siguiente link es la página para descargarlo: https://docs.microsoft.com/es-es/cli/azure/install-azure-cli-windows?tabs=azure-cli
Segundo, en mi caso usaré la consola cmder . Que se puede usar la propia consola de la web de Azure o la consola de comando de Windows . El siguiente link es la página para descargarlo: https://cmder.net/
Con esto dos herramientas descargas e instaladas , podemos iniciar realmente el post. Lo primero de debemos hacernos es hacer un login mediante la consola con el comando az login. En el cual nos pedirá nuestras credenciales para comprobar si nuestra cuenta existe y poder trabajar con los recursos de azure.
Ahora crearemos un grupo de recurso para almacenar nuestra VM donde le daremos un nombre al grupo de recurso y una localización. El comando de creación es az group create –location LocationName –name «GRUPONAME»
¿Cómo sabemos que localización poner? Una manera es obtenerlo de la documentación de Microsft. Otra mediante comando az account list-locations que nos muestra una lista de lugares.
Con el grupo ya creado nos dirigimos a crear la maquina virtual. Mediante el comando az vm –help, podremos visualizar la ayuda para crear un VM.
Para crear una VM se necesita pasarle varias datos, se le pueden pasar otros parámetros aparte de los siguiente que necesitaremos para nuestro ejemplo . Primero el nombre del grupo de recurso, en nuestro caso el grupo anteriormente creado. Segundo, el nombre de la VM. Tercero, la imagen es decir que sistema operativo a usar. Cuarto, el nombre de un usuario administrador. Por último, que genere las claves ssh para poder conectarnos.
Ahora se crea la VM con el comando az vm create –resource-group «GRUPONAME» –name VMName –image Canonical:UbuntuServer:16.04-LTS:latest –admin-username user –generate-ssh-keys. Cuando se ejecute el comando tardará un poco debido a que estará creando la VM en Azure.
¿Cómo nos conectamos a la VM?
Durante la creación del VM le dijimos que nos generé una clave ssh, que serán como nos podremos conectarnos.
Ahora debemos abrir un puerto de la VM para poder conectarnos. Donde le decimos que puerto abrirá , el grupo de recurso de VM y el nombre de la VM. Con el comando: az vm open-port –port XXX –resource-group «GRUPONAME» –name VMName.
Solo nos falta una cosa por hacer la ip con la cual nos conectaremos. Con el siguiente comanda solo hay que pasarle el grupo de recurso donde esta VM y el nombre la VM: az vm show –name «GRUPONAME» –resource-group «VMName» –show-details –query [publicIps]
Y en este punto nos dirigimos al portal de Azure para descargarnos las claves generadas. Abrimos la consola y nos dirigimos a /home/user ( user es el nombre de vuestro usuario en el portal de Azure). Buscamos un el comando ls -la el directorio .ssh y entramos en dicho directorio. Y nos descargamos los archivos con el nombre id_rsa , este el nombre asignado por defecto.
En el caso de que no se encuentre las claves o no este el directorio .ssh , tendremos que generar una nuevas con el siente comando : ssh-keygen -t rsa -b 4096 -C «user@dominio». El cual con la opción C , se le dice el usuario y el dominio o la ip publica , que se usarán para conectar al VM.
Copiamos los fichero id_rsa, y la pegamos en un directorio ambos ficheros. Con la clave priva , es decir, la que no tiene extensión la renombramos y le ponemos la extensión ppk.
Volvemos al cmder y nos posicionamos en el directorio donde están las claves y escribimos el siguiente comando: ssh -i id_rsa.ppk usuario@XXX.XXX.XXX.XXX. Donde se encuentran las X es donde debemos poner la ip pública de VM. Y se conecta a la VM.
En el caso de que ya no les haga falta la VM. Lo que se puede hacer es el eliminar el grupo de recurso y se elimina la VM y cualquier otro servicio creado. Se hace con el comando: az group delete –name «GRUPONAME«
Bibliografía
Listado de localizaciones en AzureCLI: https://github.com/Azure/azure-cli/issues/1520
Creación rápida de VM de Linux: https://docs.microsoft.com/es-es/azure/virtual-machines/linux/quick-create-cli
Creación rápida de VM de Windows: https://docs.microsoft.com/es-es/azure/virtual-machines/windows/quick-create-cli
Cloud Affire create VM with Azure Cli: https://cloudaffaire.com/how-to-create-an-azure-virtual-machine-using-azure-cli/
Como conectar mediante ssh a una VM: https://docs.microsoft.com/es-es/azure/virtual-machines/linux/ssh-from-windows
Generate ssh keys: https://docs.github.com/es/github/authenticating-to-github/generating-a-new-ssh-key-and-adding-it-to-the-ssh-agent
Autor: Alejandro Navaroli Sallés
Curso: Desarrollo Web Full Stack, MultiCloud y Multiplataforma
Centro: Tajamar
Año académico: 2020-2021