Because the software program liable for HA cluster will handle system providers like Plesk, nginx, and so forth, we must always disable all these providers as they shouldn’t be began mechanically with system. With the subsequent command, we disable auto-starting for these providers, which must be executed on the each nodes.
ha-node1 and ha-node2# for i in
plesk-ip-remapping
plesk-php74-fpm.service
plesk-php82-fpm.service
plesk-web-socket.service
plesk-task-manager.service
plesk-ssh-terminal.service
plesk-repaird.socket
sw-engine.service
sw-cp-server.service
psa.service
cron.service
xinetd.service
nginx.service
apache2.service httpd.service
mariadb.service mysql.service postgresql.service
named.service bind9.service named-chroot.service
postfix.service;
do systemctl disable $i && systemctl cease $i;
executed
As an output, you may even see traces like “Did not disable unit: Unit file bind9.service doesn’t exist”. This isn’t a crucial error as a result of the command comprises totally different title of the identical providers for various OSes like CentOS and Ubuntu or title of various providers that gives comparable performance (like MySQL and MariaDB). In case you have put in any further part with Plesk like “php80”, you additionally have to disable a service for that part if a service was added to the server by the Plesk part.
Chances are you’ll run `ps ax` to double test that there aren’t any extra operating providers associated to Plesk or any of its part.
Within the earlier weblog submit, you may see how it’s attainable to repeat the Plesk “vhosts” listing to the NFS storage. For HA cluster, we have to do the identical and some further steps for the remainder of the Plesk directories to make them obtainable for nodes of the HA cluster.
On the NFS server, configure exporting of “/var/nfs/plesk-ha/plesk_files” the identical manner as “/var/nfs/plesk-ha/vhosts”. After configuring, it is best to see the directories can be found for distant mounting from the interior community.
ha-nfs# exportfs -v
/var/nfs/plesk-ha/vhosts
10.0.0.0/24(sync,wdelay,cover,no_subtree_check,sec=sys,rw,safe,no_root_squash,no_all_squash)
/var/nfs/plesk-ha/plesk_files
10.0.0.0/24(sync,wdelay,cover,no_subtree_check,sec=sys,rw,safe,no_root_squash,no_all_squash)
When exporting is configured, we might want to copy Plesk to the NFS. For that, we’ve to pre-create a listing on every node for mounting NFS storage:
ha-node1 and ha-node2# mkdir -p /nfs/plesk_files
As we beforehand have determined to think about the ha-node1 as an energetic node, the subsequent instructions must be executed on the ha-node1. To repeat present vhosts listing, run the subsequent instructions:
ha-node1# mount -t nfs -o "laborious,timeo=600,retrans=2,_netdev" 10.0.0.12:/var/nfs/plesk-ha/vhosts /mnt
ha-node1# cp -aRv /var/www/vhosts/* /mnt
ha-node1# umount /mnt
Additionally, as we beforehand have determined to think about the ha-node1 as an energetic node, the subsequent instructions must be executed on the ha-node1.
ha-node1# mount -t nfs -o "laborious,timeo=600,retrans=2,_netdev" 10.0.0.12:/var/nfs/plesk-ha/plesk_files /nfs/plesk_files
ha-node1# mkdir -p /nfs/plesk_files/and so forth/{apache2,nginx,psa,sw,sw-cp-server,domainkeys,psa-webmail}
ha-node1# cp -a /and so forth/passwd /nfs/plesk_files/and so forth/
ha-node1# cp -aR /and so forth/apache2/. /nfs/plesk_files/and so forth/apache2
ha-node1# cp -aR /and so forth/nginx/. /nfs/plesk_files/and so forth/nginx
ha-node1# cp -aR /and so forth/psa/. /nfs/plesk_files/and so forth/psa
ha-node1# cp -aR /and so forth/sw/. /nfs/plesk_files/and so forth/sw
ha-node1# cp -aR /and so forth/sw-cp-server/. /nfs/plesk_files/and so forth/sw-cp-server
ha-node1# cp -aR /and so forth/sw-engine/. /nfs/plesk_files/and so forth/sw-engine
ha-node1# cp -aR /and so forth/domainkeys/. /nfs/plesk_files/and so forth/domainkeys
ha-node1# cp -aR /and so forth/psa-webmail/. /nfs/plesk_files/and so forth/psa-webmail
ha-node1# mkdir -p /nfs/plesk_files/var/{spool,named}
ha-node1# cp -aR /var/named/. /nfs/plesk_files/var/named
ha-node1# cp -aR /var/spool/. /nfs/plesk_files/var/spool
ha-node1# mkdir -p /nfs/plesk_files/choose/plesk/php/{7.4,8.2}/and so forth
ha-node1# cp -aR /choose/plesk/php/7.4/and so forth/. /nfs/plesk_files/choose/plesk/php/7.4/and so forth
ha-node1# cp -aR /choose/plesk/php/8.2/and so forth/. /nfs/plesk_files/choose/plesk/php/8.2/and so forth
ha-node1# mkdir -p /nfs/plesk_files/usr/native/psa/{admin/conf,admin/plib/modules,and so forth/modules,var/modules,var/certificates}
ha-node1# cp -aR /usr/native/psa/admin/conf/. /nfs/plesk_files/usr/native/psa/admin/conf
ha-node1# cp -aR /usr/native/psa/admin/plib/modules/. /nfs/plesk_files/usr/native/psa/admin/plib/modules
ha-node1# cp -aR /usr/native/psa/and so forth/modules/. /nfs/plesk_files/usr/native/psa/and so forth/modules
ha-node1# cp -aR /usr/native/psa/var/modules/. /nfs/plesk_files/usr/native/psa/var/modules
ha-node1# cp -aR /usr/native/psa/var/certificates/. /nfs/plesk_files/usr/native/psa/var/certificates
ha-node1# umount /nfs/plesk_files
We have to replace the passwd and group file on the NFS storage each time when Plesk updates the system customers. For that, we’ll create a number of occasion handlers for eventualities like area creating, subscription updating, and so forth. Occasion handlers are saved in a Plesk database, which implies we have to run the subsequent command solely on energetic node.
As we beforehand have determined to think about the ha-node1 as an energetic node, the subsequent instructions must be executed on the ha-node1.
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event phys_hosting_create
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event phys_hosting_update
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event phys_hosting_delete
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event ftpuser_create
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event ftpuser_update
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event ftpuser_delete
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event site_subdomain_create
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event site_subdomain_update
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event site_subdomain_delete
ha-node1# plesk bin event_handler --create -command "/bin/cp /and so forth/passwd /nfs/plesk_files/and so forth/passwd" -priority 50 -user root -event site_subdomain_move