3box / 3box/keramik

Enable Ingress Configuration

Aperta
#84 2 commenti 1 reazione 1 assegnatario Rivendicata da @kammerdiener Vedi su GitHub
Lingua principale
Rust
Stelle
5
Fork
2
Metriche di merge delle PR
Nessuna PR unita negli ultimi 30g

Descrizione

Keramik needs to be able to expose Ceramic pods with public address outside of the network.

Ceramic pods run IPFS which wants to have a public IP so that other nodes in the network (not inside of k8s) can peer with them. Load balancing is not a viable solution as the IPFS protocols have their own security layer that require IPs to map to a single known Peer. If multiple peers repsond on a single IP IPFS will refuse to connect.

Keramik should NOT be responsible to configuring and managing ingress to the pods. However it should make it easy/possible to existing ingress system to discover and expose Ceramic pods.

DOD:

- Documentation showing how to configure ingress to Ceramic pods individually for AWS/GKE
- Each API has its own ingress port (preferably on the same IP per node)
- TCP 4001 for IPFS
- UDP 4001 for IPFS (optional)
- HTTP 5001 for Ceramic API
- HTTP 7007 for ComposeDB API
- Ports are configurable, the above ports are defaults only

If the UDP port proves to be difficult to implement we can skip it for now and revisit later.

Guida per i contributori

Nessuna guida per i contributori indicizzata per questo repository

Direzione di ricerca

The issue is about enabling ingress configuration for Ceramic pods in a Kubernetes operator. Start by examining the existing pod and service definitions in the Rust codebase to understand how pods are currently exposed. Research Kubernetes ingress controllers and how to expose TCP/UDP ports on AWS/GKE. The 'done' state includes documentation for AWS/GKE ingress setup and configurable port mappings for IPFS and Ceramic APIs.

Scritto dal modello di indicizzazione a partire dal testo della issue.

Valutazione

Stack tecnologico
aws, docker, gcp, google-cloud, kubernetes, rust
Ambito
backend, cloud, devops, infrastructure, networking
Tipo di issue
Funzionalità
Difficoltà
4/5
Tempo stimato
3-5 giorni
Stato di attività
Ferma
Chiarezza
Abbastanza chiara
Idoneità per principianti
35/100

Ricevi le nuove issue nella tua casella

Un breve riepilogo di issue GitHub adatte ai principianti.