Comments (6)
@gzlatkov Thanks for catching this. This does seem like a bug. A PR would be really appreciated.
A couple of thoughts:
- Instead of
math.Round()
, lets domath.Floor()
instead so we never over-kill pods. So, withn=3
andkillValue=50
, we should never kill 2 pods. - I'm not sure what the best way to get the number of pods in
chaos.go
is. That info isn't already available there, so it will likely need to be added to theVictim
interface so each victim can report the number of pods.
cc @Spellchaser
from kube-monkey.
Hey @asobti,
- That sounds reasonable!
- I think we do have that information as it is extracted from the
clientset
which we are already have infunc (c *Chaos) terminate(clientset kube.Interface) error
. Will try to test that tomorrow.
from kube-monkey.
Hey @gzlatkov . Just checking in to see if you had a chance to work on this bug.
from kube-monkey.
Hi @asobti. I was looking into adding a fixed percentage mode when I came across this same issue.
I raised a pr with the my proposal for a new kill mode which includes a fix for this bug: #94
from kube-monkey.
@asobti Sorry, got caught up in work and was on holiday. My stuff still need the unittest adjustments, so I'm happy to go over @worldtiki's PR, which seems to be expanding on the fix with a new termination mode.
from kube-monkey.
Fixed by #94
from kube-monkey.
Related Issues (20)
- version error when installing helm chart via flux
- kube-monkey schedules Termination successfully, but POD always doesn't be killed HOT 6
- pods still continues to terminate after the end_hour HOT 2
- Simplify labels to opt in to chaos
- Context deadline exceeded during slack notification
- No terminations scheduled problem HOT 2
- Kubectl exec into Kube-monkey pod
- Failed to execute termination for v1.StatefulSet . Error: no terminations requested for v1.StatefulSet
- Missing copyright information HOT 1
- KubeMonkey isnt killing any pods HOT 1
- Kill - frequency control HOT 1
- Documentation site for Kube-Monkey HOT 1
- Golang monkey patching library utilized against terms of license
- How to pull from a private docker registry?
- Chart doesn't work with rbac disabled
- CVEs in latest kube-monkey Image HOT 2
- Debug mode - extend run time HOT 1
- Schedule terminations days HOT 2
- Documentation error: broken link config/param/param.go not found
- podSecurityContext does not work using Helm values template
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from kube-monkey.