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

Whereabouts IPAM CNI Sticky IP Addresses Enhancement #458

Closed
wants to merge 1 commit into from

Conversation

dougbtv
Copy link
Member

@dougbtv dougbtv commented Aug 26, 2020

This proposes a general design for how Whereabouts can handle sticky (persistent) IP addresses.

This proposes a general design for how Whereabouts can handle sticky (persistent) IP addresses.
@openshift-ci-robot
Copy link

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: dougbtv
To complete the pull request process, please assign jcantrill
You can assign the PR to them by writing /assign @jcantrill in a comment when ready.

The full list of commands accepted by this bot can be found here.

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@itamarh
Copy link

itamarh commented Sep 10, 2020

There is another aspect around IPAM for providing same IP which came up when discussing KubeVirt and live migration for Pod networks. Could be very different/not in scope, but might be wroth considering when looking at this.


## Summary

This feature implements functionality for Whereabouts where workloads are assigned an IP address, and when those workloads are terminated and restarted, are assigned the same IP address.
Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Is this an enhancement to something we already ship and support, or proposing Whereabouts in general?

If it's something we already ship, where could I read more about its inclusion in OpenShift and what use cases it solves today?

If it's introducing Whereabouts as a new thing, can you update this to do two things: first introduce the problem without mention of the solution (whereabouts). Then can you summarize what wherabouts is, where it comes from, and how people can learn more?

Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

whereabouts is something we already ship, but that was pre-enhancements, and I have no idea what it does (although I'm sure Doug explained it to me at some point) so yeah, it would be good to have this enhancement as both an explanation of whereabouts and an explanation of the new 4.7 feature on top of that.

Copy link
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

+1 to explaining both, thanks :)


## Motivation

This functionality has been requested to provide reliable IP addresses for workloads that advertise their IP address in a method other than Kubernetes services, and where external components require that those same IP addresses be reachable regardless if the workload has been restarted.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

What does "advertise their IP address in a method other than Kubernetes services" mean?


Some upstream discussion regarding the design has already occured in [this upstream issue](https://github.com/dougbtv/whereabouts/issues/51).

Generally the proposed design is to create a new CRD that is specific to an individual IP address. This can be used with, or as an extension to data that exists for storing IP addresses individually in order to determine if they are used in overlapping ranges.
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@openshift-bot
Copy link

Issues go stale after 90d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually close.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle stale

@openshift-ci-robot openshift-ci-robot added the lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. label Dec 13, 2020
@openshift-bot
Copy link

Stale issues rot after 30d of inactivity.

Mark the issue as fresh by commenting /remove-lifecycle rotten.
Rotten issues close after an additional 30d of inactivity.
Exclude this issue from closing by commenting /lifecycle frozen.

If this issue is safe to close now please do so with /close.

/lifecycle rotten
/remove-lifecycle stale

@openshift-ci-robot openshift-ci-robot added lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed. and removed lifecycle/stale Denotes an issue or PR has remained open with no activity and has become stale. labels Jan 13, 2021
@openshift-bot
Copy link

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

@openshift-ci-robot
Copy link

@openshift-bot: Closed this PR.

In response to this:

Rotten issues close after 30d of inactivity.

Reopen the issue by commenting /reopen.
Mark the issue as fresh by commenting /remove-lifecycle rotten.
Exclude this issue from closing again by commenting /lifecycle frozen.

/close

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lifecycle/rotten Denotes an issue or PR that has aged beyond stale and will be auto-closed.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants