Ejercicio: Vagrant para utilizar AWS como proveedor
vagrant plugin list
: listado de plugins instaladosvagrant plugin install vagrant-aws
: instala GEMA ruby y las gemas dependentes para usar como proveedor AWS en vez de un proveedor local (virtualbox)- es necesario tener cuenta/credenciales en AWS y los datos de acceso se dejan en ficheros dentro del directorio
.aws
y la clave privada que usemosssh-add ~/.ssh/clave-aws.pem
[default] region=eu-west-1
[default] aws_access_key_id = ... aws_secret_access_key = ...
vagrant box add dummy https://github.com/mitchellh/vagrant-aws/raw/master/dummy.box
: vagrant exige tener un box, así que se obtiene un box sin errores vacío
Vagrant.configure("2") do |config| config.vm.box = "dummy" config.ssh.keys_only = false config.vm.provider :aws do |aws, override| aws.keypair_name = "clave-aws" aws.ami = "ami-3291be54" override.ssh.username = "admin" end endexplicación detallada del fichero:
dummy
: box tonta, obligatoria para trabajar con vagrant, pero no para crear en AWSkeys_only
: usar mi clave ssh (que he activado conssh-add
). En este caso tiene palabra de paso, al añadirla al agente ssh, vagrant ya la puede usar sin pedirnos de nuevo la palabra de pasokeypair_name
: clave para acceder a AWSami
: imagen AMI (AWS) que previamente habremos miradousername
: cambio de usuario por defecto para trabajar (vagrant por defecto)
si hacemos vagrant destroy
y gracias a la funcionalidad del plugin instalado, la máquina se destruye en AWS
rsync
la sincronización vía rsync NO es automática, hay que hacerlo manualmente…
vagrant rsync