Digital Ocean, utilidades
Digital Ocean es un proveedor estadounidense de servidores virtuales privados con sede central en Nueva York. La compañía dispone de centros de cómputo en Nueva York, Toronto, Bangalore, Ámsterdam, San Francisco, Londres y Singapur entre otros.
Lo utilizo bastante tanto para pruebas como para despliegue de soluciones en producción por varios motivos:
- Disponibilidad
- Precio
- Rapidez
- Flexibilidad
- Disponibilidad de API
- Integración con Terraform
- Gran catalogo de soluciones
Gracias a el de vez en cuando me saca de algún apuro en determinadas circunstancias. Como explico en mi combo “La VPN del pobre” .
Como soy un gran amigo del terminal utilizo dos de las muchas herramientas publicadas para gestión de infraestructura en este proveedor. Vamos a ver como se instalan junto con una breve guía de uso de las mismas. Para poder interactuar con el servico de Digital Ocena necesitamos un Token para la comunicación con su API.
Nota: Si no tenéis cuenta de DigtalOcean, dejo debajo mi link de referencia por si lo queréis utilizar para probar y me ayudas con unos Euritos para seguir con estos post y muchos mas. Gracias
Dobackup
Utilidad para realizar backups de los droplets creados en Digital Ocean. Dispoble en su repositorio de GitHub.
Instalación
Desde un terminal:
python3 -m pip install --user -U dobackup
Una vez instalado necesitamos inicializar la conexión del siguiente modo:
dobackup --init
Esto solo se realiza una vez por cuenta, podemos administrar varias cuentas del siguiente modo:
dobackup 0 # 0 por defecto o cuando solo se dispone de uno
dobackup 1 # token 1
dobackup 2 # token 2
Uso
Mostrar información
Mostrar información de los droplets y snapshots con los comandos –list.
Ejemplos:
dobackup --list-droplets
dobackup --list-snaps
dobackup --list-backups # snapsshots creados con esta utilidad
dobakcup --list-older_than 7 # Lista de backups creados con la utilidad en los ultimos 7 dias
dobackup --list-tags # Lista etiquetas
dobackup --list-tagged # Lista de etiquetas aplicadas a los droplets con la utilidad
Uso de etiquetas ( Opcional )
Se pueden utilizar etiquetas para hacer las copias de seguridad de varios servidores a la vez. Por defecto la etiqueta predeterminada es ‘dobackup’.
Ejemplos:
Para etiquetar un servidor con una etiqueta “dobackup”
dobackup --tag-server ubuntu-18-04 # '--tag-name dobackup' por defecto.
Etiquetar un servidor con la etiqueta “web-server”
dobackup --tag-server ubuntu-18-04 --tag-name web-servers
Realizar backup
El backup se puede reaalizar indicando el nombre del servidor o el id.
Ejemplos:
dobackup --backup ubuntu-18-04
dobackup --backup 1929129
dobackup --live-backup ubuntu-18-04 # copia de seguridad en vivo, copia de seguridad sin apagar la máquina virtual
dobackup --backup ubuntu-18-04 --keep # this won't be deleted with '--delete-older-than'
Para hacer una copia de seguridad de todos los servidores que tienen una etiqueta determinada.
dobackup --backup-all # --tag-name dobackup por defecto
dobackup --backup-all --tag-name web-servers
Para configurar un cron que realice un backup todos los servidores ‘etiquetados’ y borrar automáticamente backup antiguos, si las copias de seguridad se ralizaron correctamente.
0 1 * * * ~/.local/bin/dobackup --backup-all && ~/.local/bin/dobackup --delete-older-than 7
Restaurar backup
La restauración del backup se puede reaalizar indicando el nombre del servidor o el id.
Ejemplo:
dobackup --restore-droplet ubuntu-18-04 --restore-to "ubuntu-18-04--dobackup--2018-06-01 14:36:07"
Borrado de backups antiguos
Borrado de snatpshot especifico:
dobackup --delete-snap "ubuntu-1gb-sgp1-01--dobackup--2018-05-31 17:43:11" # indicando nombre o id
dobackup --delete-snap "111111111,222222222,3333333333" # indicando multiples nombres o id seprados por coma
Podemos ver todas las opcionees :
dobackup --help
Doctl
Utilidad que nos permite desde nuestro terminal realizar teras en Digital Ocean. repositorio de GitHub.
Instalación
MacOs
brew install doctl
Linux ( Binario )
- Nos posicinamos en el home de usuario.
- Descargamos la ultima version del repositorio.
- Descomprimimos el binario.
- Copiamos el binario al path de ejecución.
cd ~
wget https://github.com/digitalocean/doctl/releases/download/v1.65.0/doctl-1.65.0-linux-amd64.tar.gz
tar xf ~/doctl-1.65.0-linux-amd64.tar.gz
sudo mv ~/doctl /usr/local/bin
Una vez instalado necesitamos inicializar la conexión del siguiente modo:
doctl auth init
Esto solo se realiza una vez por cuenta, podemos administrar varias cuentas.
Uso
Ahora veremos algunos ejemplos de uso:
Listar todos los Droplets de nuestra cuenta:
doctl compute droplet list
Crear un Droplet:
doctl compute droplet create <name> --region <region-slug> --image <image-slug> --size <size-slug>
Nos vemos en el próximo post.