共計 1646 個字符,預計需要花費 5 分鐘才能閱讀完成。
本篇內容介紹了“k8s 怎么跑起一個 wordpress”的有關知識,在實際案例的操作過程中,不少人都會遇到這樣的困境,接下來就讓丸趣 TV 小編帶領大家學習一下如何處理這些情況吧!希望大家仔細閱讀,能夠學有所成!
k8s 部署 wordpress 官方例子方式
要使用 k8s 跑起一個 wordpress 說容易也容易,說難也難 難點是對基礎要求比較高,涉及到 Service,persistentVolumeClaim,volumes
按照教程,只需要幾行代碼就可以搞定
首先,創建一個 kustomization.yaml 文件 內容如下
secretGenerator:
- name: mysql-pass
literals:
- password=123456
resources:
- mysql-deployment.yaml
- wordpress-deployment.yaml
# 下載兩個配置文件
curl -LO https://k8s.io/examples/application/wordpress/mysql-deployment.yaml
curl -LO https://k8s.io/examples/application/wordpress/wordpress-deployment.yaml
# 最后運行
kubectl apply -k .
# 查看暴露出來的 IP
kubectl get services wordpress
關于 kustomize
簡單說一個工具,減少維護多套環境 yaml 的工作量
kustomize 解決的痛點
一般應用都會存在多套部署環境:開發環境、測試環境、生產環境,多套環境意味著存在多套 K8S 應用資源 YAML。而這么多套 YAML 之間只存在微小配置差異,比如鏡像版本不同、Label 不同等,而這些不同環境下的 YAML 經常會因為人為疏忽導致配置錯誤。再者,多套環境的 YAML 維護通常是通過把一個環境下的 YAML 拷貝出來然后對差異的地方進行修改。一些類似 Helm 等應用管理工具需要額外學習 DSL 語法。總結以上,在 k8s 環境下存在多套環境的應用,經常遇到以下幾個問題:
如何管理不同環境或不同團隊的應用的 Kubernetes YAML 資源 如何以某種方式管理不同環境的微小差異,使得資源配置可以復用,減少 copy and change 的工作量 如何簡化維護應用的流程,不需要額外學習模板語法 Kustomize 通過以下幾種方式解決了上述問題:
kustomize 通過 Base Overlays 方式 (下文會說明) 方式維護不同環境的應用配置 kustomize 使用 patch 方式復用 Base 配置,并在 Overlay 描述與 Base 應用配置的差異部分來實現資源復用 kustomize 管理的都是 Kubernetes 原生 YAML 文件,不需要學習額外的 DSL 語法
注意
由于官方中使用 service 類型是 LoadBalancer,這個只有部署到公有云上才有效,如果你使用自己搭建的 k8s,可以使用 NodePort 的 service 提供一個參考的例子
apiVersion: v1
kind: Service
metadata:
name: service-wordpress
labels:
app: wordpress
spec:
selector:
app: wordpress
tier: frontend
type: NodePort # service 類型
ports:
- port: 80 # 默認情況下,為了方便起見,`targetPort` 被設置為與 `port` 字段相同的值。 nodePort: 30012 # 指定綁定的 node 的端口(默認的取值范圍是:30000-32767), 如果不指定,會默認分配
targetPort: 80
“k8s 怎么跑起一個 wordpress”的內容就介紹到這里了,感謝大家的閱讀。如果想了解更多行業相關的知識可以關注丸趣 TV 網站,丸趣 TV 小編將為大家輸出更多高質量的實用文章!