iT邦幫忙

2024 iThome 鐵人賽

DAY 17
0
Kubernetes

關於新手會想知道Kubernetes的幾件事情系列 第 17

[Day 17] K8S Lab - 管理 Web-App

  • 分享至 

  • xImage
  •  

在 Kubernetes 集群中,我們可以部署和管理自定義的 Web 應用。本文將介紹如何管理已部署的 Web 應用,包括更新內容、擴展副本數量和進行基本的故障排除。

更新 Web 應用

如果需要更新 Web 應用的內容,例如修改 index.html 文件後重新部署,請遵循以下步驟:

  1. 修改 index.html 文件

    更新 index.html 文件中的內容:

    <!DOCTYPE html>
    <html lang="en">
    <head>
        <meta charset="UTF-8">
        <meta name="viewport" content="width=device-width, initial-scale=1.0">
        <title>Updated Web App</title>
    </head>
    <body>
        <h1>Welcome to My Updated Web App!</h1>
        <p>This is the updated web page served by Nginx on Kubernetes.</p>
    </body>
    </html>
    

https://ithelp.ithome.com.tw/upload/images/20240817/20152821LZLy2tCi0L.jpg

  1. 重建 Docker 映像

    使用以下命令重建 Docker 映像:

    docker build -t custom-web-app:latest .
    
  2. 推送新的 Docker 映像

    將映像推送到容器登錄庫:

    docker tag custom-web-app:latest your-dockerhub-username/custom-web-app:latest
    docker push your-dockerhub-username/custom-web-app:latest
    
  3. 更新 Deployment

    修改 custom-web-app-deployment.yaml 文件中的映像版本:

    spec:
      containers:
      - name: custom-web-app
        image: your-dockerhub-username/custom-web-app:latest
    

    應用更新:

    kubectl apply -f custom-web-app-deployment.yaml
    

擴展 Web 應用

要擴展 Web 應用的副本數量,請遵循以下步驟:

  1. 更新副本數量

    編輯 custom-web-app-deployment.yaml 文件,將 replicas 屬性設置為所需的數量,例如:

    spec:
      replicas: 5
    

    更新 Deployment:

    kubectl apply -f custom-web-app-deployment.yaml
    

    驗證 Pods 是否成功擴展:

    kubectl get pods
    

進行基本故障排除

如果遇到問題,請按照以下步驟進行故障排除:

  1. 查看 Pod 狀態

    檢查 Pod 的狀態和日誌:

    kubectl get pods
    kubectl describe pod <pod-name>
    kubectl logs <pod-name>
    
  2. 檢查 Service

    確保 Service 正常運作:

    kubectl get svc
    kubectl describe svc custom-web-app-service
    

清理資源

當不再需要 Web 應用時,可以刪除 Deployment 和 Service 來釋放資源:

kubectl delete -f custom-web-app-deployment.yaml
kubectl delete -f custom-web-app-service.yaml

這樣可以確保 Kubernetes 集群中的資源得到適當的管理和清理。


上一篇
[Day 16] K8S Lab - 客製化 Web 應用
下一篇
[Day 18] K8S Lab - 基於 MS COCO 的圖像分類系統 (1)
系列文
關於新手會想知道Kubernetes的幾件事情30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言