Debugando mensajes de error en terraform con CloudTrail

Hoy me he encontrado con un mensaje de error al aplicar terraform para crear un ASG y su Launch Template en AWS que no me ha parecido intuitivo.

Error: Error creating AutoScaling Group: 
AccessDenied: You are not authorized to use launch template: name-of-the-template
	status code: 403, request id: 12425678-7890-4567-1234-14ef2ea89123

Bueno, en realidad era un «Access Denied». ¿Fácil, no? Pues no, o por lo menos no para mí. El usuario que aplicaba terraform ya tenía los permisos que a priori parecía que necesitaba para poder crear ese recurso y sus asociados.

Entonces… ¿cómo saber de qué permisos se me está quejando? Aquí es donde entra CloudTrail. Lo que he hecho es básicamente buscar los eventos para el usuario con el que estaba ejecutando el comando, pues no he encontrado la forma de usar la request-id que nos devuelve el error. Recuerda que pueden tardar varios minutos hasta que aparezcan los eventos en CloudTrail, así que paciencia.

Continuar leyendo «Debugando mensajes de error en terraform con CloudTrail»

VMWare brigde error

Hoy voy a comentar un problema que me he encontrado configurando una máquina virtual Windows 2003 Server en VMWare Server sobre un Ubuntu Server 8.04 LTS. Básicamente aparecía el siguiente error al iniciar la máquina virtual configurada para conectar en modo «Brigde» (funcionando tanto el modo NAT como el modo «host only»):

Error: «The network bridge on device /dev/vmnet0 is temporarily down because the bridged Ethernet interface is down. The virtual machine may not be able to communicate with the host or with other machines on your network.»

El problema se ha identificado intentando reconfigurar la máquina virtual (con el guest apagado, claro).

[…]

root@Terran:~# vmware-config.pl
Do you want networking for your virtual machines? (yes/no/help) [yes]
Would you prefer to modify your existing networking configuration using the wizard or the editor? (wizard/editor/help) [wizard] editor

The following virtual networks have been defined:

. vmnet0 is bridged to eth0
. vmnet1 is a host-only network on private subnet 172.16.120.0.
. vmnet8 is a NAT network on private subnet 192.168.10.0.
[…]

De la anterior «captura» nos hemos dado cuenta que que vmnet0 estaba asignado a la eth0, así que se ha decidido comprobar si realmente estabamos usando esta eth0 en el host:

root@Terran:~# ifconfig

eth1 Link encap:Ethernet HWaddr 00:50:bf:5a:a6:e7
inet addr:10.10.12.11 Bcast:10.10.12.255 Mask:255.255.255.0
inet6 addr: fe80::250:bfff:fe5a:a6e7/64 Scope:Link
UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1
RX packets:563969 errors:0 dropped:0 overruns:0 frame:0
TX packets:475524 errors:0 dropped:0 overruns:0 carrier:0
collisions:0 txqueuelen:1000
RX bytes:299505491 (285.6 MB) TX bytes:416600924 (397.3 MB)
Interrupt:16 Base address:0xd800

Efectivamente, VMWare ha configurado por defecto (seguramente por hacer la configuración del mismo sin pararse a leer todos los puntos) la salida Bridge con una interfaz que no era la eth1 que estábamos usando (nuestro servidor tiene más de una tarjeta de red). Hemos reconfigurado este punto en VMWare de la siguiente manera:

Do you want networking for your virtual machines? (yes/no/help) [yes]

Would you prefer to modify your existing networking configuration using the wizard or the editor? (wizard/editor/help) [wizard] editor

The following virtual networks have been defined:

. vmnet0 is bridged to eth0
. vmnet1 is a host-only network on private subnet 172.16.120.0.
. vmnet8 is a NAT network on private subnet 192.168.10.0.

Do you wish to make any changes to the current virtual networks settings?
(yes/no) [no] yes

Which virtual network do you wish to configure? (0-99) 0

The network vmnet0 has been reserved for a bridged network. You may change it, but it is highly recommended that you use it as a bridged network. Are you sure you want to modify it? (yes/no) [no] yes

What type of virtual network do you wish to set vmnet0?
(bridged,hostonly,nat,none) [bridged]

Configuring a bridged network for vmnet0.

Your computer has multiple ethernet network interfaces available: eth1, vmnet1,
vmnet8, eth0. Which one do you want to bridge to vmnet0? [eth0] eth1

The following virtual networks have been defined:

. vmnet0 is bridged to eth1
. vmnet1 is a host-only network on private subnet 172.16.120.0.
. vmnet8 is a NAT network on private subnet 192.168.10.0.

Do you wish to make additional changes to the current virtual networks settings? (yes/no) [yes] no