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

Retry when apiserver fails to listen on insecure port #28797

Merged
merged 1 commit into from
Jul 14, 2016

Conversation

aaronlevy
Copy link
Contributor

The apiserver will already continually retry when it fails to bind to the secure port. However, with the insecure port it does not retry, and any failures cause the apiserver to exit.

This change makes it so the api-server will retry on both insecure/secure ports.

A use-case for this change is for self-hosting the api-server, particularly when you are only running a single copy in your cluster. In some bootstrap and upgrade scenarios - it's necessary to replace/pivot from an existing api-server on the same host -- where you need a new copy running before tearing down the old (which is problematic when the api-server will try to bind to an in-use port and exit).

@k8s-github-robot k8s-github-robot added size/S Denotes a PR that changes 10-29 lines, ignoring generated files. release-note-label-needed labels Jul 11, 2016
@aaronlevy
Copy link
Contributor Author

/cc @kubernetes/sig-api-machinery

@lavalamp lavalamp assigned lavalamp and unassigned smarterclayton Jul 13, 2016
@lavalamp
Copy link
Member

Retrying forever doesn't seem quite right, but since you are doing exactly what the secure port is doing I won't make you revisit that. LGTM

@lavalamp lavalamp added lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. and removed release-note-label-needed labels Jul 13, 2016
@lavalamp
Copy link
Member

Marking as release note because people might want to verify that a health check is enabled in their configurations, so that this won't cause them to launch a non functional apiserver that never crashes.

@aaronlevy
Copy link
Contributor Author

Error seems to be unrelated to this PR.

@aaronlevy
Copy link
Contributor Author

@k8s-bot test this please github issue: #IGNORE

@aaronlevy
Copy link
Contributor Author

Not sure if I can do that, but figured I'd try.

@k8s-bot
Copy link

k8s-bot commented Jul 14, 2016

GCE e2e build/test passed for commit 25ac0dd.

@dims
Copy link
Member

dims commented Jul 14, 2016

Looks good to me 👍

@k8s-github-robot
Copy link

@k8s-bot test this [submit-queue is verifying that this PR is safe to merge]

@k8s-bot
Copy link

k8s-bot commented Jul 14, 2016

GCE e2e build/test passed for commit 25ac0dd.

@k8s-github-robot
Copy link

Automatic merge from submit-queue

@k8s-github-robot k8s-github-robot merged commit 224b039 into kubernetes:master Jul 14, 2016
@aaronlevy aaronlevy deleted the insecure-retry branch July 15, 2016 22:50
peebs pushed a commit to peebs/kubernetes that referenced this pull request Jul 26, 2016
aaronlevy added a commit to aaronlevy/kubernetes that referenced this pull request Aug 1, 2016
peebs pushed a commit to peebs/kubernetes that referenced this pull request Aug 12, 2016
aaronlevy added a commit to aaronlevy/kubernetes that referenced this pull request Aug 27, 2016
aaronlevy added a commit to coreos/kubernetes that referenced this pull request Sep 13, 2016
aaronlevy added a commit to coreos/kubernetes that referenced this pull request Sep 28, 2016
aaronlevy added a commit to coreos/kubernetes that referenced this pull request Oct 20, 2016
aaronlevy added a commit to coreos/kubernetes that referenced this pull request Nov 1, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
lgtm "Looks good to me", indicates that a PR is ready to be merged. release-note Denotes a PR that will be considered when it comes time to generate release notes. size/S Denotes a PR that changes 10-29 lines, ignoring generated files.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

7 participants