百道数据招聘: 运维工程师、架构师、商务。请发简历至 contact@baiadoadata.com

Blog

使用GKE Autopilot部署MySQL

Uncategorized

使用GKE Autopilot部署MySQL

一、登录GCP平台,点击Kubernetes Engine,选择创建GKE Autopilot集群(一个按 Pod 付费的 Kubernetes 集群)

二、创建完后可以点击Connect连接,进入Cloud Shell控制台

三、创建之前,需要创建一个Secrets,保存数据库的用户名和密码。Secret 里的值是用 base64 方式加密的,所以这里的 MYSQL_ROOT_PASSWORD,要用实际的密码用 base64 的方式加密。

1)编写一个mysql-secret.yaml文件,文件内容如下:

2)然后使用以下命令运行,运行完后也可以在页面的Secrets&ConfigMaps看到你新建的Secrets

四、创建PV和PVC

1)创建一个 StorageClass

注意:创建pvc之前可以创建一个 StorageClass,然后volumeBindingMode字段配置成Immediate,这样创建 PersistentVolumeClaim的时候,Kubernetes 会自动为您预配PV,不需要单独创建pv

编写一个pd-example-class.yaml文件,文件内容如下,然后运行kubectl get sc命令查看创建的StorageClass

2)     创建一个 pvc

编写一个pvc-example.yaml文件,文件内容如下,然后运行kubectl apply -f pvc-example.yaml命令运行创建pvc

五.部署mysql

1)编写mysql.yaml文件,然后运行kubectl apply -f mysql.yaml,kubectl get pod,kubectl get StatefulSet查看执行结果。

2)在MySQL数据库中添加数据

3)模拟MySQL服务故障

k8s集群会生产一个新的Pod,验证这个Pod内是否有之前数据。先查看运行MySQL服务的Pod在哪个节点,然后将该节点挂起,我们知道k8s肯定会在另外一个节点重新生成一个Pod。

4)新生成Pod后,同样进入Pod验证数据是否存在。

Leave your thought here

您的电子邮箱地址不会被公开。 必填项已用*标注