From d0e4ee91a442c4f4c080a9f1699c656cb8e61457 Mon Sep 17 00:00:00 2001 From: Florian RICHER Date: Thu, 27 Mar 2025 10:58:47 +0100 Subject: [PATCH] Merge k8s config into one file --- mysql/k8s/01_mysql_secrets.yaml | 9 -- mysql/k8s/02_mysql_statefulset.yaml | 46 -------- mysql/k8s/03_mysql_service.yaml | 12 -- mysql/k8s/04_mysql_config_map.yaml | 6 - mysql/k8s/05_phpmyadmin_deployment.yaml | 38 ------ mysql/k8s/06_phpmyadmin_service.yaml | 14 --- mysql/k8s/07_phpmyadmin_ingress.yaml | 18 --- mysql/k8s/kube.yaml | 149 ++++++++++++++++++++++++ nginx/k8s/01_deployment.yaml | 28 ----- nginx/k8s/02_service.yaml | 12 -- nginx/k8s/03_ingress.yml | 18 --- nginx/k8s/kube.yaml | 60 ++++++++++ 12 files changed, 209 insertions(+), 201 deletions(-) delete mode 100644 mysql/k8s/01_mysql_secrets.yaml delete mode 100644 mysql/k8s/02_mysql_statefulset.yaml delete mode 100644 mysql/k8s/03_mysql_service.yaml delete mode 100644 mysql/k8s/04_mysql_config_map.yaml delete mode 100644 mysql/k8s/05_phpmyadmin_deployment.yaml delete mode 100644 mysql/k8s/06_phpmyadmin_service.yaml delete mode 100644 mysql/k8s/07_phpmyadmin_ingress.yaml create mode 100644 mysql/k8s/kube.yaml delete mode 100644 nginx/k8s/01_deployment.yaml delete mode 100644 nginx/k8s/02_service.yaml delete mode 100644 nginx/k8s/03_ingress.yml create mode 100644 nginx/k8s/kube.yaml diff --git a/mysql/k8s/01_mysql_secrets.yaml b/mysql/k8s/01_mysql_secrets.yaml deleted file mode 100644 index 33dfec8..0000000 --- a/mysql/k8s/01_mysql_secrets.yaml +++ /dev/null @@ -1,9 +0,0 @@ -apiVersion: v1 -kind: Secret -metadata: - name: mysql-secret -type: Opaque -data: - # Encoded base64 string required by kubernetes - # echo -n '' | base64 - mysql-root-password: cm9vdA== \ No newline at end of file diff --git a/mysql/k8s/02_mysql_statefulset.yaml b/mysql/k8s/02_mysql_statefulset.yaml deleted file mode 100644 index 50976b8..0000000 --- a/mysql/k8s/02_mysql_statefulset.yaml +++ /dev/null @@ -1,46 +0,0 @@ -apiVersion: apps/v1 -kind: StatefulSet -metadata: - name: mysql-db-deployment - labels: - app: mysql-db -spec: - serviceName: mysql-db-service - replicas: 1 - selector: - matchLabels: - app: mysql-db - template: - metadata: - labels: - app: mysql-db - spec: - containers: - - name: mysql - image: mysql:9 - resources: - requests: - memory: "512Mi" - cpu: "1000m" - limits: - memory: "2048Mi" - cpu: "2000m" - ports: - - containerPort: 3306 - env: - - name: MYSQL_ROOT_PASSWORD - valueFrom: - secretKeyRef: - name: mysql-secret - key: mysql-root-password - volumeMounts: - - name: mysql-data - mountPath: /var/lib/mysql - volumeClaimTemplates: - - metadata: - name: mysql-data - spec: - accessModes: [ "ReadWriteOnce" ] - resources: - requests: - storage: 1Gi \ No newline at end of file diff --git a/mysql/k8s/03_mysql_service.yaml b/mysql/k8s/03_mysql_service.yaml deleted file mode 100644 index 4a0645b..0000000 --- a/mysql/k8s/03_mysql_service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: mysql-db-service -spec: - type: ClusterIP - selector: - app: mysql-db - ports: - - protocol: TCP - port: 3306 - targetPort: 3306 \ No newline at end of file diff --git a/mysql/k8s/04_mysql_config_map.yaml b/mysql/k8s/04_mysql_config_map.yaml deleted file mode 100644 index 3849561..0000000 --- a/mysql/k8s/04_mysql_config_map.yaml +++ /dev/null @@ -1,6 +0,0 @@ -apiVersion: v1 -kind: ConfigMap -metadata: - name: mysql-configmap -data: - mysql-server: mysql-db-service diff --git a/mysql/k8s/05_phpmyadmin_deployment.yaml b/mysql/k8s/05_phpmyadmin_deployment.yaml deleted file mode 100644 index bbf0958..0000000 --- a/mysql/k8s/05_phpmyadmin_deployment.yaml +++ /dev/null @@ -1,38 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: mysql-phpmyadmin-deployment - labels: - app: mysql-phpmyadmin -spec: - replicas: 2 - selector: - matchLabels: - app: mysql-phpmyadmin - template: - metadata: - labels: - app: mysql-phpmyadmin - spec: - containers: - - name: phpmyadmin - image: phpmyadmin:5.2 - resources: - limits: - memory: "256Mi" - cpu: "1000m" - ports: - - containerPort: 80 - env: - - name: PMA_HOST - valueFrom: - configMapKeyRef: - name: mysql-configmap - key: mysql-server - - name: PMA_USER - value: root - - name: PMA_PASSWORD - valueFrom: - secretKeyRef: - name: mysql-secret - key: mysql-root-password \ No newline at end of file diff --git a/mysql/k8s/06_phpmyadmin_service.yaml b/mysql/k8s/06_phpmyadmin_service.yaml deleted file mode 100644 index 7f8546f..0000000 --- a/mysql/k8s/06_phpmyadmin_service.yaml +++ /dev/null @@ -1,14 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: mysql-phpmyadmin-service - labels: - app: mysql-phpmyadmin -spec: - type: ClusterIP - selector: - app: mysql-phpmyadmin - ports: - - protocol: TCP - port: 80 - targetPort: 80 \ No newline at end of file diff --git a/mysql/k8s/07_phpmyadmin_ingress.yaml b/mysql/k8s/07_phpmyadmin_ingress.yaml deleted file mode 100644 index 31fe0e0..0000000 --- a/mysql/k8s/07_phpmyadmin_ingress.yaml +++ /dev/null @@ -1,18 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: mysql-phpmyadmin-ingress - annotations: - nginx.ingress.kubernetes.io/rewrite-target: / -spec: - ingressClassName: nginx - rules: - - http: - paths: - - path: / - pathType: Prefix - backend: - service: - name: mysql-phpmyadmin-service - port: - number: 80 \ No newline at end of file diff --git a/mysql/k8s/kube.yaml b/mysql/k8s/kube.yaml new file mode 100644 index 0000000..4bcbaa8 --- /dev/null +++ b/mysql/k8s/kube.yaml @@ -0,0 +1,149 @@ +apiVersion: v1 +kind: Secret +metadata: + name: mysql-secret +type: Opaque +data: + # Encoded base64 string required by kubernetes + # echo -n '' | base64 + mysql-root-password: cm9vdA== +--- +apiVersion: apps/v1 +kind: StatefulSet +metadata: + name: mysql-db-deployment + labels: + app: mysql-db +spec: + serviceName: mysql-db-service + replicas: 1 + selector: + matchLabels: + app: mysql-db + template: + metadata: + labels: + app: mysql-db + spec: + containers: + - name: mysql + image: mysql:9 + resources: + requests: + memory: "512Mi" + cpu: "1000m" + limits: + memory: "2048Mi" + cpu: "2000m" + ports: + - containerPort: 3306 + env: + - name: MYSQL_ROOT_PASSWORD + valueFrom: + secretKeyRef: + name: mysql-secret + key: mysql-root-password + volumeMounts: + - name: mysql-data + mountPath: /var/lib/mysql + volumeClaimTemplates: + - metadata: + name: mysql-data + spec: + accessModes: [ "ReadWriteOnce" ] + resources: + requests: + storage: 1Gi +--- +apiVersion: v1 +kind: Service +metadata: + name: mysql-db-service +spec: + type: ClusterIP + selector: + app: mysql-db + ports: + - protocol: TCP + port: 3306 + targetPort: 3306 +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: mysql-configmap +data: + mysql-server: mysql-db-service +--- +apiVersion: apps/v1 +kind: Deployment +metadata: + name: mysql-phpmyadmin-deployment + labels: + app: mysql-phpmyadmin +spec: + replicas: 2 + selector: + matchLabels: + app: mysql-phpmyadmin + template: + metadata: + labels: + app: mysql-phpmyadmin + spec: + containers: + - name: phpmyadmin + image: phpmyadmin:5.2 + resources: + limits: + memory: "256Mi" + cpu: "1000m" + ports: + - containerPort: 80 + env: + - name: PMA_HOST + valueFrom: + configMapKeyRef: + name: mysql-configmap + key: mysql-server + - name: PMA_USER + value: root + - name: PMA_PASSWORD + valueFrom: + secretKeyRef: + name: mysql-secret + key: mysql-root-password +--- +apiVersion: v1 +kind: Service +metadata: + name: mysql-phpmyadmin-service + labels: + app: mysql-phpmyadmin +spec: + type: ClusterIP + selector: + app: mysql-phpmyadmin + ports: + - protocol: TCP + port: 80 + targetPort: 80 +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: mysql-phpmyadmin-ingress + annotations: + nginx.ingress.kubernetes.io/rewrite-target: / +spec: + ingressClassName: nginx + rules: + - http: + paths: + - path: / + pathType: Prefix + backend: + service: + name: mysql-phpmyadmin-service + port: + number: 80 \ No newline at end of file diff --git a/nginx/k8s/01_deployment.yaml b/nginx/k8s/01_deployment.yaml deleted file mode 100644 index 8bca8b9..0000000 --- a/nginx/k8s/01_deployment.yaml +++ /dev/null @@ -1,28 +0,0 @@ -apiVersion: apps/v1 -kind: Deployment -metadata: - name: nginx-deployment - labels: - app: nginx -spec: - replicas: 2 - selector: - matchLabels: - app: nginx - template: - metadata: - labels: - app: nginx - spec: - containers: - - name: nginx - image: nginx:1.14.2 - ports: - - containerPort: 80 - resources: - requests: - memory: "32Mi" - cpu: 128m - limits: - memory: "64Mi" - cpu: 256m diff --git a/nginx/k8s/02_service.yaml b/nginx/k8s/02_service.yaml deleted file mode 100644 index 0f6c205..0000000 --- a/nginx/k8s/02_service.yaml +++ /dev/null @@ -1,12 +0,0 @@ -apiVersion: v1 -kind: Service -metadata: - name: nginx-service -spec: - type: ClusterIP - selector: - app: nginx - ports: - - protocol: TCP - port: 8000 - targetPort: 80 \ No newline at end of file diff --git a/nginx/k8s/03_ingress.yml b/nginx/k8s/03_ingress.yml deleted file mode 100644 index e7de830..0000000 --- a/nginx/k8s/03_ingress.yml +++ /dev/null @@ -1,18 +0,0 @@ -apiVersion: networking.k8s.io/v1 -kind: Ingress -metadata: - name: nginx-ingress - annotations: - nginx.ingress.kubernetes.io/rewrite-target: / -spec: - ingressClassName: nginx - rules: - - http: - paths: - - path: /nginx - pathType: Prefix - backend: - service: - name: nginx-service - port: - number: 8000 \ No newline at end of file diff --git a/nginx/k8s/kube.yaml b/nginx/k8s/kube.yaml new file mode 100644 index 0000000..534e3a8 --- /dev/null +++ b/nginx/k8s/kube.yaml @@ -0,0 +1,60 @@ +apiVersion: apps/v1 +kind: Deployment +metadata: + name: nginx-deployment + labels: + app: nginx +spec: + replicas: 2 + selector: + matchLabels: + app: nginx + template: + metadata: + labels: + app: nginx + spec: + containers: + - name: nginx + image: nginx:1.14.2 + ports: + - containerPort: 80 + resources: + requests: + memory: "32Mi" + cpu: 128m + limits: + memory: "64Mi" + cpu: 256m +--- +apiVersion: v1 +kind: Service +metadata: + name: nginx-service +spec: + type: ClusterIP + selector: + app: nginx + ports: + - protocol: TCP + port: 8000 + targetPort: 80 +--- +apiVersion: networking.k8s.io/v1 +kind: Ingress +metadata: + name: nginx-ingress + annotations: + nginx.ingress.kubernetes.io/rewrite-target: / +spec: + ingressClassName: nginx + rules: + - http: + paths: + - path: /nginx + pathType: Prefix + backend: + service: + name: nginx-service + port: + number: 8000 \ No newline at end of file