背景
用戶通過 Deployment、ReplicationController 可以方便地在 kubernetes
中部署一套高可用、可擴(kuò)展的分布式無狀態(tài)服務(wù)。這類應(yīng)用不在本地存儲數(shù)據(jù),通過簡單的負(fù)載均衡策略可實(shí)現(xiàn)請求分發(fā)。隨著 k8s
的普及和云原生架構(gòu)的興起,越來越多的人希望把數(shù)據(jù)庫這類有狀態(tài)服務(wù)也通過 k8s
進(jìn)行編排。但因?yàn)橛袪顟B(tài)服務(wù)的復(fù)雜性,這一過程并不容易。本文將以最流行的開源數(shù)據(jù)庫 MySQL 為例,介紹如何在 k8s 上部署運(yùn)維有狀態(tài)服務(wù)。本文所作的調(diào)研基于
k8s 1.13。
使用 StatefulSet 部署 MySQL
本章將以 k8s 官方教程 Run a Replicated Stateful Application
<https://yq.aliyun.com/go/articleRenderRedirect?url=https%3A%2F%2Fkubernetes.io%2Fdocs%2Ftasks%2Frun-application%2Frun-replicated-stateful-application%2F>
中提供的樣例為基礎(chǔ),介紹如何基于 StatefulSet 部署高可用 MySQL 服務(wù)。
Sta
熱門工具 換一換