k8s部署mysql
1、yaml文件内容,创建了apollo用户
vim mysql-statefulset.yaml
apiVersion: v1 kind: Secret metadata: name: mysql-secret namespace: apollo type: Opaque stringData: root-password: root123 # 可自定义,Apollo 中会用到 --- apiVersion: v1 kind: ConfigMap metadata: name: mysql-init-sql namespace: apollo data: init.sql: | CREATE USER IF NOT EXISTS 'apollo'@'%' IDENTIFIED BY 'apollo123'; GRANT ALL PRIVILEGES ON ApolloPortalDB.* TO 'apollo'@'%'; GRANT ALL PRIVILEGES ON ApolloConfigDB.* TO 'apollo'@'%'; FLUSH PRIVILEGES; --- apiVersion: v1 kind: Service metadata: name: apollo-mysql namespace: apollo labels: app: mysql spec: ports: - port: 3306 name: mysql clusterIP: None selector: app: mysql --- apiVersion: apps/v1 kind: StatefulSet metadata: name: apollo-mysql namespace: apollo spec: serviceName: apollo-mysql replicas: 1 selector: matchLabels: app: mysql template: metadata: labels: app: mysql spec: containers: - name: mysql image: mysql:8.0.36 env: - name: MYSQL_ROOT_PASSWORD valueFrom: secretKeyRef: name: mysql-secret key: root-password ports: - containerPort: 3306 name: mysql volumeMounts: - name: data mountPath: /var/lib/mysql - name: init-sql mountPath: /docker-entrypoint-initdb.d resources: requests: cpu: 500m memory: 512Mi limits: cpu: 750m memory: 768Mi volumes: - name: init-sql configMap: name: mysql-init-sql volumeClaimTemplates: - metadata: name: data spec: accessModes: [ "ReadWriteOnce" ] storageClassName: alicloud-disk-ssd # 你指定的存储类 resources: requests: storage: 20Gi
2、运行
kc apply -f mysql-statefulset.yaml

浙公网安备 33010602011771号