Merge pull request #44249 from gamba47/41878
[es] localize content/en/docs/tasks/run-application/delete-stateful-set.md to Spanishpull/44420/head
commit
c3c9452dbf
|
@ -0,0 +1,91 @@
|
||||||
|
---
|
||||||
|
title: Borrar un StatefulSet
|
||||||
|
content_type: task
|
||||||
|
weight: 60
|
||||||
|
---
|
||||||
|
|
||||||
|
<!-- overview -->
|
||||||
|
|
||||||
|
Esta página muestra cómo se debe eliminar un {{< glossary_tooltip term_id="StatefulSet" >}}.
|
||||||
|
|
||||||
|
## {{% heading "prerequisites" %}}
|
||||||
|
|
||||||
|
- Se asume que se tiene una aplicación del tipo StatefulSet corriendo en tu clúster.
|
||||||
|
|
||||||
|
<!-- steps -->
|
||||||
|
|
||||||
|
## Borrando un StatefulSet
|
||||||
|
|
||||||
|
Se puede eliminar un StatefulSet de la misma manera que se eliminan el resto de los recursos en Kubernetes:
|
||||||
|
Usa el comando `kubectl delete` y especifica el StatefulSet, usando su nombre o el archivo con el que fue creado.
|
||||||
|
|
||||||
|
```shell
|
||||||
|
kubectl delete -f <archivo.yaml>
|
||||||
|
```
|
||||||
|
|
||||||
|
```shell
|
||||||
|
kubectl delete statefulsets <nombre-del-stateful-set>
|
||||||
|
```
|
||||||
|
|
||||||
|
Puede suceder que necesites eliminar los servicios headless asociados después de eliminar el StatefulSet.
|
||||||
|
|
||||||
|
```shell
|
||||||
|
kubectl delete service <nombre-del-servicio>
|
||||||
|
```
|
||||||
|
|
||||||
|
Cuando se elimina un StatefulSet utilizando `kubectl`, el StatefulSet escala a 0.
|
||||||
|
Todos los Pods que eran parte de esta carga de trabajo son eliminados. Si tú quieres eliminar
|
||||||
|
solo el StatefulSet y no los Pods utiliza `--cascade=orphan`. Por ejemplo:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
kubectl delete -f <archivo.yaml> --cascade=orphan
|
||||||
|
```
|
||||||
|
|
||||||
|
Agregando `--cascade=orphan` al comando `kubectl delete`, los Pods administrados por el StatefulSet
|
||||||
|
dejan de pertenecer al StatefulSet cuando es eliminado. Si los pods tienen una
|
||||||
|
etiqueta `app.kubernetes.io/name=MyApp` se los puede eliminar de la siguiente manera:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
kubectl delete pods -l app.kubernetes.io/name=MyApp
|
||||||
|
```
|
||||||
|
|
||||||
|
### Volúmenes Persistentes
|
||||||
|
|
||||||
|
Eliminar los Pods de un StatefulSet no va a eliminar los volúmenes asociados.
|
||||||
|
Esto es para asegurar que se tiene una oportunidad de copiar los datos fuera del volumen
|
||||||
|
antes de eliminarlo. Borrar el PVC después de que los pods estén terminados puede disparar
|
||||||
|
la eliminación del Volumen Persistente que hay detrás dependiendo de la clase de almacenamiento
|
||||||
|
y la política de reclamo. Nunca debes asumir la capacidad de acceder a un volumen
|
||||||
|
después de la eliminación del claim.
|
||||||
|
|
||||||
|
{{< note >}}
|
||||||
|
Ten cuidado al borrar un PVC ya que puede llevar una pérdida de datos.
|
||||||
|
{{< /note >}}
|
||||||
|
|
||||||
|
### Eliminación completa de un StatefulSet
|
||||||
|
|
||||||
|
Para eliminar todo en un StatefulSet, incluyendo los pods asociados,
|
||||||
|
se puede correr una serie de comandos similares a los siguientes:
|
||||||
|
|
||||||
|
```shell
|
||||||
|
grace=$(kubectl get pods <stateful-set-pod> --template '{{.spec.terminationGracePeriodSeconds}}')
|
||||||
|
kubectl delete statefulset -l app.kubernetes.io/name=MyApp
|
||||||
|
sleep $grace
|
||||||
|
kubectl delete pvc -l app.kubernetes.io/name=MyApp
|
||||||
|
|
||||||
|
```
|
||||||
|
|
||||||
|
En este ejemplo, los Pods tienen la etiqueta `app.kubernetes.io/name=MyApp`,
|
||||||
|
sustituye la misma por tu propia etiqueta.
|
||||||
|
|
||||||
|
### Forzar la eliminación de los Pods de un StatefulSet
|
||||||
|
|
||||||
|
Si encuentras algunos pods bloqueados en tu StatefulSet en el estado 'Terminating'
|
||||||
|
o 'Unknown' por un largo período de tiempo, puede ser que necesites intervenir
|
||||||
|
manualmente para forzar la eliminación de los pods del apiserver.
|
||||||
|
Ésta es una tarea potencialmente riesgosa. Visita [Forzar eliminación de Pods en StatefulSet](/docs/tasks/run-application/force-delete-stateful-set-pod/)
|
||||||
|
para más detalles.
|
||||||
|
|
||||||
|
## {{% heading "whatsnext" %}}
|
||||||
|
|
||||||
|
Aprende más sobre [Forzar eliminación de Pods en StatefulSet](/docs/tasks/run-application/force-delete-stateful-set-pod/).
|
Loading…
Reference in New Issue