iT邦幫忙

2024 iThome 鐵人賽

DAY 3
1
Kubernetes

開工前挑戰 K8s系列 第 3

Day3 - 安裝工具

  • 分享至 

  • xImage
  •  

前言

為了後續動手實際操作K8s,首先需要先理解相關工具,這篇用來說明各個工具的原理與優劣,安裝細節可參考官網文件

Minikube

https://ithelp.ithome.com.tw/upload/images/20240917/20169452vEBXrouMq2.jpg
透過在本機建置虛擬機,預設情況下,會模擬出具有單節點的k8s叢集,亦可透過更改配置來建立多節點叢集,支援所有主要作業系統。

如上可知,Minikube的缺點不外乎是資源消耗大、啟動速度較慢,因此,近來也支援另一個類似Docker驅動的方式 vm-driver=podman

此外,Minikube提供addons來擴展功能,如dashboard、ingress等,透過將該addon enable或disable來啟動或關閉。
可透過GitHub下載

Kind (Kubernetes IN Docker)

https://ithelp.ithome.com.tw/upload/images/20240917/201694528c3cKUzwU2.jpg
一個輕量級工具,將K8s叢集視為Docker容器來運行,因此速度上更快速。Kind內部使用kubeadm來設定節點,具體來說,它在第一個Master節點上執行kubeadm init,也可透過更改配置來自定。
Kind使用容器來模擬節點,如下架構圖,在容器內部運行Systemd,Systemd負責託管kubelet和container runtime,容器內部的kubelet則負責啟動其他k8s元件。
https://ithelp.ithome.com.tw/upload/images/20240917/20169452xCvg09Y3ZD.jpg

Kubeadm

https://ithelp.ithome.com.tw/upload/images/20240917/20169452ABJLuRdd0L.jpg
用來建立K8s叢集的一種快速工具,如kubeadm init初始化叢集、kubeadm join創建工作節點並加入到叢集中。

Kubectl

是K8s中用來與叢集做溝通的Command Line工具,諸如取得各種資源訊息、配置運行資源以及刪除資源等,後續會透過kubectl來與api server要求操作K8s叢集。

小結

每個工具都有其適合的不同場景,故理解其原理與運作模式是有其必要性的。


上一篇
Day2 - K8s 元件
下一篇
Day4 - K8s核心資源(1) Pod
系列文
開工前挑戰 K8s8
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言