Migrate production server to GCP load balancers w/ Google-managed SSL certs
- Lingua principale
- Haskell
- Stelle
- 1.3k
- Fork
- 201
- Metriche di merge delle PR
- Nessuna PR unita negli ultimi 30g
Descrizione
Currently, the production CodeWorld server runs on a GCP Compute Engine instance with a static IP address, proxies the `codeworld-server` and `codeworld-game-server` binaries behind nginx, and runs certbot to keep the SSL certs up-to-date that are used by the nginx instance on the same server. This is a complex setup, with [detailed instructions](https://github.com/google/codeworld/blob/master/ServerSetup.md) that try to help with the setup process, but in practice are out of date. I'm afraid to set up a server from scratch, so I keep cloning and modifying the existing server instead.
Here's a better idea: the production server ONLY runs `codeworld-server` and `codeworld-game-server`, each on their own ports. These instances don't have public IP addresses at all. I use a standard GCP HTTPS load balancer with a Google-managed certificate (basically the same as a certbot certificate) to proxy access from the outside world. Much easier to set up, and trivial to scale to more build servers if necessary.
Guida per i contributori
Apri la guida per i contributori
Direzione di ricerca
Iniziare da ServerSetup.md e rivedere la configurazione attuale di produzione per nginx, certbot, codeworld-server e codeworld-game-server. Definire la configurazione del GCP HTTPS load balancer e del Google-managed certificate, quindi verificare che entrambi i servizi possano essere eseguiti senza IP pubblici e che l’accesso esterno funzioni tramite il load balancer.
Scritto dal modello di indicizzazione a partire dal testo della issue.
Valutazione
- Stack tecnologico
- gcp, nginx
- Ambito
- cloud, devops, infrastructure
- Tipo di issue
- Refactoring
- Difficoltà
- 5/5
- Tempo stimato
- Più di una settimana
- Stato di attività
- Ferma
- Chiarezza
- Abbastanza chiara
- Idoneità per principianti
- 25/100