uncloud/doc/README-how-to-configure-remote-uncloud-clients.org

29 lines
1.7 KiB
Org Mode
Raw Normal View History

2020-04-06 20:06:34 +00:00
* What is a remote uncloud client?
** Systems that configure themselves for the use with uncloud
2020-04-09 10:08:11 +00:00
** Examples are VMHosts, VPN Servers, cdist control server, etc.
2020-04-06 20:06:34 +00:00
* Which access do these clients need?
** They need read / write access to the database
2020-04-09 10:08:11 +00:00
* Possible methods
** Overview
| | pros | cons |
| SSL based | Once setup, can access all django parts natively, locally | X.509 infrastructure |
| SSH -L tunnel | All nodes can use [::1]:5432 | SSH setup can be fragile |
| ssh djangohost manage.py | All DB ops locally | Code is only executed on django host |
| https + token | Rest alike / consistent access | Code is only executed on django host |
2020-05-05 13:19:04 +00:00
| from_django | Everything is on the django host | main host can become bottleneck |
2020-04-09 10:08:11 +00:00
** remote vs. local Django code execution
- If manage.py is executed locally (= on the client), it can
check/modify local configs
- However local execution requires a pyvenv + packages + db access
2020-04-09 10:09:38 +00:00
- Local execution also *could* make use of postgresql notify for
triggering actions (which is quite neat)
2020-04-09 10:08:11 +00:00
- Remote execution (= on the primary django host) can acess the db
via unix socket
- However remote execution cannot check local state
2020-05-05 13:19:04 +00:00
** from_django
- might reuse existing methods like celery
- reduces the amount of things to be installed on the client to
almost zero
- follows the opennebula model
- has a single point of failurebin