cloud-init in degraded state on Oracle instance with "Invalid network-config provided"
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
cloud-init (Ubuntu) |
Fix Released
|
High
|
Unassigned |
Bug Description
When booting a Noble Numbat (Ubuntu 24.04) instance on Oracle Cloud, clout-init ends up in a degraded state reporting "Invalid network-config provided". Details are displayed below:
ubuntu@
status: done
extended_status: degraded done
boot_status_code: enabled-
last_update: Thu, 07 Mar 2024 14:42:12 +0000
detail: DataSourceOracle
errors: []
recoverable_errors:
WARNING:
- Invalid network-config provided: Please run 'sudo cloud-init schema --system' to see the schema errors.
ubuntu@
Found cloud-config data types: user-data, network-config
1. user-data at /var/lib/
Empty 'cloud-config' found at /var/lib/
2. network-config at /var/lib/
Invalid network-config /var/lib/
Error: Cloud config schema errors: config.0.subnets.0: Additional properties are not allowed ('broadcast' was unexpected)
Error: Invalid schema: network-config
ubuntu@
{
"config": [
{
"
"name": "ens300f0np0",
"subnets": [
{
],
"type": "dhcp"
}
],
"type": "physical"
}
],
"version": 1
}
ubuntu@
/usr/bin/cloud-init 24.1-0ubuntu1
Attaching the logs.
Changed in cloud-init (Ubuntu): | |
status: | New → Triaged |
importance: | Undecided → High |
In cloud-init 23.4, we added network config schema checking[1] to ensure that any network config provided adheres to network configuration v1 format[2]. The cloud-init code to translate Oracle's networking information into network v1[3] incorrectly includes a broadcast address in the rendered configuration.
While this is wrong, it has been wrong for the lifetime of the Oracle datasource. We're now just complaining that it's wrong. Regardless, I'm treating this as high priority so as to avoid spurious warnings in the log files.
[1]: https:/ /github. com/canonical/ cloud-init/ pull/4482 /cloudinit. readthedocs. io/en/latest/ reference/ network- config- format- v1.html /github. com/canonical/ cloud-init/ blob/main/ cloudinit/ net/cmdline. py#L161
[2]: https:/
[3]: https:/