From 25877e90d0767be3423d1462dc97bc2da77a5e8c Mon Sep 17 00:00:00 2001 From: "Tharp, Michael" Date: Fri, 14 Jul 2023 13:09:51 -0400 Subject: [PATCH] Add mariadb helm chart --- charts/mariadb-1.0.0.tgz | Bin 0 -> 6483 bytes index.yaml | 88 +++++++----- stable/mariadb/.helmignore | 23 ++++ stable/mariadb/Chart.yaml | 9 ++ stable/mariadb/README.md | 67 +++++++++ stable/mariadb/templates/NOTES.txt | 21 +++ stable/mariadb/templates/_helpers.tpl | 51 +++++++ stable/mariadb/templates/mariadb.yaml | 52 +++++++ stable/mariadb/templates/phpmyadmin.yaml | 160 ++++++++++++++++++++++ stable/mariadb/templates/stashbackup.yaml | 51 +++++++ stable/mariadb/values.schema.json | 138 +++++++++++++++++++ stable/mariadb/values.yaml | 83 +++++++++++ 12 files changed, 706 insertions(+), 37 deletions(-) create mode 100644 charts/mariadb-1.0.0.tgz create mode 100644 stable/mariadb/.helmignore create mode 100644 stable/mariadb/Chart.yaml create mode 100644 stable/mariadb/README.md create mode 100644 stable/mariadb/templates/NOTES.txt create mode 100644 stable/mariadb/templates/_helpers.tpl create mode 100644 stable/mariadb/templates/mariadb.yaml create mode 100644 stable/mariadb/templates/phpmyadmin.yaml create mode 100644 stable/mariadb/templates/stashbackup.yaml create mode 100644 stable/mariadb/values.schema.json create mode 100644 stable/mariadb/values.yaml diff --git a/charts/mariadb-1.0.0.tgz b/charts/mariadb-1.0.0.tgz new file mode 100644 index 0000000000000000000000000000000000000000..e9fa9309628e9b9eee03f47f060b1c5007ecc53b GIT binary patch literal 6483 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 literal 0 HcmV?d00001 diff --git a/index.yaml b/index.yaml index e6b16a6..7c2e7e5 100644 --- a/index.yaml +++ b/index.yaml @@ -2,7 +2,7 @@ apiVersion: v1 entries: deploy-image: - apiVersion: v2 - created: "2023-04-11T12:21:03.46175-04:00" + created: "2023-07-14T13:09:28.798792-04:00" description: Deploy a container image digest: 5bb3fe54091fbe3bc4d5e62c74f38c4d65a6d7e088a5537cc9dd0d0b0a470cfe icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -15,7 +15,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.5.2.tgz version: 0.5.2 - apiVersion: v2 - created: "2023-04-11T12:21:03.461467-04:00" + created: "2023-07-14T13:09:28.798486-04:00" description: Deploy a container image digest: a552bb97518985ac2c75475d2ffe23cdca777e66bf6591b8643d89aaf126a5fc icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -28,7 +28,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.5.1.tgz version: 0.5.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.46116-04:00" + created: "2023-07-14T13:09:28.798191-04:00" description: Deploy a container image digest: fc88644f6f3630a2b16eda4e23248a8a0805c03704608ac8da080b317dfec014 icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -41,7 +41,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.5.0.tgz version: 0.5.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.460854-04:00" + created: "2023-07-14T13:09:28.797894-04:00" description: Deploy a container image digest: ba02d0cde8b240aad83ac3d7938a81931d42f5a594f174c40e3ced805df9e8a2 icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -54,7 +54,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.4.1.tgz version: 0.4.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.46053-04:00" + created: "2023-07-14T13:09:28.797594-04:00" description: Deploy a container image digest: dfe8df9690c29eb1ede26bfbcfdd2fc2fee471d7632755c5b0cdb5b13b188b8b icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -67,7 +67,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.4.0.tgz version: 0.4.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.460245-04:00" + created: "2023-07-14T13:09:28.797299-04:00" description: Deploy a container image digest: c81879c1fc7f77426819a1b9c19de7c6f97fe4d2e2af0b9a3d7d0302b4116694 icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -80,7 +80,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.3.2.tgz version: 0.3.2 - apiVersion: v2 - created: "2023-04-11T12:21:03.459948-04:00" + created: "2023-07-14T13:09:28.797-04:00" description: Deploy a container image digest: 720528c098adc2348168614990bdca5aa4516aee4b17394beaf224eb92cb8b1b icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -93,7 +93,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.3.1.tgz version: 0.3.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.459657-04:00" + created: "2023-07-14T13:09:28.796689-04:00" description: Deploy a container image digest: fac809a723d80c32b196d073644c12ff37c0db80e573720eea1c7dcfcbcba47a icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -106,7 +106,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.3.0.tgz version: 0.3.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.459329-04:00" + created: "2023-07-14T13:09:28.796349-04:00" description: Deploy a container image digest: ee272478b4434a476a9846b0268af2bf7ed25d199833d029011307840b843356 icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -119,7 +119,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.2.0.tgz version: 0.2.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.458981-04:00" + created: "2023-07-14T13:09:28.796019-04:00" description: Deploy a container image digest: 9b71695737b65ea4f63dba8241b41227f38f6b763ccee5f5308ad7cd3a8e1c42 icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -132,7 +132,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/deploy-image-0.1.1.tgz version: 0.1.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.458691-04:00" + created: "2023-07-14T13:09:28.795706-04:00" description: Deploy a container image digest: ef90bc4d6bb6fc793101b949e6ef2584a822344604b92d53106a9f92aaf817f3 icon: https://raw.githubusercontent.com/tabler/tabler-icons/master/icons-png/new-section.png @@ -146,7 +146,7 @@ entries: version: 0.1.0 desktop-vnc: - apiVersion: v2 - created: "2023-04-11T12:21:03.461966-04:00" + created: "2023-07-14T13:09:28.799005-04:00" description: A desktop served over HTTPS with noVNC digest: ba5edd345d7e7eb0879297d88f3463191380ecedb704e4843a87313d5d8707bf icon: https://raw.githubusercontent.com/novnc/noVNC/master/app/images/icons/novnc-48x48.png @@ -161,7 +161,7 @@ entries: gitlab-runner: - apiVersion: v2 appVersion: 14.2.0 - created: "2023-04-11T12:21:03.463637-04:00" + created: "2023-07-14T13:09:28.801042-04:00" dependencies: - name: library repository: https://olcf.github.io/slate-helm-charts @@ -179,7 +179,7 @@ entries: version: 1.0.2 - apiVersion: v2 appVersion: 14.2.0 - created: "2023-04-11T12:21:03.462801-04:00" + created: "2023-07-14T13:09:28.799806-04:00" dependencies: - name: library repository: https://olcf.github.io/slate-helm-charts @@ -197,7 +197,7 @@ entries: version: 1.0.1 library: - apiVersion: v2 - created: "2023-04-11T12:21:03.463962-04:00" + created: "2023-07-14T13:09:28.801252-04:00" description: A Helm chart for Kubernetes digest: 4885c445699386f58d42b67e235171e4ed8877fc9674406b8b4f3e49f4ab756d name: library @@ -206,7 +206,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/library-0.1.1.tgz version: 0.1.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.463746-04:00" + created: "2023-07-14T13:09:28.801154-04:00" description: A Helm chart for Kubernetes digest: 10bec7238825dac8ed61f454ad059fae2a2953a2e77c65e2b6fa9cc9080020e1 name: library @@ -214,9 +214,23 @@ entries: urls: - https://olcf.github.io/slate-helm-charts/charts/library-0.1.0.tgz version: 0.1.0 + mariadb: + - apiVersion: v2 + created: "2023-07-14T13:09:28.801634-04:00" + description: MariaDB deployyment with NetApp persistent storage + digest: 95c46ab97abe54503353604360225cb60ba5dc14712e2fe16e5d056a47cb351b + icon: https://mariadb.com/wp-content/webp-express/webp-images/doc-root/wp-content/uploads/2019/11/mariadb-logo_black-transparent-600x150.png.webp + maintainers: + - name: Platforms Group + url: https://www.olcf.ornl.gov/about-olcf/staff-sections/operations/platforms/ + name: mariadb + type: application + urls: + - https://olcf.github.io/slate-helm-charts/charts/mariadb-1.0.0.tgz + version: 1.0.0 minio-nfs: - apiVersion: v2 - created: "2023-04-11T12:21:03.465615-04:00" + created: "2023-07-14T13:09:28.802864-04:00" description: MinIO Object Storage Server with NetApp persistent storage shared via NFS digest: 6980eec987bcc3f97689ff5a2524780e6dfa6c1d89bcf2c93c32ac0d6b315354 @@ -230,7 +244,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/minio-nfs-1.0.2.tgz version: 1.0.2 - apiVersion: v2 - created: "2023-04-11T12:21:03.465189-04:00" + created: "2023-07-14T13:09:28.802448-04:00" description: MinIO Object Storage Server with NetApp persistent storage shared via NFS digest: e520741cc01145a66cc6dd2fb8ac6b4179cb1a9eaa30dc4e00354b3e1c2f00ea @@ -244,7 +258,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/minio-nfs-1.0.1.tgz version: 1.0.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.464725-04:00" + created: "2023-07-14T13:09:28.802049-04:00" description: MinIO Object Storage Server with NetApp persistent storage shared via NFS digest: 28bc8f526fdaca89265af839074aaa668ad9ade6e390d98ea49ef100a120f555 @@ -260,7 +274,7 @@ entries: version: 1.0.0 mongodb: - apiVersion: v2 - created: "2023-04-11T12:21:03.4663-04:00" + created: "2023-07-14T13:09:28.803479-04:00" dependencies: - name: library repository: https://olcf.github.io/slate-helm-charts @@ -277,7 +291,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/mongodb-1.1.0.tgz version: 1.1.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.465933-04:00" + created: "2023-07-14T13:09:28.803136-04:00" description: MongoDB deployment with NetApp persistent storage digest: b63ebb1a4dd64e970bf56ed2be2d0bd4b08f65adbe376e3bcf4809107bd30dd7 icon: https://media.mongodb.org/ico/icon-leaf.png @@ -291,7 +305,7 @@ entries: version: 1.0.0 mysql: - apiVersion: v2 - created: "2023-04-11T12:21:03.467759-04:00" + created: "2023-07-14T13:09:28.804913-04:00" description: MySQL deployyment with NetApp persistent storage digest: c7cc35acee33f4642f23e508d9553c6299f1fc904ecd60910647e9d416bf03be icon: https://www.mysql.com/common/logos/logo-mysql-170x115.png @@ -304,7 +318,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/mysql-1.2.1.tgz version: 1.2.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.467401-04:00" + created: "2023-07-14T13:09:28.804557-04:00" description: MySQL deployyment with NetApp persistent storage digest: e53377c91af01b56dbaae60f09a28ad4237703d02b1e7358bd95119a41dd4d8b icon: https://www.mysql.com/common/logos/logo-mysql-170x115.png @@ -317,7 +331,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/mysql-1.2.0.tgz version: 1.2.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.467054-04:00" + created: "2023-07-14T13:09:28.804209-04:00" description: MySQL deployyment with NetApp persistent storage digest: f337e5f30a4ea4a80a0ffdf4b2a55378d8a548b150782fddf540e79b0d5db7fc icon: https://www.mysql.com/common/logos/logo-mysql-170x115.png @@ -330,7 +344,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/mysql-1.1.0.tgz version: 1.1.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.466698-04:00" + created: "2023-07-14T13:09:28.80383-04:00" description: MySQL deployyment with NetApp persistent storage digest: 7bebb99a1192afe0304933a8a3874f0f1efab8a2486bc8463252e1830e771ac0 icon: https://www.mysql.com/common/logos/logo-mysql-170x115.png @@ -344,7 +358,7 @@ entries: version: 1.0.0 postgresql: - apiVersion: v2 - created: "2023-04-11T12:21:03.468588-04:00" + created: "2023-07-14T13:09:28.805712-04:00" dependencies: - name: library repository: https://olcf.github.io/slate-helm-charts @@ -361,7 +375,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/postgresql-0.1.2.tgz version: 0.1.2 - apiVersion: v2 - created: "2023-04-11T12:21:03.468322-04:00" + created: "2023-07-14T13:09:28.805455-04:00" dependencies: - name: library repository: https://olcf.github.io/slate-helm-charts @@ -378,7 +392,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/postgresql-0.1.1.tgz version: 0.1.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.468037-04:00" + created: "2023-07-14T13:09:28.805184-04:00" dependencies: - name: library repository: https://olcf.github.io/slate-helm-charts @@ -396,7 +410,7 @@ entries: version: 0.1.0 rabbitmq: - apiVersion: v2 - created: "2023-04-11T12:21:03.470624-04:00" + created: "2023-07-14T13:09:28.80788-04:00" dependencies: - name: deploy-image repository: https://olcf.github.io/slate-helm-charts @@ -413,7 +427,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/rabbitmq-0.1.3.tgz version: 0.1.3 - apiVersion: v2 - created: "2023-04-11T12:21:03.469889-04:00" + created: "2023-07-14T13:09:28.80732-04:00" dependencies: - name: deploy-image repository: https://olcf.github.io/slate-helm-charts @@ -430,7 +444,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/rabbitmq-0.1.2.tgz version: 0.1.2 - apiVersion: v2 - created: "2023-04-11T12:21:03.469491-04:00" + created: "2023-07-14T13:09:28.806577-04:00" dependencies: - name: deploy-image repository: https://olcf.github.io/slate-helm-charts @@ -447,7 +461,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/rabbitmq-0.1.1.tgz version: 0.1.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.46906-04:00" + created: "2023-07-14T13:09:28.806146-04:00" dependencies: - name: deploy-image repository: https://olcf.github.io/slate-helm-charts @@ -465,7 +479,7 @@ entries: version: 0.1.0 redis: - apiVersion: v2 - created: "2023-04-11T12:21:03.471513-04:00" + created: "2023-07-14T13:09:28.808672-04:00" description: A Helm chart for Kubernetes digest: 0f436068056e357083677423c582ed9f8644b8d4caacd32e5599c26137a22cf0 icon: https://redis.io/images/redis-small.png @@ -478,7 +492,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/redis-0.3.1.tgz version: 0.3.1 - apiVersion: v2 - created: "2023-04-11T12:21:03.471308-04:00" + created: "2023-07-14T13:09:28.80846-04:00" description: A Helm chart for Kubernetes digest: 9ff22e3f70458fc6f45f152d331b5b330699ee737f95ec7e19d7922b92c479e9 icon: https://redis.io/images/redis-small.png @@ -491,7 +505,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/redis-0.3.0.tgz version: 0.3.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.471116-04:00" + created: "2023-07-14T13:09:28.808256-04:00" description: A Helm chart for Kubernetes digest: 91e1508bc7335acf009beabd57e45575df45315b9a95e0552cd18cc96216f0ef icon: https://redis.io/images/redis-small.png @@ -504,7 +518,7 @@ entries: - https://olcf.github.io/slate-helm-charts/charts/redis-0.2.0.tgz version: 0.2.0 - apiVersion: v2 - created: "2023-04-11T12:21:03.47094-04:00" + created: "2023-07-14T13:09:28.808083-04:00" description: A Helm chart for Kubernetes digest: 9822b5a6331830c33a097d21cdfcccf7a9b044bc66c70ce6cdd2fd3b60a7f985 icon: https://redis.io/images/redis-small.png @@ -516,4 +530,4 @@ entries: urls: - https://olcf.github.io/slate-helm-charts/charts/redis-0.1.0.tgz version: 0.1.0 -generated: "2023-04-11T12:21:03.45805-04:00" +generated: "2023-07-14T13:09:28.795046-04:00" diff --git a/stable/mariadb/.helmignore b/stable/mariadb/.helmignore new file mode 100644 index 0000000..0e8a0eb --- /dev/null +++ b/stable/mariadb/.helmignore @@ -0,0 +1,23 @@ +# Patterns to ignore when building packages. +# This supports shell glob matching, relative path matching, and +# negation (prefixed with !). Only one pattern per line. +.DS_Store +# Common VCS dirs +.git/ +.gitignore +.bzr/ +.bzrignore +.hg/ +.hgignore +.svn/ +# Common backup files +*.swp +*.bak +*.tmp +*.orig +*~ +# Various IDEs +.project +.idea/ +*.tmproj +.vscode/ diff --git a/stable/mariadb/Chart.yaml b/stable/mariadb/Chart.yaml new file mode 100644 index 0000000..4f8a55e --- /dev/null +++ b/stable/mariadb/Chart.yaml @@ -0,0 +1,9 @@ +apiVersion: v2 +name: mariadb +description: MariaDB deployyment with NetApp persistent storage +type: application +version: 1.0.0 +icon: https://mariadb.com/wp-content/webp-express/webp-images/doc-root/wp-content/uploads/2019/11/mariadb-logo_black-transparent-600x150.png.webp +maintainers: + - name: Platforms Group + url: https://www.olcf.ornl.gov/about-olcf/staff-sections/operations/platforms/ diff --git a/stable/mariadb/README.md b/stable/mariadb/README.md new file mode 100644 index 0000000..5afd7c3 --- /dev/null +++ b/stable/mariadb/README.md @@ -0,0 +1,67 @@ +## Introduction + +This helm chart deploys an instance of MariaDB using the KubeDB and Stash operators by AppsCode. These operators simplify the deployment, maintenance and backup of databases on Kubernetes. + +## Details + +The following resources could be created: + +* MariaDB instance +* NetworkPolicy allowing access to the MariaDB instance +* Service allowing access to MariaDB from inside the Kubernetes cluster +* Deployment of phpMyAdmin configured to login to the MariaDB instance +* Route to access the phpMyAdmin instance behind OpenShift OAUTH +* MariaDB backup process with Stash (if enabled) + +## Prerequisites + +This chart is currently supported on: + +* OpenShift 4.7 +* KubeDB v.2021.06.23 +* Stash v.2021.08.02 + +## Chart Parameters + +| Parameter | Description | +| --------- | ----------- | +| `mariadb.spec.version` | The version of MariaDB to deploy. Defaults to `10.4.17`. May be one of `10.4.17`, `10.10.2`. | +| `mariadb.spec.storage.size` | The amount of storage to allocate for the MariaDB database. Defaults to `1Gi`. | +| `mariadb.spec.authSecret` | An already existing set of credentials to use for the MariaDB root account. If not provided, the operator will create credentials for use. | +| `mariadb.spec.terminationPolicy` | Termination policy for the instance when MariaDB is removed. Defaults to `WipeOut`. May be one of: `Delete`, `DoNotTerminate`, `Halt`, or `WipeOut`. | +| `mariadb.spec.configMapName` | Name of an existing configMap to run that initializes the MariaDB database. | +| `mariadb.spec.resources.limits.cpu` | Maximum amount of CPU that a container may consume. Defaults to `1`. | +| `mariadb.spec.resources.limits.memory` | Maximum amount of memory that a container may consume. Defaults to `1Gi`. | +| `mariadb.spec.resources.requests.cpu` | Minimum amount of CPU that a container is allocated. Defaults to `500m`. | +| `mariadb.spec.resources.requests.memory` | Minimum amount of memory that a container is allocated. Defailts to `512Mi`. | +| `phpmyadmin.enabled` | Whether or not to deploy the phpMyAdmin web interface. Defaults to `true`. | +| `phpmyadmin.spec.resources.limits.cpu` | Maximum amount of CPU that a container may consume. Defaults to `1`. | +| `phpmyadmin.spec.resources.limits.memory` | Maximum amount of memory that a container may consume. Defaults to `1Gi`, | +| `phpmyadmin.spec.resources.requests.cpu` | Minimum amount of CPU that a container is allocated. Defaults to `500m`. | +| `phpmyadmin.spec.resources.requests.memory` | Minimum amount of memory that a container is allocated. Defailts to `512Mi`. | +| `phpmyadmin.apache2.port` | Port that apache2 will listen to for connections. Defaults to `8080`. | +| `phpmyadmin.auto_login` | Whether or not to configure automatic login into the interface. Defaults to `true`. | +| `phpmyadmin.blowfish_secret` | Custom blowfish secret to use for phpMyAdmin. Defaults to unspeficied and will be automatically generated. | +| `phpmyadmin.route.enabled` | Whether or not to enable the route to the phpMyAdmin instance. Defaults to `true`. | +| `phpmyadmin.route.hostname` | Hostname to use for the route. Default is not specified. | +| `phpmyadmin.tempdir_size` | Size for the phpMyAdmin tempdir. Defaults to `50Mi` | +| `phpmyadmin.user_config` | String that provides for any special configuration settings for phpMyAdmin. |` +| `stash.enabled` | Whether or not to enable backups of MariaDB using Stash. Defaults to `true`. | +| `stash.restic_password` | Password used to encrypt the backups. If not specified, one will be automatically created. | +| `stash.retention_policy.name` | Descriptive name of the retention policy for backups. Defaults to `keep-last-5`. | +| `stash.retention_policy.keep` | Number of backups to retain. Defaults to `5`. | +| `stash.retention_policy.prune` | Whether or not to cleanup unreferenced data. Defaults to `true`. | +| `stash.schedule` | Cron schedule for performing the backups. Defaults to `11 5 * * * ` | +| `stash.storage_size` | Storage to allocate for holding backups. Defaults to `1Gi`. + +## Advanced Configuration + +The KubeDB and Stash operators offer many other configuration capabilities +not currently exposed in this chart. For details on what is possible, see: + + +* [https://kubedb.com/docs/v2021.06.23/welcome/](https://kubedb.com/docs/v2021.06.23/welcome/} +* [https://stash.run/docs/v2021.08.02/guides/latest/](https://stash.run/docs/v2021.08.02/guides/latest/) + +Please contact the Platforms Team to request the addition of a capability +with this offering. diff --git a/stable/mariadb/templates/NOTES.txt b/stable/mariadb/templates/NOTES.txt new file mode 100644 index 0000000..69cf23b --- /dev/null +++ b/stable/mariadb/templates/NOTES.txt @@ -0,0 +1,21 @@ +There are multiple ways of accessing the deployed MariaDB database. + +First, one can access the terminal of the MariaDB pod deployed via the +OpenShift portal. The credentials may also be retrieved from the UI +via the Administrator View -> Workloads -> Secrets. + +Second, if the MariaDB client is installed locally on your workstation, use +port forwarding to connect to the database port using the username and +password retrieved from the secrets. Commands used for this method would +be similar to: + + oc get secrets {{ include "mariadb.fullname" . }}-auth -o jsonpath='{.data.\username}' | base64 -D + oc get secrets {{ include "mariadb.fullname" . }}-auth -o jsonpath='{.data.\password}' | base64 -D + oc port-forward svc/{{ include "mariadb.fullname" . }}-phpmyadmin 3306:3306 + +{{- if .Values.phpmyadmin.enabled -}} +Finally, since the phpMyAdmin interface was deployed, one can access the web +interface via the route presented in the OpenShift portal or via the +the HOST/PORT entry retrieved from the `oc get route` command prepended +with "https://". +{{- end -}} diff --git a/stable/mariadb/templates/_helpers.tpl b/stable/mariadb/templates/_helpers.tpl new file mode 100644 index 0000000..675e22c --- /dev/null +++ b/stable/mariadb/templates/_helpers.tpl @@ -0,0 +1,51 @@ +{{/* +Expand the name of the chart. +*/}} +{{- define "mariadb.name" -}} +{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Create a default fully qualified app name. +We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). +If release name contains chart name it will be used as a full name. +*/}} +{{- define "mariadb.fullname" -}} +{{- $name := default .Release.Name .Values.nameOverride -}} +{{- printf "%s" $name | trunc 63 | trimSuffix "-" -}} +{{- end }} + +{{/* +Create chart name and version as used by the chart label. +*/}} +{{- define "mariadb.chart" -}} +{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} +{{- end }} + +{{/* +Common labels +*/}} +{{- define "mariadb.labels" -}} +helm.sh/chart: {{ include "mariadb.chart" . }} +{{ include "mariadb.selectorLabels" . }} +{{- end }} + +{{/* +Selector labels +*/}} +{{- define "mariadb.selectorLabels" -}} +app.kubernetes.io/instance: {{ .Release.Name }} +{{- end }} + +{{/* +Restic Backup Password +*/}} +{{- define "restic.password" -}} +{{- $mysecret := printf "%s-stash-secret" (include "mariadb.fullname" .) }} +{{- $secret := (lookup "v1" "Secret" .Release.Namespace $mysecret) }} +{{- if $secret -}} +{{- index $secret.data "RESTIC_PASSWORD" -}} +{{- else -}} +{{ if .Values.stash.restic_password }}{{ .Values.stash.restic_password | toString | b64enc | quote }}{{ else }}{{ randAlphaNum 20 | b64enc | quote }}{{ end }} +{{- end -}} +{{- end -}} diff --git a/stable/mariadb/templates/mariadb.yaml b/stable/mariadb/templates/mariadb.yaml new file mode 100644 index 0000000..bfe2e70 --- /dev/null +++ b/stable/mariadb/templates/mariadb.yaml @@ -0,0 +1,52 @@ +apiVersion: kubedb.com/v1alpha2 +kind: MariaDB +metadata: + name: {{ include "mariadb.fullname" . }} + labels: + {{- include "mariadb.labels" . | nindent 4 }} +spec: + version: {{ .Values.mariadb.spec.version }} + replicas: {{ .Values.mariadb.spec.replicas }} +{{- if .Values.mariadb.spec.authSecret }} + authSecret: + name: {{ .Values.mariadb.spec.authSecret }} +{{- end }} + storageType: "Durable" + storage: + storageClassName: netapp-nfs + accessModes: + - ReadWriteOnce + resources: + requests: + storage: {{ .Values.mariadb.spec.storage.size | quote }} +{{- if .Values.mariadb.spec.configMapName }} + # init: + # script: + # configMap: + # name: {{.Values.mariadb.spec.configMapName }} +{{- end }} + requireSSL: false + podTemplate: + spec: + resources: + {{- toYaml .Values.mariadb.spec.resources | nindent 8 }} + terminationPolicy: {{ .Values.mariadb.spec.terminationPolicy | quote }} +{{- if .Values.mariadb.primary.service.type }} + serviceTemplates: + - alias: primary + spec: + type: {{ .Values.mariadb.primary.service.type }} +{{- end }} +--- +kind: NetworkPolicy +apiVersion: networking.k8s.io/v1 +metadata: + name: allow-{{ include "mariadb.fullname" . }}-access +spec: + podSelector: + matchLabels: + app.kubernetes.io/instance: {{ include "mariadb.fullname" . }} + ingress: + - {} + policyTypes: + - Ingress diff --git a/stable/mariadb/templates/phpmyadmin.yaml b/stable/mariadb/templates/phpmyadmin.yaml new file mode 100644 index 0000000..85b1e6d --- /dev/null +++ b/stable/mariadb/templates/phpmyadmin.yaml @@ -0,0 +1,160 @@ +{{- if .Values.phpmyadmin.enabled -}} +apiVersion: apps/v1 +kind: Deployment +metadata: + labels: + app: {{ include "mariadb.fullname" . }}-phpmyadmin + name: {{ include "mariadb.fullname" . }}-phpmyadmin +spec: + replicas: 1 + selector: + matchLabels: + app: {{ include "mariadb.fullname" . }}-phpmyadmin + template: + metadata: + labels: + app: {{ include "mariadb.fullname" . }}-phpmyadmin + spec: + containers: + - image: docker.io/phpmyadmin/phpmyadmin + imagePullPolicy: Always + name: {{ include "mariadb.fullname" . }}-phpmyadmin + resources: + {{- toYaml .Values.phpmyadmin.spec.resources | nindent 10 }} + ports: + - containerPort: {{ .Values.phpmyadmin.apache2.port }} + env: + {{ if .Values.phpmyadmin.auto_login -}} + - name: PMA_HOST + value: {{ include "mariadb.fullname" . }} + - name: PMA_USER + valueFrom: + secretKeyRef: + name: {{ include "mariadb.fullname" . }}-auth + key: username + - name: PMA_PASSWORD + valueFrom: + secretKeyRef: + name: {{ include "mariadb.fullname" . }}-auth + key: password + {{ else }} + - name: PMA_ARBITRARY + value: "1" + #- name: PMA_HOST + # value: {{ include "mariadb.fullname" . }} + {{ end }} + volumeMounts: + - name: "{{ include "mariadb.fullname" . }}-phpmyadmin-apache2-config" + mountPath: '/etc/apache2/sites-available/000-default.conf' + subPath: '000-default.conf' + - name: "{{ include "mariadb.fullname" . }}-phpmyadmin-apache2-config" + mountPath: '/etc/apache2/ports.conf' + subPath: 'ports.conf' + - name: "{{ include "mariadb.fullname" . }}-phpmyadmin-blowfish" + mountPath: '/etc/phpmyadmin/config.secret.inc.php' + subPath: 'config.secret.inc.php' + - name: "{{ include "mariadb.fullname" . }}-phpmyadmin-userconfig" + mountPath: '/etc/phpmyadmin/config.user.inc.php' + subPath: 'config.user.inc.php' + - name: "{{ include "mariadb.fullname" . }}-phpmyadmin-tempdir" + mountPath: '/var/www/html/tmp' + volumes: + - name: {{ include "mariadb.fullname" . }}-phpmyadmin-apache2-config + configMap: + name: {{ include "mariadb.fullname" . }}-phpmyadmin-apache2-config + defaultMode: 0644 + - name: {{ include "mariadb.fullname" . }}-phpmyadmin-blowfish + secret: + secretName: {{ include "mariadb.fullname" . }}-phpmyadmin-blowfish + - name: {{ include "mariadb.fullname" . }}-phpmyadmin-userconfig + configMap: + name: {{ include "mariadb.fullname" . }}-phpmyadmin-userconfig + defaultMode: 0644 + - name: {{ include "mariadb.fullname" . }}-phpmyadmin-tempdir + persistentVolumeClaim: + claimName: {{ include "mariadb.fullname" . }}-phpmyadmin-tempdir +--- +apiVersion: v1 +kind: Service +metadata: + labels: + app: {{ include "mariadb.fullname" . }}-phpmyadmin + name: {{ include "mariadb.fullname" . }}-phpmyadmin +spec: + ports: + - name: http + port: {{ .Values.phpmyadmin.apache2.port }} + protocol: TCP + targetPort: {{ .Values.phpmyadmin.apache2.port }} + selector: + app: {{ include "mariadb.fullname" . }}-phpmyadmin + type: ClusterIP +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "mariadb.fullname" . }}-phpmyadmin-apache2-config +data: + 000-default.conf: | + + ServerAdmin webmaster@localhost + DocumentRoot /var/www/html + ErrorLog ${APACHE_LOG_DIR}/error.log + CustomLog ${APACHE_LOG_DIR}/access.log combined + + ports.conf: | + Listen {{ .Values.phpmyadmin.apache2.port }} + + Listen 443 + + + Listen 443 + +--- +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "mariadb.fullname" . }}-phpmyadmin-blowfish +data: + {{ if .Values.phpmyadmin.blowfish_secret -}} + config.secret.inc.php: {{ printf "" .Values.phpmyadmin.blowfish_secret | b64enc }} + {{ else }} + config.secret.inc.php: {{ printf "" (randAscii 24 | b64enc) | b64enc }} + {{ end }} +--- +apiVersion: v1 +kind: ConfigMap +metadata: + name: {{ include "mariadb.fullname" . }}-phpmyadmin-userconfig +data: + config.user.inc.php: | + {{ .Values.phpmyadmin.user_config }} +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: {{ include "mariadb.fullname" . }}-phpmyadmin-tempdir +spec: + accessModes: + - ReadWriteMany + resources: + requests: + storage: {{ .Values.phpmyadmin.tempdir_size }} +--- +apiVersion: route.openshift.io/v1 +kind: Route +metadata: + name: {{ include "mariadb.fullname" . }}-phpmyadmin + annotations: + ccs.ornl.gov/requireAuth: "true" +spec: +{{- if .Values.phpmyadmin.route.hostname }} + host: {{ .Values.phpmyadmin.route.hostname }} +{{- end }} + tls: + insecureEdgeTerminationPolicy: Redirect + termination: edge + to: + kind: Service + name: {{ include "mariadb.fullname" . }}-phpmyadmin +{{- end }} diff --git a/stable/mariadb/templates/stashbackup.yaml b/stable/mariadb/templates/stashbackup.yaml new file mode 100644 index 0000000..4dd8415 --- /dev/null +++ b/stable/mariadb/templates/stashbackup.yaml @@ -0,0 +1,51 @@ +{{- if .Values.stash.enabled -}} +apiVersion: v1 +kind: Secret +metadata: + name: {{ include "mariadb.fullname" . }}-stash-secret +data: + RESTIC_PASSWORD: {{ template "restic.password" . }} +type: Opaque +--- +apiVersion: v1 +kind: PersistentVolumeClaim +metadata: + name: {{ include "mariadb.fullname" . }}-stash-pvc +spec: + accessModes: + - ReadWriteOnce + resources: + requests: + storage: {{ .Values.stash.storage_size }} + storageClassName: netapp-nfs +--- +apiVersion: stash.appscode.com/v1alpha1 +kind: Repository +metadata: + name: {{ include "mariadb.fullname" . }}-stash-repo-with-pvc +spec: + backend: + local: + mountPath: /backups + persistentVolumeClaim: + claimName: {{ include "mariadb.fullname" . }}-stash-pvc + storageSecretName: {{ include "mariadb.fullname" . }}-stash-secret +--- +apiVersion: stash.appscode.com/v1beta1 +kind: BackupConfiguration +metadata: + name: {{ include "mariadb.fullname" . }}-backup +spec: + schedule: {{ .Values.stash.schedule | quote }} + repository: + name: {{ include "mariadb.fullname" . }}-stash-repo-with-pvc + target: + ref: + apiVersion: appcatalog.appscode.com/v1alpha1 + kind: AppBinding + name: {{ include "mariadb.fullname" . }} + retentionPolicy: + name: {{ .Values.stash.retention_policy.name | quote }} + keepLast: {{ .Values.stash.retention_policy.keep }} + prune: {{ .Values.stash.retention_policy.prune }} +{{- end }} diff --git a/stable/mariadb/values.schema.json b/stable/mariadb/values.schema.json new file mode 100644 index 0000000..63dd7a5 --- /dev/null +++ b/stable/mariadb/values.schema.json @@ -0,0 +1,138 @@ +{ + "$schema": "http://json-schema.org/schema#", + "type": "object", + "properties": { + "mariadb": { + "type": "object", + "properties": { + "spec": { + "type": "object", + "properties": { + "version": { + "title": "MariaDB Version", + "description": "The version of MariaDB to launch.", + "type": "string", + "default": "10.4.17", + "enum": ["10.4.17", "10.10.22"] + }, + "storage": { + "type": "object", + "properties": { + "size": { + "title": "MariaDB Size", + "description": "This is a required field. The amount of storage to allocate for the MariaDB Database", + "type": "string", + "default": "1Gi" + } + } + }, + "terminationPolicy": { + "title": "Termination Policy", + "description": "Termination policy for the instance when MariaDB is removed.", + "type": "string", + "default": "WipeOut", + "enum": ["Delete", "DoNotTerminate", "Halt", "WipeOut"] + }, + "resources": { + "type": "object", + "title": "Resources", + "description": "Define cpu and memory resources", + "properties": { + "requests": { + "description": "The minimum amount of resources required for the workload", + "properties": { + "cpu": { + "type": "string", + "title": "CPU", + "default": "500m" + }, + "memory": { + "type": "string", + "title": "Memory", + "default": "512Mi" + } + } + }, + "limits": { + "description": "The aboslute limit for the resource request, if the workload exceeds this it could get evicted", + "properties": { + "cpu": { + "type": "string", + "title": "CPU", + "default": "1" + }, + "memory": { + "type": "string", + "title": "Memory", + "default": "1Gi" + } + } + } + } + } + } + }, + "primary": { + "type": "object", + "properties": { + "service": { + "type": "object", + "properties": { + "type": { + "type": "string", + "default": "ClusterIP", + "enum": ["ClusterIP", "NodePort"] + } + } + } + } + } + } + }, + "phpmyadmin": { + "type": "object", + "properties": { + "enabled": { + "title": "Enable phpMyAdmin", + "description": "Whether or not to enable the phpMyAdmin deployment. Defaults to true", + "type": "boolean" + } + } + }, + "stash": { + "type": "object", + "properties": { + "enabled": { + "title": "Enable Backups", + "description": "Whether or not to enable automatic backups. Defaults to true", + "type": "boolean" + }, + "retention_policy": { + "type": "object", + "properties": { + "keep": { + "title": "Number to Keep", + "description": "Number of backups to keep. Defaults to the last five.", + "type": "integer" + }, + "name": { + "title": "name", + "description": "Name of regimen. Defaults to keep-last-5 with the default number of backups to keep is 5", + "type": "string" + } + } + }, + "schedule": { + "title": "Backup Schedule", + "description": "cron schedule for when to run backups. Defaults to 4:41 am daily", + "type": "string" + }, + "storage_size": { + "title": "Backup Storage Size", + "description": "Storage size to use for retained backups. Defaults to 1Gi", + "type": "string" + } + } + } + } +} diff --git a/stable/mariadb/values.yaml b/stable/mariadb/values.yaml new file mode 100644 index 0000000..0c53fa4 --- /dev/null +++ b/stable/mariadb/values.yaml @@ -0,0 +1,83 @@ +# Default values for MariaDB deployment + +## Used in place of the chart name. This setting is not recommended to be used. +nameOverride: "" +## Provides a name to substitute for the full names of resources +fullnameOverride: "" + +## Settings presented to create KubeDB MariaDB deployment +mariadb: + spec: + version: "10.4.17" + replicas: 3 + storage: + size: 5Gi + ## Set to an already existing username and password combination to use for the root account. + ## If not speified, a new secret will be automatically generated. + authSecret: "" + ## Termination policy to use when the resources are deleted. The KubeDB default is Delete. + ## Default her eis set to WipeOut to allow for ease of deployment and removal. + ## Refer to the KubeDB documentaiton for other options. + terminationPolicy: WipeOut + ## Set to a name of an already existing configMap object that contains a mariadb script to run + ## that initilizes the newly created database. + configMapName: "" + ## Resource allocations for Mariadb containers + resources: + limits: + cpu: "1" + memory: 1Gi + requests: + cpu: 500m + memory: 512Mi + primary: + service: + type: ClusterIP + +## Settings used to drive the configuration of phpMyAdmin +phpmyadmin: + ## Whether or not to enable the phpMyAdmin deployment + enabled: true + spec: + ## Resource allocations for phpMyAdmin containers + resources: + limits: + cpu: "1" + memory: 1Gi + requests: + cpu: 500m + memory: 512Mi + ## WHat port should apache be listening for connections for phpMyAdmin. + apache2: + port: 8080 + ## Whether or not to configure phpMyAdmin for automatic login as the MariaDB root user + auto_login: true + ## What string should be used for the phpMyAdmin blowfish secret. If not provided, it + ## will be automatically be generated. + blowfish_secret: "" + route: + ## Whether or not to enable a route to the phpMyAdmin service. + enabled: true + ## Hostname to use for the route. If not provided, it will be automatically generated. + hostname: "" + ## Size for the phpMyAdmin tempdir + tempdir_size: 50Mi + ## String that provides any special configuration settings for phpMyAdmin. + user_config: '/* User phpMyAdmin config */' + +## Settings used to configure the automatic stash backups. +stash: + ## Whether or not to enable automatic backups + enabled: true + ## Specifies the restic password to use for encrypting the backup. If not provided, it will + ## be automatically set. + restic_password: "" + ## Retention policy to use for the backups. The values below specifiy a backup taken daily at 4:41 AM + ## every day of the week, with a retention of the last 5 backups made. + retention_policy: + name: "keep-last-5" + keep: 5 + prune: true + schedule: "41 4 * * *" + storage_size: 1Gi +