Bootstrapping one k8s cloud multiple times causes problems during destroy-controller

Bug #2030345 reported by Harry Pidcock
6
This bug affects 1 person
Affects Status Importance Assigned to Milestone
Canonical Juju
Triaged
High
Jack Shaw

Bug Description

If you perform the following:

juju bootstrap microk8s a
juju bootstrap microk8s b
juju destroy-controller a

You will be left with a broken controller b because several cluster wide resources such as the ClusterRole, ClusterRoleBinding, MutatingWebhookConfiguration, ValidatingWebhookConfiguration and StorageClasses will be deleted using DeleteCollection(model.juju.is/name=controller)

The problem here is the model.juju.is/name label is not unique, unlike with hosted models (unique by namespace name == model name).

We need to ensure that all global resources outside of an owned namespace are labelled by either model uuid (because their life is tied to a model) or labelled by controller uuid (because their life is tied to a controller).

Changed in juju:
milestone: 3.3.0 → 3.3.1
Changed in juju:
milestone: 3.3.1 → 3.3.2
Changed in juju:
milestone: 3.3.2 → 3.3.4
Changed in juju:
assignee: nobody → Jack Shaw (jack-shaw)
Revision history for this message
Harry Pidcock (hpidcock) wrote :

We need to add a model.juju.is/model-uuid label with the model's uuid to all global resources so they are only deleted when that model goes away.

Ian Booth (wallyworld)
Changed in juju:
milestone: 3.3.4 → 3.3.5
Harry Pidcock (hpidcock)
Changed in juju:
milestone: 3.3.5 → 3.3.6
Harry Pidcock (hpidcock)
Changed in juju:
assignee: Jack Shaw (jack-shaw) → nobody
Changed in juju:
assignee: nobody → Jack Shaw (jack-shaw)
milestone: 3.3.6 → 3.4.4
Changed in juju:
milestone: 3.4.4 → 3.4.5
To post a comment you must log in.
This report contains Public information  
Everyone can see this information.

Other bug subscribers

Remote bug watches

Bug watches keep track of this bug in other bug trackers.