Deploy Trove to Moonshot node with netboot
Note: this guide assumes you are familiar with building Baserock systems, for more information on building Baserock systems see: Building a Baserock system.
You may also want to read the Setup an ARMv8 Baserock system on an HP Moonshot node guide before continuing.
First, build the Trove:
morph build systems/trove-system-armv8l64-moonshot.morph
Before you can deploy trove you will need to generate keys for some of the accounts trove uses, see prepare trove accounts for more details.
Next, write the following cluster into a file (e.g. moonshot-trove-cluster.morph
):
name: moonshot-m400-armv8l64-trove
kind: cluster
description: |
Deploy an armv8l64 Trove server into a HP Moonshot node
The system will be configured to boot through PXE from existing DHCP,
TFTP and NFS servers.
systems:
- morph: systems/trove-system-armv8l64-moonshot.morph
deploy:
netboot:
type: extensions/pxeboot
location: $macaddr-of-node
PXEBOOT_MODE: existing-server
PXEBOOT_CONFIG_TFTP_ADDRESS: sftp://$tftp-server/srv/nfsboot/tftp/
PXEBOOT_ROOTFS_RSYNC_ADDRESS: rsync://$nfsboot-server/srv/nfsboot/
KERNEL_ARGS: console=ttyS0,9600n8r rw
DTB_PATH: $dtb-path
HOSTNAME: $host-name
MOONSHOT_KERNEL: yes
INSTALL_FILES: moonshot/manifest
INSTALLER: no
FSTAB_HOMES: /dev/sda2 /home auto defaults,noatime,rw 0 2
TROVE_ID: trove_moonshot
TROVE_COMPANY: $company
LORRY_SSH_KEY: /src/ssh_keys/lorry.key
LORRY_SSH_PUBKEY: /src/ssh_keys/lorry.key.pub
TROVE_ADMIN_USER: $admin-user-name
TROVE_ADMIN_EMAIL: $admin-email
TROVE_ADMIN_NAME: $admin-name
TROVE_ADMIN_SSH_PUBKEY: /src/ssh_keys/id_rsa.pub
WORKER_SSH_PUBKEY: /src/ssh_keys/worker.key.pub
Then run morph deploy, with name of the file you just created
morph deploy moonshot-trove-cluster.morph