Cloning and Deploying a SmartServer to a Multiple Sites (Release 3.3 and Prior)
Cloning is available with SmartServer 2.7 Update 1 and higher.
For SmartServer 3.4 and higher, see Cloning and Deploying a SmartServer to Multiple Systems (Release 3.4).
Cloning can be used to replicate a reference (source) SmartServer IoT to another SmartServer IoT(s), where each cloned (target) SmartServer's configuration will be identical to the reference SmartServer. Cloned SmartServers will have the same CMS configuration, external devices, external data points, custom applications, and custom web pages as the source SmartServer IoT.
Warnings
Using the Storage widget → RESTORE button → CLONE tab preserves the new SmartServer's Serial Number, Host Name, and Install Code, but changes the apollo password to the old SmartServer's password, as well as the Segment ID (SID) and MAC Addresses. In most cases, when you restore a database backup onto a new SmartServer, you will use the CLONE tab. You cannot clone a target SmartServer with the same backup file more than once; however, if you re-image the SmartServer, then you can perform another clone. In addition, you cannot put two SmartServer clones on the same network.
Using the Storage widget → RESTORE button → SYSTEM tab or DATABASE tab overwrites the new SmartServer's Serial Number, Host Name, MAC Addresses, Install Code, SID, and apollo password.
The reference SmartServer can include the most comprehensive configuration of devices likely to be seen in the field. For subsets of the reference configuration, devices that are not present in some sites can either be ignored or deleted accordingly. Cloned Modbus and BACnet networks should be configured with the same addressing and baud rate information as the reference SmartServer IoT networks. LON networks will need their devices replacing in the CMS with the new UIDs.
To clone a source SmartServer once its configuration is finalized and tested, a system backup image must first be created using the CMS Storage widget. Then, the source SmartServer IoT system backup must be restored onto a target SmartServer using the clone feature.
This section consists of the following:
Prerequisites
Backing up the SmartServer IoT
SmartServer IoT backups are stored on the SD Card in the /media/sdcard/backups directory (there can be multiple backup files on the SD Card).
Backup file names will appear similar to the following example:
SmartServer-System-Backup-2020-03-10-114532.tgz
The SmartServer IoT's SD Card is formatted using the Linux ext4 filesystem and cannot be read directly by a Windows PC. You can use an SFTP application on a Windows PC, such as WinSCP to read and write backup files from and to the SD Card. WinSCP downloads are available at https://winscp.net/eng/docs/guide_install. However, for speed purposes in a production environment, it is recommended that a Linux PC is used to read or write to the SD Card. If you do not want to modify your existing PC configuration, you can use a trial version of Ubuntu to do this, where you simply boot the PC from a USB drive with a bootable version of Ubuntu installed. Ubuntu downloads are available at https://ubuntu.com/download/desktop.
To create a bootable USB drive from an Ubuntu ISO image, you need to use an application such as Rufus. Rufus downloads are available at https://rufus.ie/.
Alternatively, you can install a dual-boot Ubuntu/Windows or an Ubuntu-only configuration.
Storing User Applications and Data
User applications and data should be located in the directory indicated in the APOLLO_DATA environment variable (typically /var/apollo/data). Doing so ensures that user applications and data are not affected by updates and are included in the SmartServer IoT's backup mechanism.
Connecting to the Console
To receive status updates during SmartServer IoT backup and restore operations, you need to be connected to the SmartServer IoT's serial console port (USB micro B, 115200, 8,1,N) using a terminal emulator, such as PuTTY for Windows or microterm for Ubuntu.
PuTTY downloads are available at https://www.chiark.greenend.org.uk/~sgtatham/putty/latest.html.
Microterm downloads are available at https://sourceforge.net/projects/microterm/.
Cloning the SmartServer IoT
The sections that follow describe the necessary steps to clone a SmartServer IoT, including:
Creating a Source SmartServer Backup
Copying the Source SmartServer Backup File to the Target SmartServer
Restoring the Source SmartServer Backup File to the Target SmartServer
Creating a Source SmartServer Backup
To create a source SmartServer backup, perform the following steps:
Connect an Ethernet patch lead from the source SmartServer IoT's RJ45 LAN connector to an Ethernet switch port on your local LAN with a DHCP server running (unless you are using a static IP address).
Connect your PC to the same LAN and subnet as the source SmartServer IoT using an Ethernet lead. Alternatively, use the SmartServer's Rapid Fallback feature (if enabled) to set the SmartServer IoT's address to 192.168.1.222, which will allow a direct Ethernet connection from the PC to the SmartServer IoT. In this case you will have to manually configure the PC to be on the same subnet as the source SmartServer IoT.
Remove any USB devices from the source SmartServer.
Connect the terminal emulator to the console port using a USB cable and power up the SmartServer.
Find the SmartServer IoT's IPV4 address for the eth0 port (shown as inet addr:192.168.168.5 in the example below, third line) by entering the following command at the console:
ifconfig
A result similar to the following appears:apollo@smartserver-17q41xs:~$ ifconfig eth0 Link encap:Ethernet HWaddr 00:d0:71:07:46:eb inet addr:192.168.168.5 Bcast:192.168.168.255 Mask:255.255.255.0 inet6 addr: fe80::2d0:71ff:fe07:46eb/64 Scope:Link UP BROADCAST RUNNING MULTICAST MTU:1500 Metric:1 RX packets:38427 errors:0 dropped:17168 overruns:0 frame:0 TX packets:35507 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:2909558 (2.9 MB) TX bytes:6099630 (6.0 MB) Interrupt:51 Base address:0x6000 eth1 Link encap:Ethernet HWaddr 00:d0:71:07:46:ec UP BROADCAST MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:0 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000 RX bytes:0 (0.0 B) TX bytes:0 (0.0 B) Interrupt:50 Base address:0xe000 ip70 Link encap:Ethernet HWaddr 00:d0:71:07:6f:50 inet addr:192.168.239.128 Bcast:192.168.239.255 Mask:255.255.255.0 inet6 addr: fe80::2d0:71ff:fe07:6f50/64 Scope:Link UP BROADCAST RUNNING NOARP MULTICAST MTU:1500 Metric:1 RX packets:0 errors:0 dropped:0 overruns:0 frame:0 TX packets:6538 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:0 (0.0 B) TX bytes:380111 (380.1 KB) lo Link encap:Local Loopback inet addr:127.0.0.1 Mask:255.0.0.0 inet6 addr: ::1/128 Scope:Host UP LOOPBACK RUNNING MULTICAST MTU:65536 Metric:1 RX packets:1230995 errors:0 dropped:0 overruns:0 frame:0 TX packets:1230995 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:0 RX bytes:170737328 (170.7 MB) TX bytes:170737328 (170.7 MB) apollo@smartserver-17q41xs:~$Connect to the source SmartServer IoT's CMS from a browser at:
With SmartServer release 2.8 or higher: https://<IPV4 address>/cms
With SmartServer release prior to 2.8: https://<IPV4 address>:8443/cms
The CMS login window appears.
Login using the username and password. Note that the username is always apollo, but the password may have been changed from the one that is printed on the rear label of the SmartServer.
Open the Storage widget.
Click BACKUP.
Click BACKUP SYSTEM in the Confirmation dialog box.
Click OK in the Confirmation dialog box to start the backup process.
A notification (shown below) indicating that the backup started will appear at the top right corner of the CMS. No additional notifications regarding the backup process will be displayed on the CMS.