Floating ip of container nodes


#1

Hi,

In the container provider --> container nodes section, where we see list of all the container nodes it displays only private ip associated with that node. Are there any plans to display the public ip of the nodes ?


#2

Does this info exist in kubectl get node -o yaml output?


#3

As far as i know we will not have this information at kube level as the binding of floating ip happens at instance level on the Iaas layer. In Kubectl output we will see only the private IP of the nodes.


#4

OK cool. Do you have the underlying VM/IaaS layer managed by ManageIQ as well?
Which platform is it?

We do attempt to “cross-link” container nodes to the VM it runs on.
http://manageiq.org/docs/reference/latest/doc-Managing_Providers/miq/#cross-providers-insight
I’m not sure where exactly you’ll see it in UI, but I guess there’d be a link from the node’s page?
Also I think the link is supposed be visible in provider topology view.


#5

Thank you for the document. We are prefer to be Iaas agnostic and i see your document covers most of the leading Iaas providers which is good.

Does it mean that we need to manage the Iaas layer with ManageIQ in order to get the information of floating IP’s etc so that it can be linked with container nodes at Paas layer ?

Can we retrieve this floating IP information of the container nodes using the REST api ? For example, using REST api i want to filter all container nodes which have specific tag.


#6

cc @enoodle @zeari who know more about cross-linking.

If you find a IaaS that manageIQ supports but we don’t cross-link, tell us, I believe we’d like to cover them all (if technically doable).

Well, you need to connect the info from somewhere :slight_smile:
TBH I don’t know anything about VMs and their IPs, but if you say it’s only available there, then you need it.

Probably :wink: But you might need to walk the node -> VM links.

I think the relevant ContainerNode fields are lives_on_type, lives_on_id. I’d hope these are exposed in API as an href to the VM, which you can then query for the IP data? Note you might need attributes to expose the attrs, and that API always omits null fields. maybe you can use expand and/or attributes to get it in one JSON(?) (all untested)
If DB has these fields and you can’t get them from REST API, please report bug.

PS. /container_nodes collection was missing from API but this should be fixed on gaprindashvili & master [Fetch Container Nodes By Tag (REST Query)]


PS. if you want to see how our cross-linking works, here’s the starting point in code: https://github.com/ManageIQ/manageiq-providers-kubernetes/blob/bd1eeb05697f4/app/models/manageiq/providers/kubernetes/container_manager/refresh_parser.rb#L675