Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Containers using other containers net namespace don't have IP addresses #1394

Closed
tomwilkie opened this issue Apr 28, 2016 · 6 comments
Closed
Assignees
Labels
k8s Pertains to integration with Kubernetes
Milestone

Comments

@tomwilkie
Copy link
Contributor

This particularly affects k8s, where every container uses a pause containers net namespace.

The IP should show up in the details panel, and we should ignore pause containers for the purpose of rendering.

@tomwilkie tomwilkie added this to the 0.15.0 milestone Apr 28, 2016
@tomwilkie tomwilkie added the k8s Pertains to integration with Kubernetes label Apr 28, 2016
@rade
Copy link
Member

rade commented Apr 28, 2016

we should ignore pause containers for the purpose of rendering.

In the container view? Why?

If I don't want to see the gory insides of a pod, surely I'd use the Pod view, in which case none of the individual containers should show up.

@tomwilkie
Copy link
Contributor Author

Sorry I wasn't being clear. I mean for the purpose of rendering edges; we currently can't attribute short lived connection edges to containers on k8s as every net namespace is shared. We can do better if we ignore pause containers for this purpose.

@rade
Copy link
Member

rade commented Apr 28, 2016

We can do better if we ignore pause containers for this purpose.

How so? In general a single pod will be made up of multiple containers plus the pause container, all sharing the same netns. Which container would you attribute connections to?

@2opremio
Copy link
Contributor

2opremio commented Apr 28, 2016

Duplicate of #986

@tomwilkie
Copy link
Contributor Author

How so? In general a single pod will be made up of multiple containers plus the pause container, all sharing the same netns.

Yes, in general we can't solve this problem with conntrack data. But I don't think its actually that usual to have multiple containers per pod, so we can do better in the case when their is only one by ignoring the pause container.

Which container would you attribute connections to?

If there is more than one container with the IP we ignore that edge as we can't deterministically pick the right one.

Right now we'd attribute the edge to a pause container, which is just wrong.

@rade
Copy link
Member

rade commented Apr 28, 2016

If there is more than one container with the IP we ignore that edge as we can't deterministically pick the right one.

The pause container would deterministically be the right one.

Right now we'd attribute the edge to a pause container, which is just wrong.

I actually think it's exactly right.

As I said above, if a user doesn't care about the innards of pods, then they should be using the pod view, not the container view.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
k8s Pertains to integration with Kubernetes
Projects
None yet
Development

No branches or pull requests

3 participants