Enable HA does not work when juju controller machine has multiple subnet ips/nics

I have a LXD cloud backing JUJU and I have 3 models serving 3 k8s clusters on 3 different networks There is only one juju controller machine with 3 nics and 3 subnets to manage those 3 models. All is working well except the controller HA is not working.

PS: And Juju status command does refresh accurate status like if we change any ip of juju machine it still reflects the old IP.

The details are provided below

06:35:35 INFO juju.cmd supercommand.go:56 running juju [3.4.0 e1b7dcd7390348c37f8b860011e7436e6ed3f4cc gc go1.20.13] 06:35:35 DEBUG juju.cmd supercommand.go:57 args: []string{“/snap/juju/26548/bin/juju”, “enable-ha”, “–to”, “8,11”, “–debug”} 06:35:35 INFO juju.juju api.go:86 connecting to API addresses: [10.121.123.184:17070 10.121.122.61:17070 10.121.124.184:17070 10.121.125.184:17070] 06:35:35 DEBUG juju.api apiclient.go:1172 successfully dialed “wss://10.121.122.61:17070/api” 06:35:35 INFO juju.api apiclient.go:707 connection established to “wss://10.121.122.61:17070/api” 06:35:35 DEBUG juju.api monitor.go:35 RPC connection died ERROR machine “8” has no addresses in space “alpha” 06:35:35 DEBUG cmd supercommand.go:549 error stack:

Juju spaces

image

juju subnets

image

Machine 8 details

image

Machine 11 details

image

Juju controller config

image

When I run the juju enable-ha

Juju status

Hello!

Could you please paste the addresses of your machines 8 and 11 please? I would like to know if indeed its address is in the alpha space as the error indicates.

Also, I cannot correctly determine which are the subnets on each space because of the (un)formatting of your pasted output, could you please format it?

Apologies about the weird formatting. I have added more clear details(scroll up for info). I have even tried adding a single subnet to a new space but connot add it

image

juju add-space beta 10.121.122.0/24 juju controller-config juju-ha-space=beta

image

I also tried remove machines 8,11 and re added them.

/sbin/remove-juju-services

juju add-machine ssh:ubuntu@10.121.122.63

juju add-machine ssh:ubuntu@10.121.122.62

I could see the space name and Space ID is empty in machines logs. below are the details.

ok, so according to this logs, your machines addresses are on the subnet 10.121.122.0/24 which is in the space beta. Since you have not yet configured juju to take beta as the ha-space, you won’t be able to enable-ha with these two machines.

I would advice to add the subnet 10.121.122.0/24 to the alpha space, instead of creating a new space. And then you will be able to enable-ha using the configured ha-space alpha.

Here are some docs:

to add the subnet to the alpha space:

$ juju move-to-space alpha 10.121.122.0/24

Hi,

Thanks for your response. I already tried these 3 scenarios

I tried adding all my subnets in alpha which by default all them get populated in default space alpha. Same Error. As you can see the above screenshots (My first reply in this post) I get the same result.

Then I tried with only 10.121.122.0/24 subnet in alpha and other I put in beta same result.

Then I tried to add 10.121.122.0/24 in beta but I cannot add it as value to the key juju-ha-space to controller-config as shown in my last reply.

Regards

There’s pending bug on that. Please see whether that is relevant to you and update in the comment. Please provide more information and minimal steps to reproduce the error you encounter and continue there

See also duplicate bugs section.

What I would advise if you need a workaround. Remove the extra spaces. Deploy as it is and then re-add the interfaces to the juju machines.

We’re working on the fix to this bug. One part has been completed already, the other is in progress.

Reported bugs in this orbit are:

Hi,

Thank you for your response.

I have tried the work around for now by allowing inter vlan routing so that i don’t have to use multiple networks on the controller VM its working for now. I will await for the fix.

Thanks