Kubernetes(K8s) namespace(命名空间)

Kubernetes(简称K8S) 是Google开源的分布式的容器管理平台,用于管理云平台中多个主机上的容器化的应用,Kubernetes的目标是让部署容器化的应用简单并且高效(powerful),Kubernetes提供了应用部署,规划,更新,维护的一种机制。本文主要介绍Kubernetes(K8s) namespace(命名空间)。

1、Kubernetes namespace

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

2、namespace的作用

namespace(命名空间)使用相同的名称空间帮助pod-to-pod通信。

namespace(命名空间)是可以位于相同物理集群之上的虚拟集群。

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

3、创建namespace

下面命令功能创建命名空间:

apiVersion: v1
kind: Namespce
metadata
   name: cjavapy

4、namespace相关命令

namespace(命名空间)相关操作的命令如下:

1)创建一个名称空间

$ kubectl create –f namespace.yml

2)列出所有可用的名称空间

$ kubectl get namespace 

3)获得一个在命令中指定名称的特定名称空间

$ kubectl get namespace <Namespace name> 

4)将描述服务的详细信息

$ kubectl describe namespace <Namespace name> 

5)将删除集群中存在的特定名称空间

$ kubectl delete namespace <Namespace name>

5、在服务中使用命名空间

在服务中使用名称空间的示例如下:

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

相关文档:

Kubernetes(K8s) kubectl get 常用命令

Kubernetes(K8s) kubectl describe常用命令

Kubernetes(K8s) kubectl create常用命令

Kubernetes(K8s) kubectl replace常用命令

Kubernetes(K8s) kubectl patch常用命令

Kubernetes(K8s) kubectl edit 常用命令

Kubernetes(K8s) kubectl delete 常用命令

Kubernetes(K8s) kubectl apply 常用命令

Kubernetes(K8s) kubectl logs 常用命令

推荐阅读
cjavapy编程之路首页