Kubernetes - Spazio dei nomi

Lo spazio dei nomi fornisce una qualifica aggiuntiva a un nome di risorsa. Ciò è utile quando più team utilizzano lo stesso cluster ed esiste un potenziale conflitto di nomi. Può essere un muro virtuale tra più cluster.

Funzionalità dello spazio dei nomi

Di seguito sono riportate alcune delle funzionalità importanti di uno spazio dei nomi in Kubernetes:

  • Gli spazi dei nomi aiutano la comunicazione da pod a pod utilizzando lo stesso spazio dei nomi.

  • Gli spazi dei nomi sono cluster virtuali che possono essere posizionati sopra lo stesso cluster fisico.

  • Forniscono una separazione logica tra i team e i loro ambienti.

Crea uno spazio dei nomi

Il comando seguente viene utilizzato per creare uno spazio dei nomi.

apiVersion: v1
kind: Namespce
metadata
   name: elk

Controlla lo spazio dei nomi

Il comando seguente viene utilizzato per controllare lo spazio dei nomi.

$ kubectl create –f namespace.yml ---------> 1
$ kubectl get namespace -----------------> 2
$ kubectl get namespace <Namespace name> ------->3
$ kubectl describe namespace <Namespace name> ---->4
$ kubectl delete namespace <Namespace name>

Nel codice sopra,

  • Stiamo usando il comando per creare uno spazio dei nomi.
  • Questo elencherà tutto lo spazio dei nomi disponibile.
  • Questo otterrà un particolare spazio dei nomi il cui nome è specificato nel comando.
  • Questo descriverà i dettagli completi sul servizio.
  • Ciò eliminerà un particolare spazio dei nomi presente nel cluster.

Utilizzo dello spazio dei nomi nel servizio - Esempio

Di seguito è riportato un esempio di un file di esempio per l'utilizzo dello spazio dei nomi nel servizio.

apiVersion: v1
kind: Service
metadata:
   name: elasticsearch
   namespace: elk
   labels:
      component: elasticsearch
spec:
   type: LoadBalancer
   selector:
      component: elasticsearch
   ports:
   - name: http
      port: 9200
      protocol: TCP
   - name: transport
      port: 9300
      protocol: TCP

Nel codice sopra, stiamo usando lo stesso spazio dei nomi nei metadati del servizio con il nome di elk.