Want to do a two server setup

Discussion in 'Installation/Configuration' started by thisiszeev, May 30, 2025.

  1. thisiszeev

    thisiszeev Member HowtoForge Supporter

    I know ISPC can do multi server. But reading through all the docs and tuts I can, I can't find anything that comes close to what I want to do...

    I want to have two servers... let's call them

    server1.mydomain.tld
    server2.mydomain.tld

    I want to also run server1 as ns1.mydomain.tld and server2 as ns2.mydomain.tld

    I want both servers to run web, mail, mysql etc.

    I want to be able to manage both servers from either server. I will setup a name: panel.mydomain.tld which issues out the ip of each server in a round robin.

    When a new DNS zone/record is created I want to have it rendered on both servers regardless of which server I do it on?

    Am I right in saying that can do a standard perfect server install on each server, and configure the mysql access for the other servers fqdn and ip on each server, or will running two databases for ISP Config not work?

    My hope is that I can do this, as I want to simply add server3, server4 etc etc as I keep growing, but make each each server a panel so if one server goes down, the client can still make changes/addition/deletions as he needs and it happens when the relevant server is restored?
     
  2. till

    till Super Moderator Staff Member ISPConfig Developer

    It's the second link fromthe top of the multiserver guide list at ispconfig.org:

    https://www.howtoforge.com/tutorial...abase-cluster-on-debian-8.4-with-ispconfig-3/

    But this guide and setup is really old and I would not set it up like this anymore today.

    You can have a panel on both servers, but this requires a highly available MariaDB master database. Both panels must connect to the same master DB, as there is only one entry point from which the other nodes fetch updates. This entry point has to ensure that there are no duplicate IDs in the master database, while all server parts must connect to their local databases.

    But normally it does not make much sense to set it up like this, what makes more sense and is more reliable over time is:

    1) Have a dedicated (small) master server.
    2) Use virtualization so you can snapshot, backup, and restore this server within a few minutes.
    3) Let all other nodes connect to this server.

    If the master were ever down, this wouldn't affect the slave nodes anyway. And that the master goes down is unlikely, and in that event, you can restore it at any time within a few minutes, as you used virtualization. In real life, this setup will give you less downtime than setting up a complicated replicated setup as the added complexity for the replication setup will more likely cause you issues that the single master node with good backup strategy.
     
  3. thisiszeev

    thisiszeev Member HowtoForge Supporter

    I see.. was thinking having a dedicated panel server would be the route to go...

    You know it is possible to setup an offset to the database ID increments. So server1 could be odd numbers and server2 could be even numbers.

    I have done this with very large wordpress setup where there were 3 databases. Database 1 started at 1 and incremented by 10, db 2 started at 2 and inc by 10 and 3 started at 3 and inc by 10.

    I opted to inc by 10 so that it gives space to add 7 more database servers for the client as the grow. Plan for scalability.

    But I think your advice of having a dedicated panel is best.

    So I would install just the panel on server0, and then server1 and 2 I install everything else. Then setup the hosts file on all three and configure the root user details on server0 for root@ip and root@serverx
     
  4. till

    till Super Moderator Staff Member ISPConfig Developer

    Yes, I know as that's what is used in the guide I posted the link.
     
    thisiszeev likes this.
  5. thisiszeev

    thisiszeev Member HowtoForge Supporter

    When you said you wouldn't set up like this, I didn't bother to click... lol

    I have opted to rather have a high availability VPS for the panel, and then server1, server2 as slaves and then I can just add server3 etc as I scale.

    I am busy doing a "test" setup RN.

    Also want to play with remote filesystems with ISPC. That's gonna require some voodoo so that if the mount goes down and doesn't come back online, then services like Apache2, MariaDB etc must be halted until the remote filesystem comes back online.
     

Share This Page