When exposing nbi with LoadBalancer service type, an empty ingress address is retrieved
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Canonical Juju |
Invalid
|
Undecided
|
Unassigned | ||
charm-osm-nbi |
New
|
Undecided
|
Unassigned |
Bug Description
When deploying OSM with NBI exposed with a LoadBalancer service type, it cannot find its ingress-addresses to send it to the other applications that need it (e.g. UI).
OSM is deployed with the following bundle: https:/
As K8s is deployed on top of OpenStack with Octavia, it makes sense to expose the OSM apps with a load-balancer instead of using Ingress.
We can see the following in the nbi-k8s-operator-0 logs:
kubectl logs nbi-k8s-operator-0 -n osm
...
tracer: ++ queue handler reactive/
tracer: ++ queue handler reactive/
2019-11-25 14:30:52 INFO juju-log Invoking reactive handler: reactive/
2019-11-25 14:30:52 INFO juju-log Invoking reactive handler: reactive/
2019-11-25 14:30:52 INFO juju-log status-set: maintenance: Sending NBI configuration
2019-11-25 14:30:54 INFO juju-log No ingress-addresses: {'bind-addresses': [{'macaddress': '', 'interfacename': '', 'addresses': []}]}
2019-11-25 14:30:54 INFO juju-log status-set: active: ready
tags: | added: k8s network osm |
The log message saying that there's no ingress-addresses seems to come from https:/ /git.launchpad. net/charm- osm-common/ tree/lib/ charms/ osm/k8s. py#n8 get(endpoint, relation_id()) which will call network-get itself.
The get_service_ip function calls network_
Looking at the juju status of the nbi-k8s app, it seems that juju does not know any address for this application:
juju status nbi-k8s
Model Controller Cloud/Region Version SLA Timestamp
osm foundation-k8s kubernetes_cloud 2.6.10 unsupported 14:48:15Z
SAAS Status Store URL openstack admin/kubernete s.osm-vca
osm-vca active foundation-
App Version Status Scale Charm Store Rev OS Address Notes
nbi-k8s active 1 nbi-k8s jujucharms 30 kubernetes
Unit Workload Agent Address Ports Message
nbi-k8s/0* active idle 10.1.3.33 9999/TCP ready