HP Moonshot m400 Cartridge Deployment

Introduction

The HP Moonshot m400 cartridge is a single node cartridge based on the octo core 64-bit ARMv8 APM X-Gene SoC, installed with 64GB of RAM and an attached 120GB M.2 SSD. The HP Moonshot is a chassis which holds up to 45 of these cartridges.

The HP Moonshot chassis can be controlled with both IMPI and the HP Integrated Lights-Out console (iLO). iLO allows, between other operation, to power on/power off a node, set the node boot mode, view the node MAC addresses and connect to a node's virtual serial console.

There are two approaches for having a Baserock system running on an HP Moonshot node:

  • Network booting: the kernel and device tree used are retrieved from a server using TFTP. The rootfs is mounted through NFS.

  • Local booting: the kernel, device tree and rootfs used are located in the attached M.2 SSD.

Network Booting

To deploy a Baserock system to boot from network, it is necessary to have one or more pre-configured servers which provides the following services

  • A DHCP server: necessary so that a node has network connectivity

  • A TFTP server: necessary to provide a kernel and device tree

  • A rsync daemon running: necessary to transfer the rootfs from the the Baserock system was built, to the server which is running a NFS server

  • A NFS server: necessary to provide a remote rootfs for the node

  • A SSH server: necessary to perform some remote operations

Following are the instructions to deploy a Baserock system to boot from network

  1. Build the Baserock armv8l64 system you that you intend to deploy

    From the root directory of definitions:

    morph build systems/devel-system-armv8l64.morph
    
  2. Edit the clusters/moonshot-pxe-armv8l64.morph and

    • Update the location field with the MAC address of the first interface card of the node to which you intend to deploy

    • Update the PXEBOOT_CONFIG_TFTP_ADDRESS field with the IP address of the server which provides the TFTP service, and with the directory which will be accessible using the TFTP protocol.

    • Update the PXEBOOT_ROOTFS_RSYNC_ADDRESS field with the IP address of the server where the rootfs should be installed, and with the directory which is being exported to be used by remote hosts.

    You can find the MAC address for all nodes through the HP Integrated Lights-Out console (iLO):

    ssh Administrator@iLO-ip-address show node macaddr all
    
  3. Deploy the system

    morph deploy clusters/moonshot-pxe-armv8l64.morph
    
  4. Set the node to boot through the u-boot pxe mode

    ssh Administrator@iLO-ip-address set node boot pxe <NODE>
    
  5. Finally, reboot the node

    ssh Administrator@iLO-ip-address set node power off shutdown <NODE>
    ssh Administrator@iLO-ip-address set node power on <NODE>
    

Local Booting

Baserock can be deployed to boot from the internal SSD of a Moonshot node (M.2 device).

To do this:

  1. Build the Baserock armv8l64 system you that you intend to deploy, and the installer system:

    From the root directory of definitions:

    morph build systems/devel-system-armv8l64.morph
    morph build systems/installer-system-armv8l64.morph
    
  2. Edit the clusters/moonshot-m2-armv8l64.morph and

    • Update the location field with the MAC address of the first interface card of the node to which you intend to deploy

    • Update the values of the node name you wish to deploy to, wherever they appear in the cluster definition - For example, change c31n1 (node 31) to c43n1 (node 43) wherever used in the file.

    Information for finding the MAC address for a given node is given in the section above.

  3. Deploy the system

    morph deploy clusters/moonshot-m2-armv8l64.morph
    

    The following steps may be required:

    • Where prompted Password:, enter the rsyncd password configured on the server

    • If prompted Administrator@iLO-ip-address's password:, enter the iLO password

    • Monitor the serial output for the node being deployed to via the iLO virtual serial interface (i.e. connect node vsp c43n1). The kernel should boot from the netboot server, followed by the install script.

    • When instructed by the install script, type 'installed' on the deployment machine.

    Note: Sometimes the node will boot into M.2 even if the boot option is set to PXE, in that case, the node will boot into pre-installed ubuntu on M.2 instead of the installer. You will need to re-do the deployment if that happens.

    Power control and the setting of the node boot mode is handled automatically using this cluster definition. The node will automatically boot from the M.2 SSD after deployment is complete.