Migrating to Noble Numbat
Cloud Foundry's upcoming stemcells will be based on Ubuntu's Noble Numbat release, which may cause compilation and deployment errors in packages built for earlier stemcells. This document provides guidance on how to address the most common errors that BOSH release authors may encounter. There are a few broad categories to address:
Discussion Slack channel is here.
BOSH DNS¶
In Noble we switched from resolved to systemd-resolve, with this change and to be backwards compatible with our bosh-dns release some configuration are necessary in the runtime config for DNS. If you are using the latest bosh-deployment or bosh bootloader, then you can ignore this.
With the following PR in bosh-deployment repo #467 we added the following configuration.
- include: stemcell: - os: ubuntu-noble jobs: - name: bosh-dns properties: api: client: tls: ((/dns_api_client_tls)) server: tls: ((/dns_api_server_tls)) cache: enabled: true configure_systemd_resolved: true disable_recursors: true health: client: tls: ((/dns_healthcheck_client_tls)) enabled: true server: tls: ((/dns_healthcheck_server_tls)) override_nameserver: false release: bosh-dns name: bosh-dns-systemd
BPM¶
Use BPM version v1.4.0 or higher bpm-releases
EFI Bootloader¶
The Noble stemcells will use by default the EFI bootloader with a fallback to the legacy bootloader.
What this will mean in a real life example for AWS.
The vm type m4.large
(which is deprecated) only supports legacy bootloader
you can see what the vm type support with the following command aws ec2 describe-instance-types --region us-east-1 --instance-types m4.large --query "InstanceTypes[*].SupportedBootModes"
this will result in
[ [ "legacy-bios", ] ]
m5.large
[ [ "legacy-bios", "uefi" ] ]
This will mean when you use the m4.large
it will boot in legacy bootloader and for m5.large
you will boot with the efi bootloader.
You can easily check with which bootloader you started by checking if the following file exists ls /sys/firmware/efi
if this file exists you are in EFI mode and if not you are using the legacy bootloader.
Addons (Runtime Configurations)¶
If you restrict your addons to certain stemcells, be sure to include Noble in your list of stemcells (if you intend your addon to run on Noble). The following is the updated stemcell list for cf-deployment's manifest:
addons: - name: loggregator_agent include: stemcell: - os: ubuntu-jammy - os: ubuntu-noble