iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 7
0
Kubernetes

Kubernetes~成為Devops工程師的必經試煉系列 第 7

Day 7 隔離Kubernate中不同的元件 - Namespace

  • 分享至 

  • xImage
  •  

前言

在一個Kubernetes中可以使用namespace創建多個"虛擬集群",這些namespace之間可以完全隔離,也可以透過設定讓一個namespace中的service可以連線到其他的namespace中的服務。

kubectl可以通過 –namespace 或者 -n x來設定namespace。如果不設定,預設為default。可以透過 – all-namespace=true 來查詢所有 namespace 下的元件。

實際操作

因為namespace可以提供獨立的命名空間,因此可以實現部分的環境隔離。當你的專案和開發人員很多的時候可以考慮根據專案環境,例如 開發、測試、產品 用來劃分不同的namespace。

透過指令直接建立

$ kubectl create namespace new-namespace

通過文件建立

$ cat my-namespace.yaml
apiVersion: v1
kind: Namespace
metadata:
  name: new-namespace

$ kubectl create -f ./my-namespace.yaml

查詢

以下指令會查到預設的兩個 default 與 kube-system 以及剛剛新增的 new-namespace

$ kubectl get namespaces
NAME          STATUS    AGE
default       Active    30m
kube-system   Active    30m
new-namespace Active    5m

namespace 有 Active 和 Terminating 兩種狀態。在 namespace 刪除過程中,namespace狀態被設成 Terminating

刪除

透過以下指令可以刪除 namespace,而default和kube-system namespace不可以删除。

$ kubectl delete namespaces new-namespace

參考資料

  1. Namespace
  2. 名词解释:Namespace
  3. Kubernetes Namespaces

上一篇
Day6  用 Label 做好Kubernate 管理
下一篇
Day 8 照我的腳本管理資源~Replication Controller
系列文
Kubernetes~成為Devops工程師的必經試煉17
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言