Issues Bootstrapping Juju Controller on Oracle Cloud with VM.Standard1.1 Shape

Hello, Juju community!

I’m encountering an issue while attempting to bootstrap a Juju controller on Oracle Cloud, which is natively supported by Juju. I’m hoping to share my experience and seek assistance in resolving this matter.

When I initiate the bootstrap process, Juju proceeds to create networks and searches for images and shapes. However, it appears to select a considerably outdated shape, namely “VM.Standard1.1.” Consequently, I encounter an error stating, “cannot start bootstrap instance in any availability zone (JiPD:UK-LONDON-1-AD-1, JiPD:UK-LONDON-1-AD-2, JiPD:UK-LONDON-1-AD-3).”

My initial assumption was that the issue might stem from Juju’s attempt to create a VM.Standard1.1 instance with 3.5GB of memory, whereas this shape should require 7GB. In an attempt to address this, I experimented with setting a constraint of “mem=7168MB,” but the issue persisted.

10:52:59 DEBUG juju.provider.oci images.go:355 received 6 image(s): [&imagemetadata.ImageMetadata{Id:"ocid1.image.oc1.uk-london-1.aaaaaaaa3j376n33jzt324jqeev5mefumrmrckn6jztxhn5pn3kqdioo3uyq", Storage:"", VirtType:"vm", Arch:"amd64", Version:"22.04", RegionAlias:"", RegionName:"", Endpoint:"", Stream:""} &imagemetadata.ImageMetadata{Id:"ocid1.image.oc1.uk-london-1.aaaaaaaa6jeqtbjfzs4bcareek7cybzwnvbzlj6y6egbxtvhcjjxu2uuip3a", Storage:"", VirtType:"vm", Arch:"amd64", Version:"22.04", RegionAlias:"", RegionName:"", Endpoint:"", Stream:""} &imagemetadata.ImageMetadata{Id:"ocid1.image.oc1.uk-london-1.aaaaaaaahyhkbel5zxxlnlq7ox7ri6icnx3hhwxqqud3v5jdycs2rfqjqovq", Storage:"", VirtType:"vm", Arch:"amd64", Version:"22.04", RegionAlias:"", RegionName:"", Endpoint:"", Stream:""} &imagemetadata.ImageMetadata{Id:"ocid1.image.oc1.uk-london-1.aaaaaaaaw6yeiniul5nfihqmxf7twmattcwww723wq424mgvlebssok2wb4q", Storage:"", VirtType:"vm", Arch:"amd64", Version:"22.04", RegionAlias:"", RegionName:"", Endpoint:"", Stream:""} &imagemetadata.ImageMetadata{Id:"ocid1.image.oc1.uk-london-1.aaaaaaaarytsus6dgeof7tgp53asviyifz2qpkg7y7gybuynqa2u4tqiiodq", Storage:"", VirtType:"vm", Arch:"amd64", Version:"22.04", RegionAlias:"", RegionName:"", Endpoint:"", Stream:""} &imagemetadata.ImageMetadata{Id:"ocid1.image.oc1.uk-london-1.aaaaaaaalxtf4sv356cowdn43omv64lb2hnr6ykc5tm5l2lpboyjnxmf5mcq", Storage:"", VirtType:"vm", Arch:"amd64", Version:"22.04", RegionAlias:"", RegionName:"", Endpoint:"", Stream:""}]
10:52:59 DEBUG juju.environs.instances image.go:67 instance constraints {region: , base: ubuntu@22.04, arch: amd64, constraints: mem=7168M virt-type=vm, storage: []}
10:52:59 DEBUG juju.environs.instances image.go:73 matching constraints {region: , base: ubuntu@22.04, arch: amd64, constraints: mem=7168M virt-type=vm, storage: []} against possible image metadata []instances.Image{
    {Id:"ocid1.image.oc1.uk-london-1.aaaaaaaa3j376n33jzt324jqeev5mefumrmrckn6jztxhn5pn3kqdioo3uyq", Arch:"amd64", VirtType:"vm"},
    {Id:"ocid1.image.oc1.uk-london-1.aaaaaaaa6jeqtbjfzs4bcareek7cybzwnvbzlj6y6egbxtvhcjjxu2uuip3a", Arch:"amd64", VirtType:"vm"},
    {Id:"ocid1.image.oc1.uk-london-1.aaaaaaaahyhkbel5zxxlnlq7ox7ri6icnx3hhwxqqud3v5jdycs2rfqjqovq", Arch:"amd64", VirtType:"vm"},
    {Id:"ocid1.image.oc1.uk-london-1.aaaaaaaaw6yeiniul5nfihqmxf7twmattcwww723wq424mgvlebssok2wb4q", Arch:"amd64", VirtType:"vm"},
    {Id:"ocid1.image.oc1.uk-london-1.aaaaaaaarytsus6dgeof7tgp53asviyifz2qpkg7y7gybuynqa2u4tqiiodq", Arch:"amd64", VirtType:"vm"},
    {Id:"ocid1.image.oc1.uk-london-1.aaaaaaaalxtf4sv356cowdn43omv64lb2hnr6ykc5tm5l2lpboyjnxmf5mcq", Arch:"amd64", VirtType:"vm"},
}
10:52:59 INFO  juju.environs.instances image.go:114 find instance - using amd64 image of type VM.Standard1.1 with id: ocid1.image.oc1.uk-london-1.aaaaaaaa3j376n33jzt324jqeev5mefumrmrckn6jztxhn5pn3kqdioo3uyq
10:52:59 DEBUG juju.cloudconfig.instancecfg instancecfg.go:945 Setting numa ctl preference to false
10:52:59 DEBUG juju.provider.oci environ.go:565 Composing userdata
10:53:00 ERROR juju.cmd.juju.commands bootstrap.go:968 failed to bootstrap model: cannot start bootstrap instance in any availability zone (JiPD:UK-LONDON-1-AD-1, JiPD:UK-LONDON-1-AD-2, JiPD:UK-LONDON-1-AD-3)
10:53:00 DEBUG juju.cmd.juju.commands bootstrap.go:969 (error details: [{github.com/juju/juju/cmd/juju/commands.(*bootstrapCommand).Run:1067: failed to bootstrap model} {github.com/juju/juju/environs/bootstrap.Bootstrap:742: } {github.com/juju/juju/environs/bootstrap.bootstrapIAAS:594: } {github.com/juju/juju/provider/common.Bootstrap:58: } {github.com/juju/juju/provider/common.BootstrapInstance:304: cannot start bootstrap instance in any availability zone (JiPD:UK-LONDON-1-AD-1, JiPD:UK-LONDON-1-AD-2, JiPD:UK-LONDON-1-AD-3)}])
10:53:00 DEBUG juju.cmd.juju.commands bootstrap.go:1778 cleaning up after failed bootstrap
10:53:00 INFO  juju.provider.common destroy.go:21 destroying model "controller"
10:53:00 INFO  juju.provider.common destroy.go:32 destroying instances
10:53:00 INFO  juju.provider.common destroy.go:56 destroying storage
10:53:01 DEBUG juju.provider.oci environ.go:409 Cleaning up network resources
10:53:04 DEBUG juju.provider.oci networking.go:540 deleting security list ocid1.securitylist.oc1.uk-london-1.aaaaaaaakqqxh5fly2f3opgtjp7ztsmjg35acp7jqn6uhhomkttulnrodnrq
10:53:06 INFO  juju.provider.oci networking.go:564 deleting VCN: ocid1.vcn.oc1.uk-london-1.amaaaaaace4m76yad5wiw3r4ap5jmr5r4xo5cfsxjm6zp3krdpzfwxgb4okq
10:53:06 INFO  cmd supercommand.go:535 command finished

I conducted further tests by attempting to create an instance with the same shape directly through the Oracle Cloud Infrastructure (OCI) Console. Here, I received a similar error message: “Out of capacity for the previous generation shape VM.Standard1.1 in availability domain AD-1. Try creating the instance using a current generation shape or try again later.”

Questions: How can I specify a different compute shape for Juju’s bootstrap process on Oracle Cloud? Can I use arm64-based compute shapes with Juju in this context, or are they unsupported?

I would greatly appreciate any insights or guidance from the community regarding this issue. Thank you in advance for your help!