k8s相關部署踩坑記錄

前言

這是在需求:要求部署一套test測試環境的情況下,衍生的相關問題,主要是用於記錄踩坑及解決過程

0x01、需求內容

在目前的環境中,只有開發環境、生成環境,但是沒有測試環境,所以請IT部門部署一套 測試環境,專用於測試的環境,包括數據庫也是。

於是有了下面的解決方案

0x02、解決方案

  • 將dev配置的文件複製一份,然後各個修改其中的命名空間,由原來的 xxxx-dev 改爲 xxxx-test

此外,需要注意的是:

  • 部署的時候,先部署基礎的服務,如 gateway、oauth、ingress、pvc(相關服務)

  • 如果想刪除重新部署 pvc(pvc/pv) 相關服務的時候,記得需要重新停止掉原來的、有掛載上的pod服務,如:掛載了後臺系統,那麼久得先 delete -f 停止掉後臺pod,然後直到沒有pod 在佔用的時候,才能刪除 pvc/pv 的

可以使用命令查看pvc服務相關描述:kubectl describe pvc PVCName -n NAMESPACES

root@k8s-master:/usr/local/projects/douyinSpider/bin/k8s/test# kubectl describe pvc dySpider-pvc-nfs -n douyin
Name:          dySpider-pvc-nfs
Namespace:     douyin
StorageClass:  nfs
Status:        Bound
Volume:        dySpider-pv-nfs
Labels:        app=dySpider-pvc-nfs
Annotations:   kubectl.kubernetes.io/last-applied-configuration:
                 {"apiVersion":"v1","kind":"PersistentVolumeClaim","metadata":{"annotations":{},"labels":{"app":"dySpider-pvc-nfs"},"name":"dySpider-pvc-nfs","name...
               pv.kubernetes.io/bind-completed: yes
               pv.kubernetes.io/bound-by-controller: yes
Finalizers:    [kubernetes.io/pvc-protection]
Capacity:      100Gi
Access Modes:  RWX
VolumeMode:    Filesystem
Mounted By:    dySpider-module-admin-b8bbcd7df-ftv49
Events:        <none>

從上面的信息看,可以看出已經掛載了一個服務:

Mounted By:    dySpider-module-admin-b8bbcd7df-ftv49

所以我們需要將這個pod停掉

刪除後臺服務:

root@k8s-master:/usr/local/projects/douyinSpider/bin/k8s/test# kubectl delete -f dySpider-module-admin.yaml
deployment.apps "dySpider-module-admin" deleted
service "dySpider-module-admin" deleted

再刪除相關的 pvc:

kubectl delete -f dySpider-pv-nfs.yaml

參考資料:

k8s持久存儲相關資料

【K8S】k8s pv,pvc無法刪除問題

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章