-
Notifications
You must be signed in to change notification settings - Fork 38
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
Canary deployments - REST, TW, Publisher #8650
Comments
I believe that we agreed that @novicecpp will do the K8s part together with @aspiringmind-code I am still un-decided if it is better to call it crabserver-canary or crabserver-qa |
NOTE: it will be important to be able to tell (easily) the canary pod from the others in our monitoring, e.g. quickly tell where HTTP errors come from |
Look promising. EDIT: new image to contains pod name. |
better split off TW+Publisher to a different issue #8678 |
To-do:
|
|
@aspiringmind-code will do it :-) |
Sorry, wrong issue. This one I tested myself on my test12 and preprod, and it works. |
I knew that it works, but AFAIK it is not deployed in production, not used, not monitored. We have not even deployed latest CRABServer tag there. Plenty of useful work to do ! |
introduction
We have always dreamed about processing a small portion of production crab tasks with a new crab version.
We do not have a general solution, each crab system will need to be adapted in a very specific way.
REST
This requires no change in the code, but requires some experience with k8s deployments. The idea is:
dmwm/CMSKubernetes/helm/crabserver/templates
, call itcrabserver-canary
.metadata.name: crabserver-canary
, do not change for examplemetadata.labels.app: crabserver
norspec.selector.matchLabels.app: crabserver
dmwm/CMSKubernetes/helm/crabserver/values-canary.yaml
canary
as an argument, you will need to edit thecluster_map
.helm template crabserver . -f values.yaml -f values-${1}.yaml | kubectl -n crab apply -f -
, but beware to be connected with the proper context (username+cluster)!TaskWorker
This requires some change in the code, that have been outlined in https://github.com/dmwm/CRABServer/wiki/TaskWorker-Canary-Deployment
we decided that we run one TW per virtual machine, so that the hostname is enough to identify which TW process/container we are referring to.
Publisher
This is not defined yet, but we have some ideas. The simplest one is
The text was updated successfully, but these errors were encountered: