apache / apache/openserverless
[OPERATOR] PodDisruptionBudget is deployed even if ETCD has 1 replicas
- Lenguaje dominante
- Python
- Estrellas
- 576
- Forks
- 29
- Merge medio
- 50 min
- PR fusionados (30 d)
- 13
Descripción
- [ ] I have searched the [issues](https://github.com/apache/openserverless/issues) of this repository and believe that this is not a duplicate.
### Ⅰ. Issue Description
If we deploy Openserverless with `etcd.config.replicas: 1`, the Operator still deploys the PodDisruptionBudget (nuvolaris-etcd) resource and this prevents node drains.
### Ⅱ. Describe what happened
PodDisruptionBudget (nuvolaris-etcd) resource prevents k8s node drains (and a manual change on PDB resource is required to make the drain go ahead)
### Ⅲ. Describe what you expected to happen
PodDisruptionBudget (nuvolaris-etcd) should not be deployed if Openserverless is configured with `etcd.config.replicas: 1`.
### Ⅳ. How to reproduce it (as minimally and precisely as possible)
1. Deploy Openserverless with `etcd.config.replicas: 1`
2. Drain a master node
Minimal yet complete reproducer code (or URL to code):
### Ⅴ. Anything else we need to know?
The issue is probabily related to this file:
[https://github.com/apache/openserverless-operator/blob/main/deploy/etcd/etcd-policy.yaml](https://github.com/apache/openserverless-operator/blob/main/deploy/etcd/etcd-policy.yaml)
Maybe a condition should manage the deployment (or not) of manifest above.
### Ⅵ. Environment:
- K8S Runtime and version: k3s v1.29.3+k3s1
- OPS CLI version: 0.1.0-2409121919.dev
Guía de contribución
Línea de trabajo
Comienza con deploy/etcd/etcd-policy.yaml e inspecciona cómo el Operator renderiza este manifiesto a partir de etcd.config.replicas. Reproduce el deployment con una réplica y confirma que el PodDisruptionBudget bloquea el drenaje del nodo. Se considera completado cuando el PDB está ausente con una réplica, mientras que su comportamiento existente permanece sin cambios para cantidades mayores de réplicas.
Escrito por el modelo de indexación a partir del texto del issue.
Evaluación
- Stack tecnológico
- kubernetes
- Área
- devops, infrastructure
- Tipo de issue
- Error
- Dificultad
- 3/5
- Tiempo estimado
- 1-2 días
- Estado de actividad
- Estancado
- Claridad
- Bastante claro
- Aptitud para principiantes
- 48/100