5. Configuring LOCKSS 2.x for Migration
The next task in the migration process is to configure LOCKSS 2.x for migration on your LOCKSS 2.x host.
5.1. Importing Configuration From LOCKSS 1.x
The first part of this task is to make your LOCKSS 1.x configuration file available to your LOCKSS 2.x instance.
This depends on your Migration Scenario:
If you are doing a New-Host Migration:
Copy the LOCKSS 1.x configuration file from
/etc/lockss/config.daton your LOCKSS 1.x host to some file path on your LOCKSS 2.x host, symbolically represented here as/path/to/lockss1_config_file.dat. Although you can use any path on your LOCKSS 2.x host, we recommend/tmp/v1config.dat.For example, you might use scp on your LOCKSS 1.x host:
scp /etc/lockss/config.dat <username>@<lockss2host>:/path/to/lockss1_config_file.dator something similar.
If you are unable to copy the LOCKSS 1.x configuration file to your LOCKSS 2.x, you can still configure LOCKSS 2.x for migration, but you will be prompted to supply more information, which you will have to enter accurately from the corresponding LOCKSS 1.x values.
LOCKSS 2.x host as root Ensure that the LOCKSS 1.x configuration file
/path/to/lockss1_config_file.datis readable by all on the LOCKSS 2.x host. For example, you can do this asrooton the LOCKSS 2.x host with:chmod +r /path/to/lockss1_config_file.dat
If you are doing a Same-Host Migration, the LOCKSS 2.x configuration script will find the LOCKSS 1.x configuration file directly at /etc/lockss/config.dat, so you do not need to do anything in this step.
5.2. Running configure-lockss --migrate
The second part of this task is to run the configure-lockss tool with the --migrate option on your LOCKSS 2.x host.
This will proceed largely as described in Chapter 4 (Configuring LOCKSS) of the LOCKSS 2.x System Manual, but with some notable exceptions described below:
Follow the instructions in Section 4.1 (Gathering Configuration Information) of the LOCKSS 2.x System Manual.
Follow these steps (modified from Section 4.2 of the LOCKSS 2.x System Manual):
LOCKSS 2.x host as lockss Navigate to the LOCKSS Installer Directory, symbolically:
cd <LOCKSS_INSTALLER_DIR>LOCKSS 2.x host as lockss Run this command:
dry run migration only If you are doing a Dry Run Migration:
scripts/configure-lockssall other migration scenarios In all other cases:
scripts/configure-lockss --migrate
Follow the instructions in Section 4.3 (Kubernetes Settings) of the LOCKSS 2.x System Manual.
This step depends on your Migration Scenario:
If you are doing a New-Host Migration, follow these steps:
You will receive the following prompt:
Did you copy a LOCKSS 1.x config.dat file to this host?
Enter Y for "yes" or N for "no", or hit Enter to accept the default in square brackets.
If you enter Y for "yes", you will then receive the following prompt:
Location of copied LOCKSS 1.x config.dat file
Enter the path of the copied LOCKSS 1.x configuration file, symbolically represented as
/path/to/lockss1_config_file.databove, or hit Enter to accept the default in square brackets (/tmp/v1config.dat).If you enter N for "no", you will have to manually and accurately enter a number of values reflecting your LOCKSS 1.x configuration (instead of the values being imported directly from your copied LOCKSS 1.x configuration file).
Follow all instructions in Section 4.4 (Network Settings) of the LOCKSS 2.x System Manual.
If you are doing a Same-Host Migration, follow these steps:
You will receive this message:
Found /etc/lockss/config.datconfirming that the LOCKSS 1.x configuration file was detected.
Follow the instructions in the following sections of the LOCKSS 2.x System Manual:
Section 4.4.1 (Hostname)
Section 4.4.2 (IP Address)
Section 4.4.3 (Initial UI Subnet)
Section 4.4.4 (LCAP Port)
After the LCAP port prompt, you will receive the following prompt:
Temporary LOCKSS 2.x LCAP port
Enter an LCAP port different from the one used by LOCKSS 1.x, for use during migration, or hit Enter to accept the suggested value in square brackets.
Follow the instructions in Section 4.4.5 (Network Address Translation) of the LOCKSS 2.x System Manual.
Follow all instructions in the remainder of Chapter 4 of the LOCKSS 2.x System Manual, namely Section 4.5 (Mail Settings) through Section 4.12 (Final Steps of configure-lockss).
5.3. Running LOCKSS 2.x
Now start the LOCKSS 2.x system. Follow these steps:
LOCKSS 2.x host as lockss Run the following command on your LOCKSS 2.x host (still as the
lockssuser, still in the LOCKSS Installer Directory):scripts/start-lockss --waitIf the startup process goes well, you will see:
LOCKSS services are ready; AUs may still be loading.
and control will be returned to the command line.
Tip
During this first startup, hundreds of megabytes of container images will be downloaded, which can take many minutes on a slow network.
This step depends on your Migration Scenario:
If you are doing a New-Host Migration, follow these steps:
Log into the LOCKSS 2.x Configuration Service Web user interface as a way to verify that the LOCKSS 2.x stack has come up successfully. To do this, in a browser, go to the URL
http://<lockss2host>:24602/DaemonStatus, where<lockss2host>represents the hostname of your LOCKSS 2.x host (for examplelockss2.myuniversity.edu), and log in using the Web user interface username and password you specified during the LOCKSS 2.x configuration process.If your browser is unable to connect, wait a moment and hit refresh until a Web user interface page is displayed.
If your login is successful but the red warning "This LOCKSS box is still starting" is shown, wait a moment and hit refresh until it is gone.
Once successful, click on Admin Access Control in the top-right navigation menu.
If it is not covered by the entries in the Allow Access section, add the IP address of your LOCKSS 1.x host (so it will be allowed to connect to the LOCKSS 2.x Web user interface), then click the Update button to save.
If you are doing a Same-Host Migration, follow these steps:
Log into the LOCKSS 2.x Configuration Service Web user interface as a way to verify that the LOCKSS 2.x stack has come up successfully. To do this, in a browser, go to the URL
http://<locksshost>:24602/DaemonStatus, where<locksshost>represents the hostname of your LOCKSS host (for examplelockss.myuniversity.edu), and log in using the Web user interface username and password you specified during the LOCKSS 2.x configuration process.If your browser is unable to connect, wait a moment and hit refresh until a Web user interface page is displayed.
If your login is successful but the red warning "This LOCKSS box is still starting" is shown, wait a moment and hit refresh until it is gone.
containerized LOCKSS 1.x In the unlikely event that your LOCKSS 1.x instance is a Docker container, you will have to perform an additional action:
LOCKSS 1.x host as root On your LOCKSS 1.x host, run this command as
root:
docker exec lockss ip addr
The output will look similar to this:
1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN group default qlen 1000 link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host proto kernel_lo valid_lft forever preferred_lft forever 2: eth0@if731: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default link/ether d6:18:ba:cf:05:26 brd ff:ff:ff:ff:ff:ff link-netnsid 0 inet 172.18.0.3/16 brd 172.18.255.255 scope global eth0 valid_lft forever preferred_lft foreverFind the interface that is not a loopback (
lo) interface, probably one with the prefixeth(eth0in this example). You will want to make a note of the IP address (inet) of the LOCKSS 1.x container (172.18.0.3in this example).In the Web user interface of the LOCKSS 2.x Configuration Service from the previous step, click on Admin Access Control in the top-right navigation menu.
Add the IP address of your LOCKSS 1.x container to the Allow Access screen list so it will be allowed to connect to the LOCKSS 2.x Web user interface, then click the Update button to save.