Cómo eliminar un namespace obstinado en Kubernetes

Los namespaces de Kubernetes son una forma de dividir los recursos entre usuarios y equipos para evitar la contaminación cruzada o la confusión sobre a quién pertenece cada cosa y dónde van las implementaciones. Los namespaces son una excelente manera de distribuir esos recursos entre tus equipos y proyectos.

Cómo eliminar un namespace obstinado en Kubernetes - Desarrollo | Imagen 1 Newsmatic

A medida que tú y tus equipos trabajen con los namespaces, eventualmente te encontrarás en una situación en la que uno de esos namespaces ya no es necesario, pero por alguna razón, no se puede eliminar. Eso puede ser problemático cuando necesitas usar ese mismo namespace para un proyecto o cuando el namespace obstinado causa problemas en otros proyectos.

Afortunadamente, hay una forma de deshacerte de esos molestos namespaces. No es fácil, pero es repetible y confiable. Permíteme mostrarte cómo.

Índice de Contenido
  1. Lo que necesitarás para eliminar un namespace obstinado en Kubernetes
  2. Cómo editar la configuración del namespace
  3. Cómo aplicar el nuevo archivo de configuración
  4. Eliminación de namespaces y otros tutoriales

Lo que necesitarás para eliminar un namespace obstinado en Kubernetes

Lo único que necesitarás para este proceso es un clúster de Kubernetes funcionando, un namespace estancado y un usuario que pueda ejecutar el comando kubectl.

Cómo editar la configuración del namespace

Imagina que nuestro namespace problemático se llama "projectx". Lo primero que debemos hacer es editar el archivo de configuración del namespace para "projectx".

Domina el desarrollo web full stack online ¡Aprovecha la oferta por tiempo limitado!

Comienza abriendo una ventana de terminal en el controlador de Kubernetes y volcando el contenido de esa configuración de namespace en un archivo con el siguiente comando:

kubectl get ns projectx -o json > tmp.json

A continuación, necesitamos editar ese archivo con el siguiente comando:

nano tmp.json

En ese archivo, encontrarás un bloque de código que incluye una sección como esta:

"spec": {

Curso completo de Python 3: Aprende desde cero y construye proyectos prácticos
    "finalizers": [
        "kubernetes"
     ]
            }

También podría lucir así:

"spec": {

    "finalizers": [
     ]
           }

De esa sección, debes eliminar la entrada "kubernetes", de modo que se vea así:

"spec": {

    "finalizers": [
     ]
           }

O así:

"spec": {

Cómo desplegar un clúster de Kubernetes con Microk8s en Ubuntu Server
    "finalizers": [ ]
           }

Ahora debes guardar y cerrar el archivo. Deja esta terminal abierta.

Cómo aplicar el nuevo archivo de configuración

Necesitamos aplicar el archivo de configuración alterado. Para ello, abre una segunda ventana de terminal en el controlador de Kubernetes y ejecuta el comando de proxy:

kubectl proxy

Regresa a la terminal original y aplica el archivo de configuración editado con el siguiente comando:

curl -k -H "Content-Type: application/json" -X PUT --data-binary @tmp.json http://127.0.0.1:8001/api/v1/namespaces/projectx/finalize

La aplicación de la configuración eliminará el namespace. Una vez que el archivo de configuración se haya aplicado, puedes verificar que el namespace se haya eliminado con el siguiente comando:

Cómo instalar Jenkins en Rocky Linux 9: Guía paso a paso

kubectl get ns projectx

El resultado debería verse algo así:

Error from server (NotFound): namespaces "projectx" not found

Eliminación de namespaces y otros tutoriales

¡Eso es todo! Has eliminado con éxito ese namespace obstinado. Esta es una tarea a la que deberías acostumbrarte a hacer, ya que los namespaces pueden volverse problemáticos y deberás ser capaz de deshacerte de ellos cuando surjan. Ahora ya sabes cómo hacerlo.

Nuestra biblioteca de tutoriales de Newsmatic cubre una variedad de problemas relacionados con Kubernetes y otras tecnologías que puedas enfrentar. Para obtener más información sobre cómo aprovechar al máximo tus proyectos de desarrollo, echa un vistazo a nuestra biblioteca de tutoriales para desarrolladores aquí.

Consulta estos recursos de Newsmatic Academy para obtener más información sobre el desarrollo en Kubernetes:
The Docker and Kubernetes Certification Training Bundle
The Ultimate Kubernetes & Cloud Certification Training Bundle
The 2022 DevOps Cloud Engineering Prep Bundle

Cómo crear y desplegar distribuciones Linux instantáneas desde el navegador

En Newsmatic nos especializamos en tecnología de vanguardia, contamos con los artículos mas novedosos sobre Desarrollo, allí encontraras muchos artículos similares a Cómo eliminar un namespace obstinado en Kubernetes , tenemos lo ultimo en tecnología 2023.

Artículos Relacionados

Subir

Utilizamos cookies para mejorar su experiencia de navegación, mostrarle anuncios o contenidos personalizados y analizar nuestro tráfico. Al hacer clic en “Aceptar todo” usted da su consentimiento a nuestro uso de las cookies.