Skip to content

Commit

Permalink
Merge pull request #10 from steadybit/advice
Browse files Browse the repository at this point in the history
Advice
  • Loading branch information
ManuelGerding authored Jan 17, 2024
2 parents 14a6d47 + 635876d commit 8ba3952
Show file tree
Hide file tree
Showing 103 changed files with 657 additions and 0 deletions.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
id: com.steadybit.extension_kubernetes.advice.k8s-cpu-limit
label: Limit CPU Resources
description: Validates that your Kubernetes resources have a CPU limit configured.
icon: <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M13 1.5a1 1 0 10-2 0v1.25H7.75V1.5a1 1 0 00-2 0v1.25h-.5a2.5 2.5 0 00-2.5 2.5v.5H1.5a1 1 0 000 2h1.25V11H1.5a1 1 0 100 2h1.25v3.25H1.5a1 1 0 100 2h1.25v.5a2.5 2.5 0 002.5 2.5h.5v1.25a1 1 0 102 0v-1.25H11v1.25a1 1 0 102 0v-1.25h3.25v1.25a1 1 0 102 0v-1.25h.5a2.5 2.5 0 002.5-2.5v-.5h1.25a1 1 0 100-2h-1.25V13h1.25a1 1 0 100-2h-1.25V7.75h1.25a1 1 0 100-2h-1.25v-.5a2.5 2.5 0 00-2.5-2.5h-.5V1.5a1 1 0 10-2 0v1.25H13V1.5zM4.75 12V5.25a.5.5 0 01.5-.5h13.5a.5.5 0 01.5.5v13.5a.5.5 0 01-.5.5H5.25a.5.5 0 01-.5-.5V12zM9 9.143C9 9.064 9.064 9 9.143 9h5.714c.079 0 .143.064.143.143v5.714a.143.143 0 01-.143.143H9.143A.143.143 0 019 14.857V9.143zM9.143 7C7.959 7 7 7.96 7 9.143v5.714C7 16.041 7.96 17 9.143 17h5.714C16.041 17 17 16.04 17 14.857V9.143C17 7.959 16.04 7 14.857 7H9.143z" fill="currentColor"/></svg>
targetTypes:
- com.steadybit.extension_kubernetes.kubernetes-daemonset
- com.steadybit.extension_kubernetes.kubernetes-deployment
- com.steadybit.extension_kubernetes.kubernetes-statefulset
tags:
- Kubernetes
- Limits
- CPU
extension: com.steadybit.extension_kubernetes
releaseDate: '2024-02-01'
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
- type: image
src: advice-state-action-needed.png
alt: The advice is in the state 'Action Needed', which requires configuration changes.
- type: image
src: advice-state-validation-needed.png
alt: The advice is in the state 'Validation Needed', which requires manually verifying the performed configuration changes.
- type: image
src: advice-validation-experiment-design.png
alt: An automatically created experiment design to validate the configuration changes.
- type: image
src: advice-validation-experiment-run.png
alt: Running the automatically created experiment, including additional validation steps, to verify the change works as expected.
- type: image
src: advice-state-implemented.png
alt: The advice is thoroughly followed, shown by the state 'Implemented'.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Introduction
Validates whether you limit the maximum allowed CPU usage for your Kubernetes resources. Limiting CPU usage prevents utilizing the entire available CPU, which may cause stability issues for other Kubernetes resources.

# Supported Advice States
## Action Needed
Automatically discovers whether all Kubernetes container's `resources.limits.cpu` are configured. The discovery is performed by the open-source library [kube-score](https://github.com/zegl/kube-score) and integrated into this advice.

## Validation Needed
Asks you to validate with an automatically created experiment that provided features work as expected, fail gracefully, workload resources scale up or monitoring alerts while consuming a lot of CPU.

## Implemented
Once the Kubernetes container's specification `resources.limits.cpu` configures a value that was marked as validated.

