Kubernetes-namespace

提供:Dev Guides
移動先:案内検索

Kubernetes-名前空間

名前空間は、リソース名に追加の修飾を提供します。 これは、複数のチームが同じクラスターを使用していて、名前が衝突する可能性がある場合に役立ちます。 複数のクラスター間の仮想壁として使用できます。

名前空間の機能

以下は、Kubernetesのネームスペースの重要な機能の一部です-

  • 名前空間は、同じ名前空間を使用したポッド間通信に役立ちます。
  • 名前空間は、同じ物理クラスターの上に配置できる仮想クラスターです。
  • チームとその環境を論理的に分離します。

名前空間を作成する

次のコマンドは、名前空間を作成するために使用されます。

apiVersion: v1
kind: Namespce
metadata
   name: elk

名前空間を制御する

次のコマンドは、名前空間を制御するために使用されます。

$ 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>

上記のコードでは、

  • このコマンドを使用して名前空間を作成しています。
  • これにより、使用可能なすべてのネームスペースがリストされます。
  • これにより、コマンドで名前が指定された特定のネームスペースが取得されます。
  • これは、サービスに関する完全な詳細を説明します。
  • これにより、クラスターに存在する特定のネームスペースが削除されます。

サービスでのネームスペースの使用-例

以下は、サービスで名前空間を使用するためのサンプルファイルの例です。

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 という名前のサービスメタデータで同じ名前空間を使用しています。