descheduler icon indicating copy to clipboard operation
descheduler copied to clipboard

WIP: Descheduling framework PoC

Open ingvagabund opened this issue 3 years ago • 7 comments

  • providing PoC for https://github.com/kubernetes-sigs/descheduler/issues/753
  • the same strategy can be configured differently through different profiles: https://github.com/kubernetes-sigs/descheduler/issues/486
  • following up on the v1alpha2 config: https://github.com/kubernetes-sigs/descheduler/issues/486 Example:
    apiVersion: descheduler/v1alpha2
    kind: DeschedulerPolicy
    profiles:
    - name: ProfileName
      pluginConfig:
      - name: DomainFilter
        args:
          namespaces:
            included:
            - namespace-1
            - namespace-2
            excluded:
            - namespace-A
            - namespace-B
          labelSelector: ...
      - name: DefaultEvictor
        args:
          evictSystemCriticalPods: true # default false
          evictFailedBarePods: true # default false
          evictLocalStoragePods: true # default false
          nodeFit: true # default false
      - name: PodsHavingTooManyRestarts
        args:
          podRestartThreshold: 100
          includingInitContainers: true
      - name: LowNodeUtilization
        args:
          lowThreshold:
            cpu : 20
            memory: 20
            pods: 20
          highThreshold:
            cpu : 50
            memory: 50
            pods: 50
      - name: TopologySpreadConstraint
        args:
          includeSoftConstraints: true
      plugins:
        filter:
          # default filters: DomainFilter
          disabled:
          enabled:
        sort:
          # default sorters: Priority
          disabled:
            Priority
          enabled:
            Utilization
        deschedule:
          # plugins descheduling pods without checking other pods
          enabled:
          - PodsHavingTooManyRestarts
          - InterPodAntiAffinity
        rebalance:
          # plugins descheduling pods while balancing distribution
          enabled:
          - Duplicates
          - LowNodeUtilization
          - TopologySpreadConstraint
        evict:
          # default evict plugins: DefaultEvictor
          disabled:
            DefaultEvictor
          enabled:
            CustomEvictor
    

ingvagabund avatar Apr 06 '22 21:04 ingvagabund

CLA Signed

The committers listed above are authorized under a signed CLA.

  • :white_check_mark: login: ingvagabund / name: Jan Chaloupka (2976e15cc3d5af14b6894b4cc1103db16d4a83bb, d0ffe8d6a7950734b8ed36f6b23174837dee66c6, 9b6b26686c8f0841f32b5b9df4f420db3daa4426, 228b269dc4358eacb14b836a011b0fbee2d4f23d, 58209f3a6b9ddb6918059f7bfb33e377f9f22e16, 469480a1540ec328623eb72f4b7956c276ffb8c3, e9bc0934f59621da27d508d7f64bc15ef28eeeaa, c674f0ad2f04134d0afa45c5b160fb06c37f334b, 2c38f802c9da3fbbb3596671617b32189795a21d)

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by: To complete the pull request process, please ask for approval from ingvagabund after the PR has been reviewed.

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

k8s-ci-robot avatar Apr 16 '22 08:04 k8s-ci-robot

@ingvagabund: PR needs rebase.

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.

k8s-ci-robot avatar May 04 '22 06:05 k8s-ci-robot

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Aug 07 '22 12:08 k8s-triage-robot

@ingvagabund: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-descheduler-verify-master d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-verify-master
pull-descheduler-unit-test-master-master d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-unit-test-master-master
pull-descheduler-test-e2e-k8s-master-1-22 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-22
pull-descheduler-test-e2e-k8s-master-1-21 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-21
pull-descheduler-test-e2e-k8s-master-1-23 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-23
pull-descheduler-test-e2e-k8s-master-1-24 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-24
pull-descheduler-test-e2e-k8s-master-1-25 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-25

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

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. I understand the commands that are listed here.

k8s-ci-robot avatar Sep 04 '22 07:09 k8s-ci-robot

The Kubernetes project currently lacks enough active contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle rotten

k8s-triage-robot avatar Oct 04 '22 08:10 k8s-triage-robot

/remove-lifecycle rotten

ingvagabund avatar Oct 10 '22 13:10 ingvagabund

@ingvagabund: The following tests failed, say /retest to rerun all failed tests or /retest-required to rerun all mandatory failed tests:

Test name Commit Details Required Rerun command
pull-descheduler-verify-master d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-verify-master
pull-descheduler-unit-test-master-master d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-unit-test-master-master
pull-descheduler-test-e2e-k8s-master-1-22 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-22
pull-descheduler-test-e2e-k8s-master-1-21 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-21
pull-descheduler-test-e2e-k8s-master-1-23 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-23
pull-descheduler-test-e2e-k8s-master-1-24 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-24
pull-descheduler-test-e2e-k8s-master-1-25 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-25
pull-descheduler-test-e2e-k8s-master-1-26 d7745ff561be3b0d2b84340d190dc470466d90fb link true /test pull-descheduler-test-e2e-k8s-master-1-26

Full PR test history. Your PR dashboard. Please help us cut down on flakes by linking to an open issue when you hit one in your PR.

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. I understand the commands that are listed here.

k8s-ci-robot avatar Dec 12 '22 12:12 k8s-ci-robot

The Kubernetes project currently lacks enough contributors to adequately respond to all PRs.

This bot triages PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the PR is closed

You can:

  • Mark this PR as fresh with /remove-lifecycle stale
  • Close this PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Mar 12 '23 12:03 k8s-triage-robot

/remove-lifecycle stale

ingvagabund avatar Mar 13 '23 13:03 ingvagabund

I am closing this one :sweat_smile: I think everyone working on the framework had this saved somewhere and no need to keep this POC open :)

/close

knelasevero avatar Apr 04 '23 15:04 knelasevero

@knelasevero: Closed this PR.

In response to this:

I am closing this one :sweat_smile: I think everyone working on the framework had this saved somewhere and no need to keep this POC open :)

/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.

k8s-ci-robot avatar Apr 04 '23 15:04 k8s-ci-robot