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
Last revisionBoth sides next revision
cloudappliance:highavailabilitysetup [2021_06_18 09:22] smeadmincloudappliance:highavailabilitysetup [2023_06_22 05:41] – external edit 127.0.0.1
Line 1: Line 1:
-===== SME File Fabric HA Setup "2 x 2" ===== +===== SME File Fabric HA Setup "2 x 2" With Manual Failover ===== 
-== last edited on Jun. 182021 ==+ 
 +== last edited on October 172022 ==
 ==== Disclaimer ==== ==== Disclaimer ====
  
Line 78: Line 79:
  
 <WRAP center round info 100%> <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]].+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> </WRAP>
  
Line 127: Line 128:
  
 <WRAP center round info 100%> <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]].+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> 
 + 
 +<WRAP center round important 100%> 
 +There must always be exactly one cron node per File Fabric cluster. If the node that was acting as the cron node ceases to be available as part of the cluster, another node must be made the cron node
 </WRAP> </WRAP>
  
Line 164: Line 169:
 By default, the appliance memcached service listens only for connections from localhost, in order to share a memcache between the two application servers, we must change that. For redundancy we will do this on both smesql01 and smesql02. By default, the appliance memcached service listens only for connections from localhost, in order to share a memcache between the two application servers, we must change that. For redundancy we will do this on both smesql01 and smesql02.
  
-To allow other machines to connect, edit /etc/sysconfig/memcached. +<code>  
-<code># vi /etc/sysconfig/memcached </code>+cd /var/www/smestorage/containers/memcached/ 
 +sed -i 's/127.0.0.1/0.0.0.0/g' .env 
 +docker-compose down 
 +docker-compose up -d 
 +</code>
  
-Change the line  +=== Redis configuration === 
-OPTIONS="-l 127.0.0.1"+By default, the appliance Redis service listens only for connections from localhost, in order to share a Redis between the two application servers, we must change thatFor redundancy we will do this on both smesql01 and smesql02.
  
-to +<code>  
- +cd /var/www/smestorage/containers/redis/ 
-OPTIONS="-0.0.0.0" +sed -i 's/127.0.0.1/0.0.0.0/g' docker-compose.yml 
- +docker-compose down 
-Making the file look like this +docker-compose up -d 
- +</code>
-{{::8dedb4ec-8388-4166-aaeb-c07007c5e097.png?400|}} +
- +
-then restart the memcached service  +
-<code># systemctl restart memcached </code>+
  
 === MySQL configuration for HA === === MySQL configuration for HA ===
Line 310: Line 315:
 Using database replication allows you to quickly continue service if a database goes down.  Using database replication allows you to quickly continue service if a database goes down. 
  
 +<WRAP center round tip 100%>
 +See [[cloudappliance:https://docs.storagemadeeasy.com/cloudappliance/db_rep_monitoring|this page]] for information about monitoring database replication.
 +</WRAP>
 In MySQL replication, there is one master and one or more slave servers.
This means that all application server calls to the database are directed to the master server. The master server handles all queries and DB changes.
Any changes are then replicated to the slave database server(s).  In MySQL replication, there is one master and one or more slave servers.
This means that all application server calls to the database are directed to the master server. The master server handles all queries and DB changes.
Any changes are then replicated to the slave database server(s). 
  
Line 457: Line 465:
 In addition add a newline to define a remote memcached instance In addition add a newline to define a remote memcached instance
 <code>var $memcachehost='smesql-vip:11211';</code> <code>var $memcachehost='smesql-vip:11211';</code>
 +
 +In addition ensure the following variable is set for Redis:
 +<code>var $redishost='smesql-vip:6379';</code>
  
 Further we need to update the $dbuser and $password to match the <smestoreremote> user and password used when setting up the database in the previous section. Further we need to update the $dbuser and $password to match the <smestoreremote> user and password used when setting up the database in the previous section.
Line 479: Line 490:
 == memcached == == memcached ==
 <code> <code>
-# systemctl disable memcached +cd /var/www/smestorage/containers/memcached/ 
-# systemctl stop memcached+docker-compose down
 </code> </code>