📜  Kubernetes-命名空间

📅  最后修改于: 2020-11-01 04:11:35             🧑  作者: Mango


命名空间为资源名称提供了附加限定条件。当多个团队使用同一集群并且有可能发生名称冲突时,这将很有帮助。它可以作为多个群集之间的虚拟墙。

命名空间的功能

以下是Kubernetes中命名空间的一些重要功能-

  • 命名空间使用相同的命名空间帮助Pod到Pod的通信。

  • 命名空间是虚拟群集,可以位于同一物理群集的顶部。

  • 它们提供了团队及其环境之间的逻辑隔离。

创建一个命名空间

以下命令用于创建名称空间。

apiVersion: v1
kind: Namespce
metadata
   name: elk

控制命名空间

以下命令用于控制名称空间。

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

在上面的代码中,

  • 我们正在使用命令创建名称空间。
  • 这将列出所有可用的名称空间。
  • 这将获得一个特定的名称空间,该名称空间在命令中指定。
  • 这将描述有关服务的完整详细信息。
  • 这将删除群集中存在的特定名称空间。

在服务中使用命名空间-示例

以下是在服务中使用名称空间的示例文件的示例。

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

在上面的代码中,我们在服务元数据下使用名称为elk的相同名称空间。