摘要:參考前提需求現成的集群持久存儲持久存儲容量聲明創建文件分別創建對于中的解釋不會真正檢查存儲的訪問模式或根據訪問模式做訪問限制,只是對真實存儲的描述,最終的控制權在真實的存儲端。
參考 / Reference
https://kubernetes.io/docs/ta...前提需求 / Rquirements
現成的kubernetes集群
持久存儲-PersistentVolume
持久存儲容量聲明-PersistentVolumeClaim
創建yaml文件 / Create YAML filehttps://raw.githubusercontent...
分別創建 Service、PersistentVolumeClaim、Deployment
apiVersion: v1 kind: Service metadata: name: mysql spec: ports: - port: 3306 selector: app: mysql clusterIP: None --- apiVersion: v1 kind: PersistentVolumeClaim metadata: name: mysql-pv-claim spec: accessModes: - ReadWriteOnce resources: requests: storage: 20Gi --- apiVersion: apps/v1beta2 # for versions before 1.8.0 use apps/v1beta1 kind: Deployment metadata: name: mysql spec: selector: matchLabels: app: mysql strategy: type: Recreate template: metadata:、 labels: app: mysql spec: containers: - image: mysql:5.6 name: mysql env: # Use secret in real usage - name: MYSQL_ROOT_PASSWORD value: password ports: - containerPort: 3306 name: mysql volumeMounts: - name: mysql-persistent-storage mountPath: /var/lib/mysql volumes: - name: mysql-persistent-storage persistentVolumeClaim: claimName: mysql-pv-claim
對于PersistentVolumeClaim中Access Modes的解釋:
k8s不會真正檢查存儲的訪問模式或根據訪問模式做訪問限制,只是對真實存儲的描述,最終的控制權在真實的存儲端。目前支持三種訪問模式:
ReadWriteOnce – PV以read-write 掛載到一個節點
ReadWriteMany – PV以read-write 方式掛載到多個節點
ReadOnlyMany – PV以read-only 方式掛載到多個節點
部署YAML文件 / Deploy the Deploymentkubectl create -f https://k8s.io/docs/tasks/run-application/mysql-deployment.yaml or kubectl create -f mysql-deployment.yaml
查看Deployment的詳細信息
kubectl describe deployment mysql
查看Deployment的pods信息
kubectl get pods -l app=mysql
檢查PersistentVolumeClaim的信息
kubectl describe pvc mysql-pv-claim進入MySQL實例 / Connet to MySQL
啟動一個MySQL客戶端服務并連接到MySQL
kubectl run -it --rm --image=mysql:5.6 --restart=Never mysql-client -- mysql -h mysql -ppassword升級MySQL應用 / Upgrade MySQL
可以使用 kubectl apply 命令對Deployment中的image或者其它部分進行升級;
針對有狀態應用StatefulSet, 需要注意以下幾點:
Don’t scale the app
This setup is for single-instance apps only. The underlying PersistentVolume can only be mounted to one Pod. For clustered stateful apps, see the StatefulSet documentation.
Use strategy: type: Recreate
in the Deployment configuration YAML file. This instructs Kubernetes to not use rolling updates. Rolling updates will not work, as you cannot have more than one Pod running at a time. The Recreate strategy will stop the first pod before creating a new one with the updated configuration
刪除Deployment / Delete the ploymentDelete the deployed objects by name:
kubectl delete deployment,svc mysql kubectl delete pvc mysql-pv-claim
文章版權歸作者所有,未經允許請勿轉載,若此文章存在違規行為,您可以聯系管理員刪除。
轉載請注明本文地址:http://specialneedsforspecialkids.com/yun/32615.html
摘要:參考前提需求現成的集群持久存儲持久存儲容量聲明創建文件分別創建對于中的解釋不會真正檢查存儲的訪問模式或根據訪問模式做訪問限制,只是對真實存儲的描述,最終的控制權在真實的存儲端。 參考 / Reference https://kubernetes.io/docs/ta... 前提需求 / Rquirements 現成的kubernetes集群 持久存儲-PersistentVolume...
摘要:是谷歌內部為解決這個問題所做的工作的產物,它為管理容器如何在整個集群中運行提供了一個單一的框架。在云中使用服務在許多云中作為標準問題項提供,盡管它在谷歌云平臺,中最突出地表現為本地特性。使用,運行控制平面,將重點部署將用于所需配置的容器。每一項創新都會帶來新的復雜性。容器使以一種方便的、可移植的形式打包和運行應用程序成為可能,但至少要說以規模管理容器是一個挑戰。Kubernetes是谷歌內部...
摘要:健康監控檢查,可以說是集群中最重要的一部分了。我們在這里沒有使用推薦的方式,我們自己將其與內部的系統做了結合,通過來對整個集群進行監控報警自動化操作。 在公司內部,基于kubernetes實現了簡單的docker應用集群系統,拿出來和大家分享下,在這個系統中,實現了應用的自動部署、動態擴容、節點切換、健康檢查、AB式版本更新等功能,也歡迎大家將各自的實現也分享給我。 整體架構 整體架構...
摘要:健康監控檢查,可以說是集群中最重要的一部分了。我們在這里沒有使用推薦的方式,我們自己將其與內部的系統做了結合,通過來對整個集群進行監控報警自動化操作。 在公司內部,基于kubernetes實現了簡單的docker應用集群系統,拿出來和大家分享下,在這個系統中,實現了應用的自動部署、動態擴容、節點切換、健康檢查、AB式版本更新等功能,也歡迎大家將各自的實現也分享給我。 整體架構 整體架構...
閱讀 1848·2021-11-22 15:24
閱讀 1307·2021-11-12 10:36
閱讀 3194·2021-09-28 09:36
閱讀 1836·2021-09-02 15:15
閱讀 2745·2019-08-30 15:54
閱讀 2391·2019-08-30 11:02
閱讀 2391·2019-08-29 13:52
閱讀 3539·2019-08-26 11:53