# Disabling Advice
Every advice is automatically active as described in [extension-kubernetes#configuration](https://github.com/steadybit/extension-kubernetes/?tab=readme-ov-file#configuration).
You can also activate advice individually, using for this advice, the identifier `com.steadybit.extension_kubernetes.advice.k8s-cpu-limit`.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
id: com.steadybit.extension_kubernetes.advice.k8s-cpu-request
label: Requesting Reasonable CPU Resources
description: Validates that your Kubernetes resources request reasonable CPU.
icon: <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M13 1.5a1 1 0 10-2 0v1.25H7.75V1.5a1 1 0 00-2 0v1.25h-.5a2.5 2.5 0 00-2.5 2.5v.5H1.5a1 1 0 000 2h1.25V11H1.5a1 1 0 100 2h1.25v3.25H1.5a1 1 0 100 2h1.25v.5a2.5 2.5 0 002.5 2.5h.5v1.25a1 1 0 102 0v-1.25H11v1.25a1 1 0 102 0v-1.25h3.25v1.25a1 1 0 102 0v-1.25h.5a2.5 2.5 0 002.5-2.5v-.5h1.25a1 1 0 100-2h-1.25V13h1.25a1 1 0 100-2h-1.25V7.75h1.25a1 1 0 100-2h-1.25v-.5a2.5 2.5 0 00-2.5-2.5h-.5V1.5a1 1 0 10-2 0v1.25H13V1.5zM4.75 12V5.25a.5.5 0 01.5-.5h13.5a.5.5 0 01.5.5v13.5a.5.5 0 01-.5.5H5.25a.5.5 0 01-.5-.5V12zM9 9.143C9 9.064 9.064 9 9.143 9h5.714c.079 0 .143.064.143.143v5.714a.143.143 0 01-.143.143H9.143A.143.143 0 019 14.857V9.143zM9.143 7C7.959 7 7 7.96 7 9.143v5.714C7 16.041 7.96 17 9.143 17h5.714C16.041 17 17 16.04 17 14.857V9.143C17 7.959 16.04 7 14.857 7H9.143z" fill="currentColor"/></svg>
targetTypes:
- com.steadybit.extension_kubernetes.kubernetes-daemonset
- com.steadybit.extension_kubernetes.kubernetes-deployment
- com.steadybit.extension_kubernetes.kubernetes-statefulset
tags:
- Kubernetes
- Requests
- CPU
extension: com.steadybit.extension_kubernetes
releaseDate: '2024-02-01'
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
- type: image
src: advice-state-action-needed.png
alt: The advice is in the state 'Action Needed', which requires configuration changes.
- type: image
src: advice-state-validation-needed.png
alt: The advice is in the state 'Validation Needed', which requires manually verifying the performed configuration changes.
- type: image
src: advice-state-implemented.png
alt: The advice is thoroughly followed, shown by the state 'Implemented'.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Introduction
Validates whether you request reasonable CPU for your Kubernetes resources.
The requested resources of a pod's container inform Kubernetes' decision on where to schedule a pod.

# Supported Advice States
## Action Needed
Automatically discovers whether all Kubernetes container's `resources.requests.cpu` are configured. The discovery is performed by the open-source library [kube-score](https://github.com/zegl/kube-score) and integrated into this advice.

## Validation Needed
Asks you to confirm that you've configured the requested CPU reasonable to the best of our knowledge and belief.

## Implemented
Once the Kubernetes container's specification `resources.requests.cpu` configures a value that was marked as validated.

# Disabling Advice
Every advice is automatically active as described in [extension-kubernetes#configuration](https://github.com/steadybit/extension-kubernetes/?tab=readme-ov-file#configuration).
You can also activate advice individually, using, for this advice, the identifier `com.steadybit.extension_kubernetes.advice.k8s-cpu-request`.
Original file line number Diff line number Diff line change
@@ -0,0 +1,13 @@
---
id: com.steadybit.extension_kubernetes.advice.k8s-deployment-strategy
label: Rolling Update Deployments
description: Validates that you deploy Kubernetes resources via rolling updates.
icon: <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M11.39 19.93L10.81 20.2C10.36 20.42 9.84 20.41 9.39 20.19L3.5 17.24C2.95 16.96 2.6 16.41 2.6 15.79V8.19001C2.6 7.57001 2.94 7.02001 3.49 6.74001L9.38 3.79001C9.83 3.57001 10.35 3.56001 10.8 3.77001L17.07 6.75001C17.63 7.02001 18 7.59001 18 8.21001C18 8.65001 18.36 9.01001 18.8 9.01001C19.24 9.01001 19.6 8.65001 19.6 8.21001C19.6 6.97001 18.88 5.83001 17.76 5.30001L11.5 2.31001C10.6 1.88001 9.57 1.89001 8.67 2.34001L2.78 5.30001C1.68 5.85001 1 6.95001 1 8.18001V15.78C1 17.01 1.68 18.11 2.78 18.66L8.67 21.61C9.13 21.84 9.62 21.95 10.11 21.95C10.6 21.95 11.05 21.85 11.49 21.64L12.07 21.37C12.47 21.18 12.64 20.7 12.45 20.3C12.26 19.9 11.78 19.73 11.38 19.92L11.39 19.93ZM11.19 7.15001C10.72 6.94001 10.16 6.93001 9.69 7.14001L6.15 8.67001C5.55 8.93001 5.17 9.47001 5.17 10.07V13.91C5.17 14.51 5.55 15.06 6.15 15.31L9.69 16.84C10.08 17.01 10.51 17.03 10.91 16.92C10.96 13.94 12.84 11.43 15.44 10.5V10.05C15.44 9.46001 15.07 8.93001 14.49 8.66001L11.18 7.16001L11.19 7.15001ZM22.26 16.38C21.92 16.38 21.64 16.67 21.64 17.02C21.64 19.29 19.82 21.18 17.64 21.18C15.46 21.18 13.64 19.29 13.64 17.02C13.64 14.75 15.46 12.86 17.64 12.86H18.62L17.82 13.69C17.58 13.94 17.58 14.35 17.82 14.59C18.06 14.84 18.45 14.84 18.69 14.59L20.54 12.67C20.78 12.42 20.78 12.01 20.54 11.76L18.69 9.84001C18.45 9.59001 18.06 9.59001 17.82 9.84001C17.58 10.09 17.58 10.5 17.82 10.75L18.62 11.58H17.64C14.77 11.58 12.4 14.04 12.4 17.02C12.4 20 14.77 22.46 17.64 22.46C20.51 22.46 22.88 20 22.88 17.02C22.88 16.67 22.6 16.38 22.26 16.38Z" fill="currentColor"/></svg>
targetTypes:
- com.steadybit.extension_kubernetes.kubernetes-deployment
tags:
- Kubernetes
- Deployment Strategy
- Rolling Update
extension: com.steadybit.extension_kubernetes
releaseDate: '2024-02-01'
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- type: image
src: advice-state-action-needed.png
alt: The advice is in the state 'Action Needed', which requires configuration changes.
- type: image
src: advice-state-implemented.png
alt: The advice is thoroughly followed, shown by the state 'Implemented'.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Introduction
Validates whether you deploy Kubernetes resources via rolling updates to prevent downtime when deploying a new version.

# Supported Advice States
## Action Needed
The advice automatically discovers whether you configured your Kubernetes deployments `spec.strategy` to `RollingUpdate`. The discovery is performed by the open-source library [kube-score](https://github.com/zegl/kube-score) and integrated into this advice.


## Validation Needed
Not supported.

## Implemented
Once the Kubernetes deployment `spec.strategy` type is properly configured for `RollingUpdate`

# Disabling Advice
Every advice is automatically active as described in [extension-kubernetes#configuration](https://github.com/steadybit/extension-kubernetes/?tab=readme-ov-file#configuration).
You can also activate advice individually, using for this advice, the identifier `com.steadybit.extension_kubernetes.advice.k8s-deployment-strategy`.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
id: com.steadybit.extension_kubernetes.advice.k8s-ephemeral-storage-limit
label: Limit Ephemeral Storage Resources
description: Validates that your Kubernetes resources have a ephemeral storage limit configured.
icon: <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.375 17.625a.375.375 0 100 .75.375.375 0 000-.75zm-3.375 0a.375.375 0 100 .75.375.375 0 000-.75z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M14.375 17.065a1.125 1.125 0 111.25 1.87 1.125 1.125 0 01-1.25-1.87zm.768 1.281a.378.378 0 00.225-.42.376.376 0 10-.225.42z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M5.25 14.25a3.75 3.75 0 000 7.5h13.5a3.75 3.75 0 100-7.5H5.25zm-3.712.038A5.25 5.25 0 015.25 12.75h13.5a5.25 5.25 0 110 10.5H5.25a5.25 5.25 0 01-3.712-8.962z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6.878.75h10.245a3.75 3.75 0 013.65 2.894l3.088 13.158a.75.75 0 11-1.46.342L19.313 3.986a2.25 2.25 0 00-2.19-1.736H6.878a2.25 2.25 0 00-2.19 1.736l-3.09 13.158a.75.75 0 01-1.46-.342L3.227 3.644A3.75 3.75 0 016.878.75z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.5 18a.75.75 0 01.75-.75H9a.75.75 0 010 1.5H5.25A.75.75 0 014.5 18z" fill="currentColor"/></svg>
targetTypes:
- com.steadybit.extension_kubernetes.kubernetes-daemonset
- com.steadybit.extension_kubernetes.kubernetes-deployment
- com.steadybit.extension_kubernetes.kubernetes-statefulset
tags:
- Kubernetes
- Limits
- Ephemeral Storage
extension: com.steadybit.extension_kubernetes
releaseDate: '2024-02-01'
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
---
- type: image
src: advice-state-action-needed.png
alt: The advice is in the state 'Action Needed', which requires configuration changes.
- type: image
src: advice-state-validation-needed.png
alt: The advice is in the state 'Validation Needed', which requires manually verifying the performed configuration changes.
- type: image
src: advice-validation-experiment-design.png
alt: An automatically created experiment design to validate the configuration changes.
- type: image
src: advice-validation-experiment-run.png
alt: Running the automatically created experiment, including additional validation steps, to verify the change works as expected.
- type: image
src: advice-state-implemented.png
alt: The advice is thoroughly followed, shown by the state 'Implemented'.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Introduction
Validates whether you limit the maximum allowed ephemeral storage for your Kubernetes resources. Limiting ephemeral storage prevents utilizing the entire available disk space, which may cause stability issues for other Kubernetes resources.

# Supported Advice States
## Action Needed
Automatically discovers whether all Kubernetes container's `resources.limits.ephemeral-storage` are configured. The discovery is performed by the open-source library [kube-score](https://github.com/zegl/kube-score) and integrated into this advice.

## Validation Needed
Asks you to validate with an automatically created experiment that provided features work as expected, fail gracefully, workload resources scale up or monitoring alerts while consuming a lot of ephemeral storage.

## Implemented
Once the Kubernetes container's specification `resources.limits.ephemeral-storage` configures a value that was marked as validated.

# Disabling Advice
Every advice is automatically active as described in [extension-kubernetes#configuration](https://github.com/steadybit/extension-kubernetes/?tab=readme-ov-file#configuration).
You can also activate advice individually, using for this advice, the identifier `com.steadybit.extension_kubernetes.advice.k8s-ephemeral-storage-limit`.
Original file line number Diff line number Diff line change
@@ -0,0 +1,15 @@
---
id: com.steadybit.extension_kubernetes.advice.k8s-ephemeral-storage-request
label: Requesting Reasonable Ephemeral Storage Resources
description: Validates that your Kubernetes resources request reasonable ephemeral storage.
icon: <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path d="M18.375 17.625a.375.375 0 100 .75.375.375 0 000-.75zm-3.375 0a.375.375 0 100 .75.375.375 0 000-.75z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M14.375 17.065a1.125 1.125 0 111.25 1.87 1.125 1.125 0 01-1.25-1.87zm.768 1.281a.378.378 0 00.225-.42.376.376 0 10-.225.42z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M5.25 14.25a3.75 3.75 0 000 7.5h13.5a3.75 3.75 0 100-7.5H5.25zm-3.712.038A5.25 5.25 0 015.25 12.75h13.5a5.25 5.25 0 110 10.5H5.25a5.25 5.25 0 01-3.712-8.962z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M6.878.75h10.245a3.75 3.75 0 013.65 2.894l3.088 13.158a.75.75 0 11-1.46.342L19.313 3.986a2.25 2.25 0 00-2.19-1.736H6.878a2.25 2.25 0 00-2.19 1.736l-3.09 13.158a.75.75 0 01-1.46-.342L3.227 3.644A3.75 3.75 0 016.878.75z" fill="currentColor"/><path fill-rule="evenodd" clip-rule="evenodd" d="M4.5 18a.75.75 0 01.75-.75H9a.75.75 0 010 1.5H5.25A.75.75 0 014.5 18z" fill="currentColor"/></svg>
targetTypes:
- com.steadybit.extension_kubernetes.kubernetes-daemonset
- com.steadybit.extension_kubernetes.kubernetes-deployment
- com.steadybit.extension_kubernetes.kubernetes-statefulset
tags:
- Kubernetes
- Requests
- Ephemeral Storage
extension: com.steadybit.extension_kubernetes
releaseDate: '2024-02-01'
Original file line number Diff line number Diff line change
@@ -0,0 +1,10 @@
---
- type: image
src: advice-state-action-needed.png
alt: The advice is in the state 'Action Needed', which requires configuration changes.
- type: image
src: advice-state-validation-needed.png
alt: The advice is in the state 'Validation Needed', which requires manually verifying the performed configuration changes.
- type: image
src: advice-state-implemented.png
alt: The advice is thoroughly followed, shown by the state 'Implemented'.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,17 @@
# Introduction
Validates whether you request reasonable ephemeral storage for your Kubernetes resources.
The requested resources of a pod's container inform Kubernetes' decision on where to schedule a pod.

# Supported Advice States
## Action Needed
Automatically discovers whether all Kubernetes container's `resources.requests.ephemeral-storage` are configured. The discovery is performed by the open-source library [kube-score](https://github.com/zegl/kube-score) and integrated into this advice.

## Validation Needed
Asks you to confirm that you've configured the requested ephemeral storage reasonable to the best of our knowledge and belief.

## Implemented
Once the Kubernetes container's specification `resources.requests.ephemeral-storage` configures a value that was marked as validated.

# Disabling Advice
Every advice is automatically active as described in [extension-kubernetes#configuration](https://github.com/steadybit/extension-kubernetes/?tab=readme-ov-file#configuration).
You can also activate advice individually, using, for this advice, the identifier `com.steadybit.extension_kubernetes.advice.k8s-ephemeral-storage-request`.
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
---
id: com.steadybit.extension_kubernetes.advice.k8s-host-podantiaffinity
label: Schedule Pods on Different Hosts
description: Prevent multiple pods from being deployed on the same cluster's node to increase availability in case one node becomes unavailable.
icon: <svg viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg"><path fill-rule="evenodd" clip-rule="evenodd" d="M11.65 2.064a.993.993 0 01.7 0l10 3.776a1.01 1.01 0 010 1.889l-10 3.773a.993.993 0 01-.7 0l-10-3.773A1.008 1.008 0 011 6.784c0-.42.259-.796.65-.944l10-3.776zM1.063 17.03a.998.998 0 011.287-.591L12 20.082l9.649-3.644a.998.998 0 011.287.59 1.01 1.01 0 01-.586 1.299l-10 3.776a.993.993 0 01-.7 0l-10-3.776a1.01 1.01 0 01-.586-1.298zm1.287-5.89a.998.998 0 00-1.287.59 1.01 1.01 0 00.586 1.299l10 3.776a.993.993 0 00.7 0l10-3.776a1.01 1.01 0 00.586-1.298.998.998 0 00-1.287-.59L12 14.782l-9.649-3.644z" fill="currentColor"/></svg>
targetTypes:
- com.steadybit.extension_kubernetes.kubernetes-deployment
- com.steadybit.extension_kubernetes.kubernetes-statefulset
tags:
- Kubernetes
- Pod Anti Affinity
- Redundancy
extension: com.steadybit.extension_kubernetes
releaseDate: '2024-02-01'
Original file line number Diff line number Diff line change
@@ -0,0 +1,7 @@
---
- type: image
src: advice-state-action-needed.png
alt: The advice is in the state 'Action Needed', which requires configuration changes.
- type: image
src: advice-state-implemented.png
alt: The advice is thoroughly followed, shown by the state 'Implemented'.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Original file line number Diff line number Diff line change
@@ -0,0 +1,16 @@
# Introduction
Validates whether you prevent multiple pods from being deployed on the same node in the cluster to increase availability in case one node becomes unavailable. Otherwise, a single node outage may cause an entire deployment/stateful set to become unavailable.

# Supported Advice States
## Action Needed
The advice automatically discovers whether a Kubernetes workload resource spreads pods across hosts, e.g., via a `podAntiAffinity` rule. The discovery is performed by the open-source library [kube-score](https://github.com/zegl/kube-score) and integrated into this advice.

## Validation Needed
Not supported.

## Implemented
Once you have configured Kubernetes to spread the pods across different hosts.

# Disabling Advice
Every advice is automatically active as described in [extension-kubernetes#configuration](https://github.com/steadybit/extension-kubernetes/?tab=readme-ov-file#configuration).
You can also activate advice individually, using for this advice, the identifier `com.steadybit.extension_kubernetes.advice.k8s-host-podantiaffinity`.
Loading

0 comments on commit 8ba3952

Please sign in to comment.