Comments (5)
That sounds fantastic. I would love to see that
from kube-monkey.
Awesome, thanks!
from kube-monkey.
I think destroying it is unnecessary for services. If you were to rename it, it wouldn't be able to resolve.
from kube-monkey.
I like the idea as that would be really simple, but I don't believe you can rename a Service since there isn't a way to update the hostname/URL simultaneously:
$ oc patch svc infinispan -p '{ "metadata": { "name": "infinispanx" } }'
Error from server (BadRequest): the name of the object (infinispanx) does not match the name on the URL (infinispan)
$ kubectl patch svc infinispan -p '{ "metadata": { "name": "infinispanx" } }'
Error from server (BadRequest): the name of the object (infinispanx) does not match the name on the URL (infinispan)
Also even if that was allowed, applications might not respect DNS TTL's, and so they could have the ClusterIP of the Service cached and still be able connect.
I was thinking of two ways of "terminating" the Service:
- Deleting the Service entirely, but saving a copy of its
metadata
andspec
(and itsEndpoint
's if it doesn't have aselector
i.e. for external IP Service's). Then after a random amount of time restoring the Service. - Blackholing the Service through a NetworkPolicy for a random period of time. This would be simpler but it might not work for two reasons I can think of:
i) NetworkPolicy's have to be enabled on OpenShift by an admin, so a dev can't just simply use kube-monkey right away for Service's
ii) If NetworkPolicy's were already being used, there might be a rule allowing the app to connect to the Service which would trump the deny all policy
So I'm thinking about going with 1. With either solution, we can reuse kube-monkey/mtbf
for the time between failure, and then I was think of kube-monkey/mtbr
for "mean time before restoration". I believe those, and the kube-monkey/enabled
label will be the only ones needed for Service's.
Thoughts?
from kube-monkey.
Closing as stale
Sorry @hfuss. If you still have interest in this please leave a comment.
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.