Build aarch64 Compute and Login Images

Procedure that details how to build aarch 64 compute and login images.

Task prerequisites.
  • New aarch64 compute nodes have been removed from the compute NIMS group and added to the compute_aarch64 NIMS group.
  • Newly added aarch64 nodes that are intended to be used as login nodes have been repurposed as service nodes.
  • The aarch64 login nodes have been added to the login_aarch64 NIMS group

If the aarch64 nodes being added to the system are the first aarch64 nodes in the system, it is necessary to build and map aarch64 images for the aarch64 compute and login nodes.

  1. Customize the new cray_image_groups.yaml file to reflect the needs of this site.
    If the system did not have any aarch64 nodes when CLE software was installed, the aarch64 images will have been removed from the cray_image_groups.yaml configuration file for imgbuilder. Now that the aarch64 nodes have been added to the system, the aarch64 images need to be added to the appropriate image group(s) by the site.
    The following image groups, which are included in the default cray_image_groups.yaml configuration file show the stanzas for tmpfs and netroot images for both compute and login aarch64 nodes.
      tmpfs_compute_aarch: 
          - recipe: "compute_cle_{cle_release_lowercase}_sles_15_ari"
            dest: "compute{note}_cle_{cle_release_lowercase}-build{cle_build}{patch}_sles_15-aarch64-created{date}"
            arch: "aarch64"
            export_format: "cpio"
            nims_group: "compute_aarch64"
      tmpfs_login_aarch:
          - recipe: "login_cle_{cle_release_lowercase}_sles_15_ari"
            dest: "login{note}_cle_{cle_release_lowercase}-build{cle_build}{patch}_sles_15-aarch64-created{date}"
            arch: "aarch64"
            export_format: "cpio"
            nims_group: "login_aarch64"
      netroot_aarch:
          - recipe: "initrd-stripped-compute-large_cle_{cle_release_lowercase}_sles_15_ari"
            dest: "initrd-compute-large{note}_cle_{cle_release_lowercase}-build{cle_build}{patch}_sles_15-aarch64-created{date}"
            arch: "aarch64"
            export_format: "cpio"
            nims_group: "compute_aarch64"
          - recipe: "initrd-login-large_cle_{cle_release_lowercase}_sles_15_ari"
            dest: "initrd-login-large{note}_cle_{cle_release_lowercase}-build{cle_build}{patch}_sles_15-aarch64-created{date}"
            arch: "aarch64"
            export_format: "cpio"
            nims_group: "login_aarch64"
    If the cray_image_groups.yaml file does not contain these groups, they should be added, and the specific stanzas required by the site should be added to the default image group as well. Omit the login image from the netroot_aarch group if the system does not have aarch64 login nodes. If cray_image_groups.yaml contains images with nims_group vaules that are not assigned to any nodes in the NIMS map, imgbuilder will produce an error when attempting to build and map those images.
  2. Build and map images with imgbuilder --map.
    To build and map images in the netroot_aarch image group, use the following command.
    smw# imgbuilder --map --group netroot_aarch
    To build images and map images manually in the netroot_aarch image group, use the following command.
    smw# imgbuilder --group netroot_aarch
  3. Push the large netroot images to the boot node if netroot images are used for the aarch64 nodes.
    The boot node must be booted for this step. Refer to Manually Boot the Boot Node and Service Nodes.
    The following example shows the text output of the imgbuilder command that provides instructions on pushing images to the boot node.
    IMPORTANT: The netroot image for initrd-compute-large_cle_7.0.up01-build7.0.1026_sles_15-aarch64-created20190327 must be staged
    onto the boot node:
    smw:# image push -d boot --format squashfs compute-large_cle_7.0.up01-build7.0.1026_sles_15-aarch64-created20190327
    
    IMPORTANT: The netroot image for initrd-login-large_cle_7.0.up01-build7.0.1026_sles_15-aarch64-created20190327 must be staged
    onto the boot node:
    smw:# image push -d boot --format squashfs login-large_cle_7.0.up01-build7.0.1026_sles_15-aarch64-created20190327