-
Notifications
You must be signed in to change notification settings - Fork 40k
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
DaemonSet should respect Pod Affinity and Pod AntiAffinity #29276
Comments
@lukaszo is this issue fixed? |
@Kargakis nope |
DeamonSet is meant to run one copy of Pod on every node that matches the NodeSelector. What would PodAffinity PodAntiAffinity do here? I can image that hard PodAntiAffinity might be used to indicate "put a Pod on every Node that matches your NodeSelector except for Nodes that have Pod x", but users could achieve the same functionality with a more restrictive NodeSelector and a more granular labeling scheme. Have we put thought into the semantics of the other forms of Pod Affinity/AntiAffinity? |
@kow3ns it's not an unreasonable question. Thinking out loud here, I could imagine you might want to run one daemon per rack, e.g. to control some rack-level hardware resource. (Pod affinity is harder to justify.) |
Issues go stale after 90d of inactivity. Prevent issues from auto-closing with an If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or |
/remove-lifecycle stale @bsalamat has been looking at this |
+1 . This used to work back when affinity was indicated via the In other words, this is a regression. |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
/remove-lifecycle stale
…On Sun, Jul 29, 2018 at 10:31 fejta-bot ***@***.***> wrote:
Issues go stale after 90d of inactivity.
Mark the issue as fresh with /remove-lifecycle stale.
Stale issues rot after an additional 30d of inactivity and eventually
close.
If this issue is safe to close now please do so with /close.
Send feedback to sig-testing, kubernetes/test-infra and/or fejta
<https://github.com/fejta>.
/lifecycle stale
—
You are receiving this because you commented.
Reply to this email directly, view it on GitHub
<#29276 (comment)>,
or mute the thread
<https://github.com/notifications/unsubscribe-auth/AEmN06BSjJWcgDw2QdEbzXu1XpYoL9fbks5uLfGFgaJpZM4JQpIZ>
.
|
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
Rotten issues close after 30d of inactivity. Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
@fejta-bot: Closing this issue. In response to this:
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. |
/reopen |
@dblackdblack: You can't reopen an issue/PR unless you authored it or you are a collaborator. In response to this:
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. |
@rabbitfang I have the exact same requirement but for datadog. Did you manage to solve it? |
nope
… |
We have somewhat the same requirements about scheduling the daemonset pods with affinity with app pods and anti-affinity with nodes not running the app pods after app pods are deleted from the nodes. Any suggestion? |
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](https://jira.daumkakao.com/browse/VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](https://jira.daumkakao.com/browse/VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
**change resources for `deploy/k8s/dev`** To test the Varlog in a Krane-based cluster, the size of the cluster should be at least 20 nodes. Recommended numbers are as follows: the number of MRs is three and the number of SNs is 3 or 4 and the replication factor is 3. **daemonset doesn't respect podAntiAffinity** See kubernetes/kubernetes#29276. We should attach label `varlog-type=telemetry` to nodes running jaeger, prometheus, otel-collector and grafana. Daemonset for MR and SN won't be deployed to those nodes. The e2e testing module ignores nodes labed with `varlog-type=telemetry`. Resolves [#VARLOG-509](VARLOG-509).
This is a split from #22205 where only node affinity was added to DaemonSets. Pod Affinity and Pod AntiAffinity are still missing in DaemonSets.
It can be implemented in two ways:
InterPodAffinityMatches
predicate check tonodeShouldRunDaemonPod
indaemoncontroller.go
InterPodAffinityMatches
predicate toGeneralPredicates
which is used by daemon set.cc @bgrant0607
The text was updated successfully, but these errors were encountered: