El ejercicio que tengo para hoy es mas sencillo asi que lo voy a complementar un poco.
Actividad 2: Create a namespace named apx-ns
Entonces crear un namespace, en tal caso esta seria la documentacion de kubectl
https://kubernetes.io/docs/reference/kubectl/generated/kubectl_create/kubectl_create_namespace
Bastante sencillo se usa el comando ‘create’ que use en el modulo uno y un nombre
kubectl create ns apx-ns
kubectl create namespace apx-ns
Para validarlo es bastante sencillo
kubectl get ns
Lo cual me lleva a preguntarme ¿Tendre otras formas de crearlo?
Veo que una forma sencilla es con create / apply y el lenguaje da mas opciones. De hecho hay un tutorial en la misma pagina de K8. https://kubernetes.io/docs/tutorials/cluster-management/namespaces-walkthrough/
apiVersion: v1
kind: Namespace
metadata:
name: apx-ns1
labels:
name: apx-ns1
Y funciona tanto con
kubectl create -f ns-create.yaml
kubectl apply -f ns-create.yaml
Bien esto es algo de ultima milla pero me causo curiosidad, cuando se ve la lista de namespaces se ve un estado.
¿Como se cambia de estado? Se que eliminarlos es con kubectl delete ns <nombre>
Pues resulta que no se puede, el estado es para cambiar entre ‘Active’ y ‘Terminating’ mientras se elimina del cluster.
Y me queda una ultima pregunta ¿Como se cambia de namespace o se crean pods en ciertos namespace?
Para crear objetos en un namespace especifico puede ser con kubectl create/run/apply usando el flag -n / –namespace
kubectl run mipod –image=nginx -n=apx-ns
Para cambiar de contexto.
- kubectl config view # deja ver el contexto actual de al configuracion de kubcetl
- kubectl config set-context –current –namespace=apx-ns # te permite cambiar el namespace de todo el contexto actual
Y bien eso es todo por hoy.