stateful app example

parent f7da6082
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: mysql-server
labels:
app: database
spec:
replicas: 1
revisionHistoryLimit: 100
template:
metadata:
labels:
app: database
spec:
containers:
- name: mysql
image: launcher.gcr.io/google/mysql5
env:
- name: "MYSQL_ROOT_PASSWORD"
valueFrom:
secretKeyRef:
name: mysql-secret
key: root
- name: MYSQL_USER
valueFrom:
secretKeyRef:
name: mysql-secret
key: username
- name: MYSQL_PASSWORD
valueFrom:
secretKeyRef:
name: mysql-secret
key: password
- name: MYSQL_DATABASE
valueFrom:
configMapKeyRef:
name: mysql-configmap
key: new-database-name
ports:
- containerPort: 3306
name: mysql-port
volumeMounts:
- name: data
mountPath: /var/lib/mysql
subPath: data
- name: mysql-configmap
mountPath: /etc/mysql/conf.d
livenessProbe:
tcpSocket:
port: 3306
initialDelaySeconds: 30
timeoutSeconds: 1
volumes:
- name: data
persistentVolumeClaim:
claimName: db-data-claim
- name: mysql-configmap
configMap:
name: mysql-configmap
---
apiVersion: v1
kind: Service
metadata:
name: mysql-service
labels:
app: database
spec:
type: ClusterIP
ports:
- port: 3306
protocol: TCP
selector:
app: database
\ No newline at end of file
apiVersion: v1
data:
charset.cnf: |
[client]
#Esta es mi config personalizada
# Default is Latin1, if you need UTF-8 set this (also in server section)
default-character-set = utf8
[mysqld]
#
# * Character sets
#
# Default is Latin1, if you need UTF-8 set all this (also in client section)
#
character-set-server = utf8
collation-server = utf8_unicode_ci
new-database-name: my_database
kind: ConfigMap
metadata:
name: mysql-configmap
\ No newline at end of file
apiVersion: v1
kind: Secret
metadata:
name: mysql-secret
type: Opaque
data:
password: OTNERURzYWRuRUUzNA==
username: dXN1YXJpbzEyOTM=
root: REVGMzRxcmZkZTM0RERhMw==
apiVersion: v1
kind: PersistentVolume
metadata:
name: data-prod
labels:
app: database
env: production
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
gcePersistentDisk:
pdName: mysql-persistence-production
fsType: ext4
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: data-dev
labels:
app: database
env: development
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
gcePersistentDisk:
pdName: mysql-persistence-devel
fsType: ext4
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
name: db-data-claim
labels:
app: database
spec:
accessModes:
- ReadWriteOnce
storageClassName: ""
resources:
requests:
storage: 10Gi
selector:
matchLabels:
app: database
env: production
\ No newline at end of file
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment