※ minikube: 讓我們用簡單的方式學習 Kubernetes

- 自動通過虛擬機的方式建立一個本機模擬集群。
- 啟動 Minikube 叢集:
minikube start
- 安裝成功:

- 檢查Kubernetes 叢集是否正在運行:
minikube status

※ kubectl: 對 Kubernetes 集群進行操作的 CLI (command line interface)
- 安裝路徑:https://kubernetes.io/docs/tasks/tools/
- 透過指令輕鬆將設定和命令發送到集群。
kubectl create ...
kubectl get ...
kubectl apply ...
- ... 還有很多!
- 下載kubectl.exe:使用 curl 下載 (Using curl)
curl -LO "https://dl.k8s.io/release/v1.33.1/bin/windows/amd64/kubectl.exe"
- 安裝結果:

- 檢查 kubectl 的客戶端版本:
./kubectl.exe version --client

- 移動
kubectl.exe
到系統路徑:
開啟「管理員模式」的 PowerShell
- 搜尋「PowerShell」
- 右鍵點選「以系統管理員身份執行」
- 執行以下指令來移動
kubectl.exe
move C:\Users\user\kubectl.exe "C:\Program Files\Kubernetes\kubectl.exe"
- 確認移動成功
Get-ChildItem -Path "C:\Program Files\Kubernetes\kubectl.exe"
- 測試
kubectl
是否能執行
kubectl version --client
- 移動成功結果

- 確認並更新至 v1.33.1
"C:\Program Files\Kubernetes\kubectl.exe" version --client
- 更新結果

※ 撰寫元件的設定檔:
建立資料夾:將需要的設定存到k8s這個資料夾
mkdir k8s
撰寫最小元件pod設定檔:
確認pod在當前的目錄下:
ls

建立更新資源:kubectl apply
是用來 建立或更新 Kubernetes 資源的命令。
kubectl apply -f pod.yaml

避免設定檔因錯字導致讀取錯誤:VS Code安裝Red Hat YAML

檢查目前執行的 Pod的狀態 :
kubectl get pods

※ 建立service的設定檔:

何時使用 NodePort?
- 需要測試服務,讓外部能存取 Pod。
- 部署於本機或小型測試環境,不需要 LoadBalancer。
- 叢集中沒有 Cloud Provider 提供的 LoadBalancer。
建立或更新 Service:
kubectl apply -f service.yaml
檢查目前 Service 狀態的狀態 :
kubectl get service

取得 Minikube 虛擬機的 IP :
minikube ip

※ 自動化創建不同pod的設定檔:

先刪除剛剛的pod :
kubectl delete pod demo-pod
刪除剛剛的pod結果:
kubectl get pods

透過deployment的方法大量生成pod :
kubectl apply -f deployment.yaml

kubectl get pods
