Come migrare da AWS a Hetzner
Guida passo passo per spostare la vostra infrastruttura cloud da Amazon Web Services a Hetzner, il provider di hosting tedesco dal prezzo vantaggioso.
Prerequisiti
- Un account AWS con infrastruttura documentata
- Un account Hetzner Cloud
- Accesso SSH a entrambi gli ambienti
- Competenze di base di amministrazione server
Passaggi
-
Inventariare le risorse AWS
Inventariate tutte le istanze EC2, i database, i bucket di storage e le configurazioni di rete del vostro account AWS.
-
Provisioning dei server Hetzner
Create in Hetzner Cloud server cloud o macchine dedicate equivalenti, adeguati ai requisiti del vostro carico di lavoro.
-
Migrare i database
Esportate i database da RDS o da istanze autogestite e importateli nei nuovi server database Hetzner.
-
Trasferire le applicazioni
Distribuite il codice applicativo e le configurazioni sulla nuova infrastruttura Hetzner tramite la vostra pipeline CI/CD.
-
Aggiornare il DNS
Puntate i record DNS del vostro dominio ai nuovi indirizzi IP dei server Hetzner, con un TTL ridotto per un rapido rollback.
-
Test e transizione
Eseguite test di integrazione completi su Hetzner, poi effettuate il passaggio definitivo e dismettete le risorse AWS.
Perché migrare da AWS a Hetzner?
AWS è un’azienda statunitense, quindi i dati che ospita, anche nelle sue region UE, sono esposti al CLOUD Act. Hetzner è un’azienda tedesca con data center propri in Germania e Finlandia, interamente all’interno dell’UE e del quadro GDPR. (Hetzner offre anche location cloud negli Stati Uniti e a Singapore; scegliete Norimberga, Falkenstein o Helsinki per mantenere i dati nell’UE.) Oltre alla sovranità dei dati, Hetzner è nettamente più conveniente: server cloud comparabili costano spesso una frazione degli equivalenti AWS, con prezzi trasparenti e senza costi di egress nascosti.
Hetzner alimenta inoltre i propri data center con energia rinnovabile e ha un forte impegno per la sostenibilità, il che la rende una scelta infrastrutturale responsabile.
Passaggi dettagliati della migrazione
Passaggio 1: inventariare le risorse AWS
Prima di migrare, create un inventario completo:
- Elencate tutte le istanze EC2 con le relative specifiche (CPU, RAM, storage)
- Documentate i database RDS (motore, versione, dimensione)
- Catalogate i bucket S3 e il loro utilizzo totale di storage
- Mappate la rete VPC, i security group e i load balancer
- Annotate eventuali servizi specifici di AWS (Lambda, SQS ecc.) per cui servono alternative
Usate aws cli o la Console AWS per esportare queste informazioni. I servizi strettamente legati ad AWS (come Lambda) richiederanno un refactoring.
Passaggio 2: provisioning dei server Hetzner
Tramite la Hetzner Cloud Console o la CLI hcloud:
- Create server cloud corrispondenti alle specifiche delle vostre istanze EC2
- Scegliete la località del data center (Falkenstein, Norimberga o Helsinki)
- Configurate firewall equivalenti ai vostri security group AWS
- Configurate reti private per la comunicazione tra server
- Collegate volumi per le esigenze di storage persistente
Passaggio 3: migrare i database
Per database PostgreSQL o MySQL:
- Create un dump del database su AWS:
pg_dumpomysqldump - Trasferite il file di dump su Hetzner tramite
scporsync - Importatelo sul server Hetzner:
psqlomysql < dump.sql - Verificate il numero di righe e l’integrità dei dati
- Impostate temporaneamente una replica se vi serve una migrazione senza downtime
Passaggio 4: trasferire le applicazioni
Distribuite il vostro stack applicativo su Hetzner:
- Usate la vostra pipeline CI/CD esistente (GitLab CI, GitHub Actions) puntandola verso Hetzner
- Installate le dipendenze e configurate le variabili d’ambiente
- Configurate un reverse proxy (nginx/Caddy) e i certificati TLS (Let’s Encrypt)
- Per sostituire S3, valutate Hetzner Object Storage o un’istanza MinIO self-hosted
Passaggio 5: aggiornare il DNS
Preparatevi al passaggio:
- Abbassate il TTL DNS a 60 secondi almeno 24 ore prima della transizione
- Aggiornate i record A/AAAA in modo che puntino agli IP Hetzner
- Aggiornate eventuali record CNAME per i sottodomini
- Monitorate la propagazione DNS con strumenti come
digo whatsmydns.net
Passaggio 6: test e transizione
- Eseguite test di integrazione e di carico completi sull’ambiente Hetzner
- Effettuate una sincronizzazione finale del database se usate la replica
- Cambiate il DNS e verificate che il traffico arrivi a Hetzner
- Monitorate attentamente log e metriche dell’applicazione per 48 ore
- Dismettete le risorse AWS solo dopo averne confermato la stabilità
Consigli per una migrazione senza intoppi
- Usate il provider Terraform di Hetzner per deployment infrastructure-as-code
- Valutate un periodo di esecuzione parallela in cui entrambi gli ambienti gestiscono il traffico
- Configurate il monitoraggio (Prometheus, Grafana) su Hetzner prima della transizione
- Conservate le risorse AWS per 30 giorni dopo la migrazione come rete di sicurezza per il rollback
- Mettete in conto possibili costi di egress da AWS durante la fase di trasferimento dei dati
Ti è stato utile?