3
7 Comments

What do you use for multi-server management?

https://github.com/ikusalic/tmux-connector

What do you use for multi-server management?

My current stack is Ruby on Rails on Digital Ocean.
I have a couple of servers that host a web app, and I was wondering if there was a solution for basically SSH-ing into multiple servers and running commands on all of them from my Macbook.

I've seen https://github.com/ikusalic/tmux-connector so far.

Any others?

submitted this linkon February 15, 2019
  1. 3

    Ansible is what you are looking for.
    https://www.ansible.com/

  2. 2

    Ansible. Way simpler and effective than the other devops stuff like puppet and chef.

  3. 2

    Use ansible to setup the environments, do it once the first time and then use CI like codeship to do deployments from then on out. I never need to SSH into server after setting that up and I insist on it for everything, even the funky clients that need FTP, you name it. Everything goes on git and deploys on push.

  4. 2

    Hi Reza, Tmux is a great general purpose tool, so yes its a good option for this, however, if you are doing this often, for example for deploying your app, you should consider using something else. In my case (Django / VueJS app) I use Docker and docker-compose and sometimes Kubernetes. All supported by DigitalOcean (they have a new managed Kubernetes service so you can setup a cluster very fast).

  5. 1

    Trying to multiplex across servers is a great idea - cutting your manual effort down is a wise move.
    But you should be aiming to eliminate the manual effort, and therefore the errors you make when you mis-key something.

    You should look into configuration management; it's a whole topic on its' own. As others have said, Ansible is the easiest configf management tool to get started with.

  6. 1

    Hi Reza!

    If you use Capistrano to deploy your app you can use it too to run commands on the servers, if you aren't using it you can use SSHKit directly (it's what Capistrano uses inside).

    https://capistranorb.com/documentation/advanced-features/ssh-kit/
    https://github.com/capistrano/sshkit/blob/master/EXAMPLES.md

  7. 1

    Are you deploying the same app to different servers?