3 ms·
If your problem is needing to synchronize a complex mesh of services when you upgrade stuff, the solution is to not have a complex mesh of services that needs m
by marginalia_nu 3y ago
If your problem is needing to synchronize a complex mesh of services when you upgrade stuff, the solution is to not have a complex mesh of services that needs managing.
I have a dist-directory, in it is a directory for with each release version, and a symlink current pointing to the current release. To deploy a new version, I create a new directory, unpack each service, and then redirect the symlink ... then "systemctl restart service-name".
- mdaverde 3y agoJust read your article: https://www.marginalia.nu/log/09-system-upgrade/ https://www.marginalia.nu/log/09-system-upgrade/ You got rid of a lot but where did the functionality for those tools go? I understand wanting to get rid of containers & Kubernetes, but did you rewrite/bake the functionality in to your app? or maybe not care about monitoring and logs temporarily for now?
- marginalia_nu 3y agoI mostly just got rid of the functionality. I do logs with grep and monitoring with vanilla prometheus. Kubernetes and the surrounding ecosystem can create many of the problems they set out to solve.