Helm/MariaDB/PV: Difference between revisions
Jump to navigation
Jump to search
| Line 47: | Line 47: | ||
|colspan="2"| | |colspan="2"| | ||
* [[K8s/Storage#Storage » Persistent Volume|Skipped » Find More 👉 Storage » Persistent Volume]] | * [[K8s/Storage#Storage » Persistent Volume|Skipped » Find More 👉 Storage » Persistent Volume]] | ||
|- | |||
|colspan="2"| | |||
---- | |||
|- | |||
|valign="top"| | |||
<syntaxhighlight lang="yaml" highlight="13-15"> | |||
cat <<'YML'| kubectl apply -f - | |||
--- | |||
apiVersion: v1 | |||
kind: PersistentVolume | |||
metadata: | |||
name: mariadb-data-mariadb-0 | |||
spec: | |||
capacity: | |||
storage: 10Gi | |||
accessModes: | |||
- ReadWriteOnce | |||
persistentVolumeReclaimPolicy: Retain | |||
storageClassName: hostpath | |||
hostPath: | |||
path: /var/hostpath_pv/mariadb/data-mariadb-0 | |||
type: DirectoryOrCreate | |||
YML | |||
</syntaxhighlight> | |||
|valign="top"| | |||
<syntaxhighlight lang="yaml" highlight="8,9,16,17"> | |||
cat << YML | kubectl apply -f - | |||
--- | |||
apiVersion: v1 | |||
kind: PersistentVolumeClaim | |||
metadata: | |||
labels: | |||
app.kubernetes.io/name: mariadb | |||
name: data-mariadb-0 | |||
namespace: mariadb | |||
spec: | |||
accessModes: | |||
- ReadWriteOnce | |||
resources: | |||
requests: | |||
storage: 10Gi | |||
storageClassName: hostpath | |||
volumeName: mariadb-data-mariadb-0 | |||
YML | |||
</syntaxhighlight> | |||
|- | |- | ||
Revision as of 01:57, 13 June 2025
helm repo add bitnami https://charts.bitnami.com/bitnami helm repo update && helm repo list kubectl config get-contexts
Config
export KUBECONFIG="${HOME}/.kube/dev-kubeconfig.yaml"
export KUBECONFIG="${HOME}/.kube/gcp-kubeconfig.yaml"
export KUBECONFIG="${HOME}/.kube/config"
Install
kubectl get ns|grep mariadb
kubectl delete ns mariadb
kubectl get ns|grep mariadb
kubectl create ns mariadb
|
cat <<ENV | kubectl -n mariadb create secret generic mariadb --from-env-file=/dev/stdin
mariadb-replication-password=sadaqah!
mariadb-root-password=sadaqah!
mariadb-password=sadaqah!
ENV
|
|
| |
|
| |
|
| |
|
| |
cat <<'YML'| kubectl apply -f -
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: mariadb-data-mariadb-0
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
storageClassName: hostpath
hostPath:
path: /var/hostpath_pv/mariadb/data-mariadb-0
type: DirectoryOrCreate
YML
|
cat << YML | kubectl apply -f -
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
app.kubernetes.io/name: mariadb
name: data-mariadb-0
namespace: mariadb
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: hostpath
volumeName: mariadb-data-mariadb-0
YML
|
|
| |
cat <<YML | helm -n mariadb install mariadb bitnami/mariadb --version=19.0.5 -f -
---
global:
defaultStorageClass: hostpath
architecture: standalone
auth:
database: academia
username: academia
existingSecret: mariadb
primary:
service:
type: LoadBalancer
loadBalancerIP: 192.168.49.101
persistence:
size: 10Gi
selector: minikube
storageClass: hostpath
existingClaim: data-mariadb-0
initdbScripts:
init-chorke.sql: |
-- create database
CREATE DATABASE IF NOT EXISTS academia_flair_staging;
CREATE DATABASE IF NOT EXISTS academia_audit_staging;
CREATE DATABASE IF NOT EXISTS academia_quote_staging;
CREATE DATABASE IF NOT EXISTS academia_users_staging;
CREATE DATABASE IF NOT EXISTS chorke;
-- create user
CREATE USER 'chorke'@'%' IDENTIFIED BY 'sadaqah!';
-- grant access
GRANT ALL PRIVILEGES ON academia_flair_staging.* TO 'chorke'@'%';
GRANT ALL PRIVILEGES ON academia_audit_staging.* TO 'chorke'@'%';
GRANT ALL PRIVILEGES ON academia_quote_staging.* TO 'chorke'@'%';
GRANT ALL PRIVILEGES ON academia_users_staging.* TO 'chorke'@'%';
GRANT ALL PRIVILEGES ON chorke.* TO 'chorke'@'%';
YML
| |
|
| |
|
| |
echo -n password: ;read -s MYSQL_PWD;export MYSQL_PWD;echo
mariadb -h192.168.49.101 -p3306 -uacademia academia
mariadb -h192.168.49.101 -p3306 -uroot mysql
|
echo -n password: ;read -s MYSQL_PWD;export MYSQL_PWD;echo
mariadb 'mariadb://root@192.168.49.101:3306/academia'
mariadb 'mariadb://root@192.168.49.101:3306/mysql'
|
Uninstall
helm uninstall -n mariadb mariadb
kubectl delete namespace mariadb
Swiss Knife
AWS » EKS
Playground
helm -n mariadb install mariadb bitnami/mariadb --version=19.0.0
helm -n mariadb upgrade -i mariadb bitnami/mariadb --version=19.0.5
helm show values bitnami/mariadb --version=19.0.5|less
| |
|
| |
kubectl -n mariadb get secret mariadb -o json|jq -r '.data."mariadb-replication-password"'|base64 -d;echo
kubectl -n mariadb get secret mariadb -o json|jq -r '.data."mariadb-root-password"'|base64 -d;echo
kubectl -n mariadb get secret mariadb -o json|jq -r '.data."mariadb-password"'|base64 -d;echo
kubectl -n mariadb exec -it svc/mariadb -c mariadb -- mariadb -uacademia academia -p
kubectl -n mariadb exec -it svc/mariadb -c mariadb -- bash
kubectl -n mariadb exec -it svc/mariadb -- mysql -uroot -p
| |
|
| |
kubectl config --kubeconfig=${HOME}/.kube/aws-kubeconfig.yaml view --flatten
kubectl config --kubeconfig=${HOME}/.kube/dev-kubeconfig.yaml view --flatten
kubectl config --kubeconfig=${HOME}/.kube/gcp-kubeconfig.yaml view --flatten
kubectl config --kubeconfig=${HOME}/.kube/config view --flatten
| |
|
| |
kubectl -n mariadb delete all --all
kubectl -n mariadb delete ing --all
kubectl -n mariadb delete sts --all
|
kubectl -n mariadb delete svc --all
kubectl -n mariadb delete pvc --all
kubectl -n mariadb delete pv --all
|
|
| |
kubectl -n mariadb rollout history sts mariadb
kubectl -n mariadb rollout restart sts mariadb
kubectl -n mariadb rollout status sts mariadb
|
kubectl -n mariadb exec -it mariadb-0 -- mariadb -uroot -p
kubectl -n mariadb logs -f svc/mariadb -c mariadb
kubectl -n mariadb logs -f svc/mariadb
|
References
|
| ||
|
| ||