挂载
来源:7-3 springboot的web服务迁移kubernetes

点点点工程师
2019-07-11
我部署了一个mysql + springboot 的项目,部署成功了。
其中mysql的副本为1 ,数据库的数据挂载在了宿主机上。
#mysql deployment
apiVersion: apps/v1
kind: Deployment
metadata:
name: mysql-deployment
namespace: springboot-namespace
spec:
replicas: 1
selector:
matchLabels:
app: mysql
template:
metadata:
labels:
app: mysql
spec:
containers:
- name: mysql
image: mysql:5.7
imagePullPolicy: IfNotPresent
ports:
- containerPort: 3306
args:
- "--collation-server=utf8mb4_unicode_ci"
- "--character-set-server=utf8mb4"
- "--init-connect='SET NAMES UTF8MB4'"
env:
- name: MYSQL_ROOT_PASSWORD
value: "mysqlpw"
- name: MYSQL_DATABASE
value: "hello"
volumeMounts:
- mountPath: /var/lib/mysql
name: mysqldata
volumes:
- name: mysqldata
hostPath:
path: /data/mysql_springboot_demo
按照k8s 的机制,如果mysql pod 所在的宿主机挂掉,会在另外一台node节点上生成一个pod并做挂载,按照我的配置,会完成建库操作,但是数据库中的初始化数据和用户新增或修改的数据一定是没有的,由此可见生产中不会这样配置。
在生产环境中数据库一般是如何进行挂载和数据初始化的?
老师能否给个思路,我的配置哪里有优化的地方?
写回答
1回答
-
刘果国
2019-07-12
这种情况只能用共享存储了,nfs,gfs,ceph
022019-07-14
相似问题