Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
blocks:server:mirror [2024-10-22 09:34] – ↷ Links adapted because of a move operation admin | blocks:server:mirror [2025-10-01 09:53] (current) – [Introduction] admin | ||
---|---|---|---|
Line 1: | Line 1: | ||
====== Blocks Mirroring Service ====== | ====== Blocks Mirroring Service ====== | ||
- | Our Linux-based server | + | Our Linux-based server supports a hardware |
===== Introduction ===== | ===== Introduction ===== | ||
Line 13: | Line 13: | ||
The first thing you should do if any of these components appear to not function is to make sure they' | The first thing you should do if any of these components appear to not function is to make sure they' | ||
- | Once you determined that power' | + | Once you determined that power' |
If you suspect that the main switch is the culprit, replace it with another similar switch, then restart the Blocks server, to see if the problem goes away. Having a backup switch ready to go in the rack may be a good idea to safeguard against such problems. | If you suspect that the main switch is the culprit, replace it with another similar switch, then restart the Blocks server, to see if the problem goes away. Having a backup switch ready to go in the rack may be a good idea to safeguard against such problems. | ||
Line 21: | Line 21: | ||
However, if your Blocks server dies, and won't come back by turning power off and back on again, things are a bit more difficult. Assuming you have an up-to-date backup of your Blocks root directory, as well as other relevant server settings, you can replace the server with a new one, and bring it back to life using those backups. However, that may take a while to accomplish, rendering your entire Blocks installation non-functional in the meantime. | However, if your Blocks server dies, and won't come back by turning power off and back on again, things are a bit more difficult. Assuming you have an up-to-date backup of your Blocks root directory, as well as other relevant server settings, you can replace the server with a new one, and bring it back to life using those backups. However, that may take a while to accomplish, rendering your entire Blocks installation non-functional in the meantime. | ||
- | A better option is to have a spare server sitting in the rack all along, just as suggested for the main switch above. If you're sufficiently concerned about your system' | + | A better option is to have a spare server sitting in the rack all along, just as suggested for the main switch above. If you're sufficiently concerned about your system' |
{{ : | {{ : | ||
- | The new Blocks Mirroring Service will keep your spare computer up to date with any changes applied to Blocks. As soon as you make any changes, such as editing a block or adding a new spot, those changes are copied across to the mirror server. Note, in the illustration above, that the main Blocks server is still connected and used as it was in the stand-alone illustration shown at the beginning of this article. The Mirror server uses a //second// network port as a backdoor connection to your Blocks server. This backdoor is used as a secure channel for copying all changes across as the system runs. | + | The Blocks Mirroring Service will keep your spare computer up to date with any changes applied to Blocks. As soon as you make any changes, such as editing a block or adding a new spot, those changes are copied across to the mirror server. Note, in the illustration above, that the main Blocks server is still connected and used as it was in the stand-alone illustration shown at the beginning of this article. The Mirror server uses a //second// network port as a backdoor connection to your Blocks server. This backdoor is used as a secure channel for copying all changes across as the system runs. |
Furthermore, | Furthermore, | ||
Line 69: | Line 69: | ||
{{ : | {{ : | ||
- | Restart your server to make sure that everything still works as before. Then use the [[blocks: | + | Restart your server to make sure that everything still works as before. Then use the [[blocks: |
< | < | ||
Line 135: | Line 135: | ||
===== Cloning the Blocks Server ===== | ===== Cloning the Blocks Server ===== | ||
- | Once you have configured your main Blocks Server as described above and have it all working as desired, it's time to make the Mirror Server by cloning the Blocks server. This is done using a program called Clonezilla. Read [[blocks: | + | Once you have configured your main Blocks Server as described above and have it all working as desired, it's time to make the Mirror Server by cloning the Blocks server. This is done using a program called Clonezilla. Read [[blocks: |
You'll also need a second USB storage device. This may be a USB stick with enough room to store the actively used data from your Blocks server' | You'll also need a second USB storage device. This may be a USB stick with enough room to store the actively used data from your Blocks server' | ||
Line 231: | Line 231: | ||
The computer will shut down automatically once a clone has been made. Remove the USB sticks/ | The computer will shut down automatically once a clone has been made. Remove the USB sticks/ | ||
- | [[blocks: | + | [[blocks: |
Line 268: | Line 268: | ||
* Server Disk Space. Indicates the amount of free space on the Blocks Server itself. This also makes sens to keep an eye on – especially before adding a significant amount of new content. | * Server Disk Space. Indicates the amount of free space on the Blocks Server itself. This also makes sens to keep an eye on – especially before adding a significant amount of new content. | ||
* Server Time. Shows the current time of the clock in the Blocks Server. If your server has Internet access, this is generally adjusted automatically. If not, you may want to check this every few monts to make sure that it is reasonably accurate. | * Server Time. Shows the current time of the clock in the Blocks Server. If your server has Internet access, this is generally adjusted automatically. If not, you may want to check this every few monts to make sure that it is reasonably accurate. | ||
+ | * Sync Errors. Cumulative count of data sync errors that have occurred, if any. Check the Mirror log file for details. | ||
- | The SYNCHRONIZE NOW button can be used to force a full synchronization. Use this after making manual changes to the files in the / | + | The " |
===== Testing the Mirror Server ===== | ===== Testing the Mirror Server ===== | ||
Line 328: | Line 329: | ||
* Set java.util.logging.FileHandler.level to //ERROR// for less verbose logging, or //INFO// for more details (sometimes useful when troubleshooting). | * Set java.util.logging.FileHandler.level to //ERROR// for less verbose logging, or //INFO// for more details (sometimes useful when troubleshooting). | ||
- | The settings under //logging// follow | + | The following additional, advanced |
+ | < | ||
+ | interface: enp2s0 | ||
+ | subnet: 192.168.0.0/ | ||
+ | </ | ||
- | =====Troubleshooting===== | + | :!: **NOTE**: There are two spaces at the beginning of each line, as required when used under the " |
- | The server-to-server connection relies on that connection using self-assigned ("link local" | + | |
- | Some server class computers | + | * The // |
+ | * The //subnet// setting lets you specify a non link local subnet (in CIDR notation) for use as the data synchronization backdoor. This is useful in cases where you may want to use this interface for other purposes, such as remote management | ||
- | {{ : | ||
+ | The settings under //logging// follow the java.util.logging standard, sometimes referred to as JUL, allowing you to use any settings available there, for example to log to an external log handler. | ||
+ | |||
+ | |||
+ | =====Troubleshooting===== | ||
+ | Unless the advanced //subnet// setting is used (see above), the server-to-server backdoor connection assumes the use of self-assigned ("link local" | ||
+ | * Disable any such interface(s). in some cases this may need to be done in the computer' | ||
+ | * Change their addresses to keep them out of this address range. | ||
+ | * Use the advanced // | ||
=== Verifying over SSH === | === Verifying over SSH === | ||
Line 346: | Line 358: | ||
</ | </ | ||
+ | === Custom path to Blocks' | ||
+ | The Mirror service assumes that the main Blocks executable file (named " | ||
=====Implementation Notes===== | =====Implementation Notes===== |