A perfSONAR User's Group

Notes On ECS Liva X as a perfSONAR Node

Liva X

Installing Linux and pS tools on ECS Liva X

I first heard of the ECS Liva PC in Luke Fowler’s presentation on “PEN – perfSONAR Endpoint Nodes” during a panel session at the 2015 Internet2 Global Summmit. Since then, ECS has brought out a new generation of devices under the Liva brand, and I have heard of various organizations evaluating them as perfSONAR nodes. Recently AARNET distributed Liva X boxes to some of their constituent members, and reported good results, so we decided to buy one and give it a go.
The Liva X  is supplied with a couple of different RAM/Flash capacities by ECS, and you can buy them from the usual retail outlets. The one I had to work with has 64GB internal MMC flash as an OS file system, and 4GB of RAM.
At first glance it appears to be pretty MS-Windows focused (perhaps because it is), but one can install a couple of different Linux distros without too much trouble, if you get some particulars straight. First of all, it wants a UEFI bootable install medium with factory defaults. The BIOS does have a “legacy” boot mode, and I have not had time to permute the install with that to prove that one can boot a MBR-style legacy install medium, but it may be possible. I did try to boot from a DVD inserted in a USB DVD drive, but it did not work, although it may be possible.
I managed to create working UEFI USB sticks with Rufus 2.9 (a Windows app) and relevant ISO images. I tried it with ISOs for pS-Toolkit 3.5 (based on CentOS 6.5), Ubuntu 14.04 Desktop, Ubuntu 16.04 Desktop, and Debian 8.5.  Liva X can use 64-bit OSes.  The following installs were accomplished with factory default BIOS settings, although you may choose to change some BIOS settings in order to get the Liva X to recover after a power outage, and to boot with no monitor attached (see below).
CentOS 6.5, on the perfSONAR 3.5 install ISO, was able to proceed to the point where it proclaimed that there were no volumes large enough to install on, since it does not recognize the internal MMC flash. I did poke around in the console on the installer for a while to see if I could get it to recognize the flash drive, but I did not succeed. Apparently some others have added an external drive and run perfSONAR toolkit anyways, but have found the Liva X to be a little bit horsepower-lacking. CentOS 7 may or may not be similarly lacking in the installer for MMC flash volume drivers, it may be worth a try.

The most common Liva Linux install documented on the web-at-large is Ubuntu Desktop 14.04 (Trusty Tahr). ECS even offers a set of instructions for the install (http://download.ecs.com.tw/dlfileecs/manual/liva/Ubuntu_Installation_livax.pdf) , and it seems to work reasonably well. It may be necessary to jump through more hoops after the install to make the 802.11 interface work.  I also tried Ubuntu 16.04 (Xenial Xerus) Desktop, which installs a little more smoothly than 14.04.
I chose to move on to a Debian 8.5 (Jessie) install in order to see if I could install without desktop software, which seems like a waste of space and RAM on a small platform .  The Debian install was pretty much effortless, and worked with the Ethernet, plus bringing up 802.11 and Bluetooth, although I have not tested the latter 2.  I installed Jessie using the first DVD image, and then commenting out the CD lines in /etc/apt/sources.list after the post install re-boot.  In order to update firmware for the NICs, a separate package install was necessary. To accomplish this, you can  do “apt-get install firmware-realtek”.
Once either Ubuntu or Debian is installed, you can make the node into a perfSONAR testpoint using the perfSONAR testpoint bundle (http://docs.perfsonar.net/install_debian ). Throughput tests appear to be capable of speeds near 1 Gigabit wire speed.

Making Liva X Boot Without A Monitor Connected

One point of contention in getting the Liva X (reportedly also the elder Liva ) working as a perfSONAR node is that with factory defaults in effect, is that it will not boot without a monitor connected. I got the winning recipe to fix this from Stephen Walsh at AARNET. It involves a BIOS tweak, followed by a grub tweak. As Stephen says, the following is the sum of what he tweaked to get UEFI and no-monitor boot working, so it’s possible that it could be simplified to get the monitor-only bits.

The BIOS part:
Press ‘del’ when prompted to enter BIOS

in BIOS page ‘Chipset’;

enter “SoC Configuration”
change “restore AC Power Loss” to ‘power on’

escape back to top level

in BIOS page ‘boot’;

Change setting “Operating System Select” to ‘manual’
bottom of page, enter “CSM” option

Set ‘CSM’ option to ‘enabled’

under “CSM Configuration” page
change setting “Video” to ‘Legacy’

press ‘F4’ to save and exit bios.

And the grub part from Stephen, which is CentOS 6.5 specific:

Boot linux and login as your admin user.

Edit /etc/grub.conf and change ‘kernel’ line in first option from ‘crashkernel=auto rhgb quiet rd_NO_DM rhgb quiet’ to be ‘crashkernel=auto rhgb quiet nrd_NO_DM nomodeset’ and then save the file.

Reboot the machine with no monitor attached and after boot sequence is complete (allow 3-4 minutes), you should be able to connect a monitor and still have a working terminal

(note: this was only tested on VGA, not with HDMI)

Using Stephen’s advice, I was able to fiddle through to victory on Debian:

Change /etc/default/grub —
# commented line is distro original
GRUB_CMDLINE_LINUX_DEFAULT=”auto rhgb quiet nrd_NO_DM nomodeset”
and then do a:

Prior to getting the above more-elegant solution, I was able to make the Liva X boot by putting 3 resistors in the VGA connector. This is apparently a well-documented thing among those who want to use GPU’s for number crunching (for example in BitCoin mining), and can readily found on the Internet.


Comments are currently closed.