Differences

This shows you the differences between two versions of the page.

Link to this comparison view

Both sides previous revisionPrevious revision
Next revision
Previous revision
Next revisionBoth sides next revision
cloudappliance/mastermasterdb [2020_02_14 15:36] – [Part IV] dancloudappliance/mastermasterdb [2021_06_18 09:17] smeadmin
Line 1: Line 1:
 ===== File Fabric HA Master - Master Database with Automatic Failover ===== ===== File Fabric HA Master - Master Database with Automatic Failover =====
-== last updated Nov222019 ==+== last updated Feb142020 ==
  
 ==== Disclaimer ==== ==== Disclaimer ====
 The information in this document is provided on an as-is basis. You use it at your own risk. We accept no responsibility for errors or omissions, nor do we have any obligation to provide support for implementing or maintaining the configuration described here. Furthermore, we do not warrant that the design presented here is appropriate for your requirements. The information in this document is provided on an as-is basis. You use it at your own risk. We accept no responsibility for errors or omissions, nor do we have any obligation to provide support for implementing or maintaining the configuration described here. Furthermore, we do not warrant that the design presented here is appropriate for your requirements.
  
-SME designs, implements and supports HA File Fabric solutions for customers on a paid professional services basis. For more information please contact sales@storagemadeeasy.com +SME designs, implements and supports HA (High Availability) File Fabric solutions for customers on a paid professional services basis. For more information please contact sales@storagemadeeasy.com 
  
 <WRAP center round important 100%> <WRAP center round important 100%>
Line 102: Line 102:
 </code> </code>
  
-Place a "#" infront of the seven jobs listed, when you are done, it should look like this:+Place a "#" infront of the lines to mirror the output below: 
 + 
 +``` 
 +MAILTO='' 
 +#Ansible: 
 +#* * * * * /var/www/smestorage/cron/scheduler_minute.pl 
 +#Ansible: #3 
 +#5 4 * * * /var/www/smestorage/cron/scheduler_daily.pl 
 +#Ansible: #2 
 +#* * * * * /var/www/smestorage/cron/taskmanager.pl 
 +#Ansible: #5 
 +#10 2 1 * * /var/www/smestorage/cron/scheduler_monthly.pl 
 +#Ansible: #4 
 +#5 * * * * /var/www/smestorage/cron/scheduler_hour.pl 
 +#Ansible: #7 
 +30 1 * * * /var/www/smestorage/cron/logroller.pl 
 +#Ansible: #6 
 +#10 * * * * /var/www/smestorage/cron/scheduler.pl 
 +* * * * * /var/www/smestorage/cron/scheduler_syncnodes.pl 
 +``` 
 + 
 +<WRAP center round info 100%> 
 +Please note this information above was updated with the 2106 release of the File Fabric. Please see this [[cloudappliance/high-availability-cron|guide for further information]]. 
 +</WRAP>
  
-{{::407ae286-9576-4a13-97bb-e2f0489a2a17.png?400|}} 
  
 === iptables for dbservers === === iptables for dbservers ===
Line 110: Line 132:
 On both smesql01 and smesql02, you must update iptables to allow incoming connections to mariadb, do the following. On both smesql01 and smesql02, you must update iptables to allow incoming connections to mariadb, do the following.
  
-As root:+As root we will edit the iptables file to add the following lines:
  
 +/etc/sysconfig/iptables :
 <code> <code>
-iptables-save > /var/tmp/iptables_backup_`date -I` +... 
-ipt_line=`iptables -RH-Firewall-1-INPUT ---line-numbers | grep REJECT | awk '{print $1}'+-RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT 
-insert_line=`expr $ipt_line 1` +-RH-Firewall-1-INPUT -p tcp -m state --state NEW -m tcp --dport 11211 -j ACCEPT 
-iptables -RH-Firewall-1-INPUT $insert_line -p tcp -m state --state NEW -m tcp --dport 11211 -j ACCEPT+... 
 +COMMIT 
 +</code> 
 +Then issue a restart:
  
-iptables -I RH-Firewall-1-INPUT $insert_line -p tcp -m state --state NEW -m tcp --dport 3306 -j ACCEPT +<code>  
- +systemctl restart iptables 
-iptables-save > /etc/sysconfig/iptables+systemctl restart docker
 </code> </code>
  
Line 350: Line 376:
 We will also need to allow multicast traffic (244.0.0.0) through our iptables firewall, as well as adjust selinux to allow keepalived to operate. Finally, we will add a user (keepalived_script) which keepalived will use.  We will also need to allow multicast traffic (244.0.0.0) through our iptables firewall, as well as adjust selinux to allow keepalived to operate. Finally, we will add a user (keepalived_script) which keepalived will use. 
  
 +/etc/sysconfig/iptables :
 <code> <code>
-iptables -I INPUT -i eth0 -d 224.0.0.0/8 -p vrrp -j ACCEPT +... 
-iptables-save /etc/sysconfig/iptables +-A RH-Firewall-1-INPUT -p vrrp -j ACCEPT 
-semanage permissive -keepalived_t +... 
-groupadd keepalived_script +COMMIT 
-useradd -s /sbin/nologin -g keepalived_script -M keepalived_script+</code
 +Then issue restart: 
 + 
 +<code>  
 +systemctl restart iptables 
 +systemctl restart docker
 </code> </code>
  
Line 611: Line 643:
  
 == crontab == == crontab ==
-All of smestorage's cron jobs should run on one of the application  servers; only one of smestorage's cron jobs, logroller, should run on the other  application server.+The majority of smestorage's cron jobs should run on one of the application servers; only one of smestorage's cron jobs, logroller, should run on the other  application server.
 **As root on smeweb02 only:** **As root on smeweb02 only:**
 <code> <code>
Line 617: Line 649:
 </code> </code>
  
-Place a # in front of six of the seven jobs listed in the crontab schedule; **do not place a in front of the logroller job**.+Your crontab should mirror the following: 
 + 
 +``` 
 +MAILTO='' 
 +#Ansible: 
 +#* * * * * /var/www/smestorage/cron/scheduler_minute.pl 
 +#Ansible: #3 
 +#5 4 * * * /var/www/smestorage/cron/scheduler_daily.pl 
 +#Ansible: #2 
 +#* * * * * /var/www/smestorage/cron/taskmanager.pl 
 +#Ansible: #5 
 +#10 2 1 * * /var/www/smestorage/cron/scheduler_monthly.pl 
 +#Ansible: #4 
 +#5 * * * * /var/www/smestorage/cron/scheduler_hour.pl 
 +#Ansible: #7 
 +30 1 * * * /var/www/smestorage/cron/logroller.pl 
 +#Ansible: #6 
 +#10 * * * * /var/www/smestorage/cron/scheduler.pl 
 +* * * * * /var/www/smestorage/cron/scheduler_syncnodes.pl 
 +``` 
 + 
 +<WRAP center round info 100%> 
 +Please note this information above was updated with the 2106 release of the File Fabric. Please see this [[cloudappliance/high-availability-cron|guide for further information]]. 
 +</WRAP>
  
 Restart both servers, so on both smeweb01 and smeweb02, execute a reboot. Restart both servers, so on both smeweb01 and smeweb02, execute a reboot.