Încerc să rezolv o problemă care pare a fi simplă, dar nu găsesc o arhitectură curată.
Problema: Am un client care încearcă să acceseze grafana într-o rețea locală.
|Router|------|Client
| |
|------|Grafana
Când vă aflați în spatele routerului (și, prin urmare, a firewall-ului), atunci puteți accesa cu ușurință grafana și îl puteți utiliza. Aș vrea să se întâmple același lucru când sunt în afara rețelei locale.
Client|------|Router|-------|Grafana
Soluție ușoară:
Soluția de bază este redirecționarea portului și pur și simplu deschiderea portului X pe router. Nu vreau această soluție pentru că nu pot deschide porturi (din alt motiv fără legătură).
O idee mai bună Mă gândesc să configurez următoarea arhitectură în care este introdus un nou server.
Client|------|Server|-------|Router|-------|Grafana
Ideea, este că Server va menține o conexiune cu Grafana. Acest lucru va preveni orice redirecționare a porturilor, deoarece serverul grafana face prima mișcare.
Apoi, dacă clientul dorește să acceseze grafana, va accesa serverul care îl va redirecționa către grafana.
După primul apel, în mod ideal aș dori ca clientul să stabilească o conexiune directă cu grafana, fără a trece prin server.
De asemenea, grafana este un exemplu/tuto, orice altă soluție cu comunicare http ar fi bine
Întrebări:
- Este posibil ?
- Se pare că există instrumente (CND, reverse proxy) dar nu se potrivesc exact nevoilor mele, sau poate pur și simplu nu știu cum să le folosesc?
- Ce instrumente să folosiți pe serverul A și B (websocket, socket.io, Nginx, Apache ...). Ambele servere folosesc Linux.
Mulțumiri !