Ecosyste.ms: Awesome
An open API service indexing awesome lists of open source software.
https://github.com/raniellyferreira/kubernetes-database-backup
Kubernetes job for database backup
https://github.com/raniellyferreira/kubernetes-database-backup
auto-rotate backup chart charts database devops helm kubernetes mariadb mongo mongodb mysql postgre postgresql
Last synced: 22 days ago
JSON representation
Kubernetes job for database backup
- Host: GitHub
- URL: https://github.com/raniellyferreira/kubernetes-database-backup
- Owner: raniellyferreira
- Created: 2021-02-28T16:41:03.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2023-11-08T21:07:19.000Z (over 1 year ago)
- Last Synced: 2024-11-21T10:34:47.183Z (3 months ago)
- Topics: auto-rotate, backup, chart, charts, database, devops, helm, kubernetes, mariadb, mongo, mongodb, mysql, postgre, postgresql
- Language: Shell
- Homepage:
- Size: 37.1 KB
- Stars: 0
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# Kubernetes Database Backup Helm Chart
Backup database to S3 with auto rotate backup in hourly, daily, weekly, monthly and yearly
- PostgreSQL
- MySQL
- MongoDB## Installation
Requirements
- Helm CLI v3+ (https://helm.sh/docs/intro/install/)
```bash
git clone https://github.com/raniellyferreira/kubernetes-database-backup.git
cd kubernetes-database-backup/
helm upgrade --install my-database-backup chart/
```## Configuration
```yaml
# PostgreSQL
extraEnv:
- name: PGSQL_BACKUP
value: "1"
- name: PGSQL_S3_BUCKET_PATH
value: database/postgresql
- name: PGSQL_IGNORE_DATABASES
value: postgres rdsadmin
- name: PGSQL_HOST
value:
- name: PGSQL_USERNAME
value:
- name: PGSQL_PASSWORD
valueFrom:
secretKeyRef:
name:
key:# MySQL
extraEnv:
- name: MYSQL_BACKUP
value: "1"
- name: MYSQL_S3_BUCKET_PATH
value: database/mysql
- name: MYSQL_IGNORE_DATABASES
value: "information_schema performance_schema mysql sys mysql_audit"
- name: MYSQL_HOST
valueFrom:
secretKeyRef:
name:
key:
- name: MYSQL_ROOT_PASSWORD
valueFrom:
secretKeyRef:
name:
key:
- name: MYSQL_ROOT_USERNAME
value: root# MongoDB
extraEnv:
- name: MONGODB_BACKUP
value: "1"
- name: MONGODB_S3_BUCKET_PATH
value: database/mongodb
- name: MONGODB_USERNAME
valueFrom:
secretKeyRef:
name:
key:
- name: MONGODB_PASSWORD
valueFrom:
secretKeyRef:
name:
key:
- name: MONGODB_HOST
valueFrom:
secretKeyRef:
name:
key:
- name: MONGODB_PORT
value: "27017"
- name: MONGODB_AUTH_DB
value: admin
# OR
- name: MONGODB_URI
value: "mongodb://$(MONGODB_USERNAME):$(MONGODB_PASSWORD)@$(MONGODB_HOST)"
```---
### Backup rotation with
https://github.com/raniellyferreira/rotate-files