iT邦幫忙

2023 iThome 鐵人賽

DAY 18
0

在前幾天的內容中,我們除了討論單體式架構與微服務架構的基本介紹,還講述了微服務架構的部署選擇,也就是虛擬機器(VM)和容器的基本介紹和應用情景。而今天,在談到容器和微服務環境時,我們先來了解一個重要的容器技術,也就是 Namespace。

什麼是 Namespace?

Namespace 是一種虛擬化技術,主要目的是將系統資源隔離成獨立的空間,這種技術提供了有效的資源隔離和管理。例如在同一主機運行的情況下,將開發、測試和生產三個環境,分別創建成三個 Namespaces,這三個不同的 Namespaces 之間是不會相互影響的。

Kubernetes(K8s)中的 namespace:

Kubernetes(K8s)是容器服務資源管理調度的工具,可以統一集中調度由容器組成的微服務。在 K8s 中有三個預設的 Namespaces,如下:

  • default:在 K8s 建立時,會自動創建名為 default 的 Namespace,如果沒有指定在特定的 Namespace 中操作,就會預設在 default 進行。

  • kube-system:這個 Namespace 用於存放 K8s 叢集的系統元件資源,如 kube-dns、kube-proxy、kube-scheduler、kube-controller-manager 等,這些元件是負責管理和維護 K8s 叢集的順暢運行。

  • kube-public:這是一個用於存放公共資源的 Namespace,這些公共資源對所有使用者和服務都是可讀的,但不允許寫入。像是存放包含 K8s 集群信息的 ConfigMap,以便任何人都能夠查看。

以上所介紹的 Namespace 是一個重要的容器技術,這種技術提供我們有效地隔離系統資源,並為不同的團隊和環境創建獨立的空間。明天,我們將繼續介紹另一個重要的容器技術-CGroup(Control Groups),明天見~


上一篇
Day 17 虛擬機器和容器的選擇
下一篇
Day 19 CGroups 介紹
系列文
帶著MBP在異世界探險的科技宅30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言