2015-05-14
HDD

The latest m23 release "rock 15.1" contains a whole lot of changes and improvements. Some of these are changes 'under the hood', for example the completely rewritten partitioning and formatting routines, plus some small changes to the corresponding parts of the web interface, while other changes are rather obvious, like the fully redesigned script editor. Support for UEFI on m23 clients is now available and new functionalities for fast copying/deployment of large files using BitTorrent. The m23 CLI also received a couple new functions.

Partitioning and formatting

New dialog for partitioning and formatting
New dialog for partitioning and formatting

In the course of establishing support for UEFI, all partitioning and formatting routines were rewritten in object oriented form and tested extensively using a testing system specifically developed for this purpose..

The new routined for 'Creation', 'Deletion' and 'Formatting' of partitions and software RAIDS had to undergo 10,000 rounds of testing repeatedly. These actions were performed in random order and with random parameters (for partition start and type, file system, RAID level,...).

To see if the resulting state expected by m23, which is used for visualization in the m23 interface, and the 'real world state' match, the actions were simultaneously executed on a virtual machine, and the results of every step were compared. The new implementation was then adapted until it output identical results.

During restructuring work, creation of virtual harddisks for mass installation template clients was integrated into the partitioning and formatting dialog. Now multiple harddisks can be used during mass installation.

Script editor

New script editor
New script editor

The script editor used in m23 was exchanged and re-designed. It is now based on Ace. The new editor now doesn't only highlight php commands, but also m23 functions. The switch to ace automatically also introduces many comfortable functionalities like Search and replace or jump to a specified line number. Download of user-created m23 scripts was integrated so there is no longer a detour via our community page necessary.

The available scripts now contain two additional examples: One of those demonstrates the installation of a PPD printer driver and the setup in CUPS, the other one shows how to use the new BitTorrent functions for deploying a VM appliance including importing it on the m23 client and adding a suitable configuration which makes the VM available to all users.

You can now test your own scripts with the script output preview, where the script is temporarily assigned to a client in order to generate its parameters with real client data. This helps identifying syntax errors for example, but should only be used when the corresponding client is not running.

UEFI

From this version on, m23 offers support for UEFI on 64bit m23 clients. Those can either be started using a boot CD/DVD, or, in case the UEFI implementation provided by the manufacturer of the mainboard actually works, by network boot. Together with UEFI, the partitioning layout GPT has found its way into m23. UEFI boot is currently available for the m23 package sources list for Linux Mint 17. Please test this on your UEFI hardware and report any successes and failures.

BitTorrent

HDD

The integration of BitTorrent hugely accelerates the simultaneous distribution of large files to a multitude of clients. For this, the m23 server takes on the role of the BitTorrent tracker and the initial BitTorrent client. The torrent file used for this network copy process can be created in the package architect menu in the m23 interface. The download to the clients then works through the use of m23 scripts which make use of the new BitTorrent functions of the m23 API.

The BitTorrent integration was part of a customer project, which required the transfer of a 20 GB VM appliance to 30 m23 clients (now even more). The file for the VM was initially living on the m23 server and was transferred via HTTP. The transfer process and import of the VM, plus the installation of an operating system with applications took a full 16 hours for 30 clients, before the torrent was introduced. This value is near the arithmetical limit for data transfer in the available 100 Mbit network. By using BitTorrent to transfer the VM appliance, the installation time could be reduced to a mere 3.5 hours.

The BitTorrent method implies that the clients exchange missing file parts among each other, which greatly reduces the load for the m23 server, where the original file is located. Combining the BitTorrent tracker opentracker and the BitTorrent client aria2c also effectuates an optimal network load and an even distribution of file parts, resulting in the original file from the m23 server being only distributed once.

m23 CLI

Another set of new functions was added to the m23 command line tool, which now provides, for example, functions to retrieve all client names or a list of all clients where a specific package is not installed or which have uncompleted tasks. The new command "wol" can wake up specific clients, and "sshFetchJob" will make them retrieve their next task from m23, and "executeBySSH" will make them execute general command line commands. Listing all running or turned-off clients is also possible now.

The little things

The client control center now contains an icon to delete the client. The kernel version for all m23 boot media was raised to 3.18.12. The script "getAllDebianDesktopPackages" can be used to list all Debian packages which can be used to install desktop environments. The deletion of packages in package selections which were retrieved from the set of packages installed on an existing client is now possible.

Corrections

Of course, we've also made some (small) corrections ;-) This version eliminates many problems which have previously been sleeping (unnoticed) in the old partitioning and formatting routines. The m23HSAdmin tool which translates the generic administration instructions into instructions for the package manager/programs used in the corresponding halfSister distribution now contains a corrected version of the function to create fstab entries. For m23 clients which are installed in a CloudStack environment, the port forwarding rule for that client will now be removed when the client is deleted.

Downloads / Update

The new vesion is available as update via the m23 web interface, via APT (Caution: Package sources server for m23-specific packages is kent.dl.sourceforge.net" now. Setup as described in the Installation guide), as ISO file for burning the m23 server installation CD/DVD, as preinstalled virtual machine and as image file for RaspberryPi (the last three can be found in the Download section).