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

feat: Enable pod anti-affinity by default for Modelmesh Controller #272

Merged
merged 1 commit into from
Nov 1, 2022
Merged

feat: Enable pod anti-affinity by default for Modelmesh Controller #272

merged 1 commit into from
Nov 1, 2022

Conversation

anishasthana
Copy link
Contributor

@anishasthana anishasthana commented Oct 28, 2022

The pod anti-affinity will tell the Kubernetes schedule to schedule pods on different nodes if possible. This will allow users to enable HA by setting the number of replicas to a number greater than 1.

@anishasthana
Copy link
Contributor Author

cc @njhill

@njhill
Copy link
Member

njhill commented Nov 1, 2022

@anishasthana sorry for the delay. I'm unsure of whether we want to do this by default since the controller doesn't really require HA. If it is restarted / temporarily down there should not be much noticeable impact to the running services since its only part of the control plane and the api server will still accept requests.

Do you know whether it's typical practice for kubernetes controllers to have multiple replicas, e.g. in OpenShift?

I'm fine with adding the anti-affinity rule, and users are free to increase the number of replicas, just not sure of setting the default to > 1 (and thereby increasing the baseline footprint).

The pod anti-affinity will tell the Kubernetes schedule to schedule
pods on different nodes if possible. This will allow users to enable
HA by setting the number of replicas to a number greater than 1

Signed-off-by: Anish Asthana <[email protected]>
@anishasthana
Copy link
Contributor Author

@njhill makes sense! I've added the pod anti-affinity as well as a comment letting users know it's safe to increase the replicas.

I don't know if it's "typical" practice, but I know a lot of SRE teams and the like greatly prefer having multiple pods where possible to minimize impact, even if the impact itself is barely noticeable.

Copy link
Member

@njhill njhill left a comment

Choose a reason for hiding this comment

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

Thanks @anishasthana

@kserve-oss-bot
Copy link
Collaborator

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: anishasthana, njhill

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

The pull request process is described 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

@njhill
Copy link
Member

njhill commented Nov 1, 2022

/lgtm

@kserve-oss-bot kserve-oss-bot merged commit 55f5c18 into kserve:main Nov 1, 2022
@anishasthana anishasthana deleted the enable_ha branch November 2, 2022 17:21
@njhill njhill changed the title feat: Enable HA by default for Modelmesh Controller feat: Enable pod anti-affinity by default for Modelmesh Controller Jan 13, 2023
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants