Helm/MinIO: Difference between revisions
Jump to navigation
Jump to search
Line 121: | Line 121: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==EKS » EBS » PVC== | ||
<syntaxhighlight lang="yaml"> | <syntaxhighlight lang="yaml"> | ||
cat << YML | kubectl apply -f - | cat << YML | kubectl apply -f - | ||
Line 159: | Line 158: | ||
</syntaxhighlight> | </syntaxhighlight> | ||
== | ==EKS » EBS » Patch== | ||
{| | {| | ||
|colspan="2"| | |colspan="2"| | ||
Line 205: | Line 204: | ||
|} | |} | ||
==EKS » Ingress » TLS== | |||
<syntaxhighlight lang="yaml"> | |||
cat << YML | kubectl apply -n minio -f - | |||
--- | |||
apiVersion: cert-manager.io/v1 | |||
kind: Certificate | |||
metadata: | |||
name: minio-domain | |||
namespace: minio | |||
spec: | |||
dnsNames: | |||
- "minio.finology.group" | |||
issuerRef: | |||
kind: ClusterIssuer | |||
name: letsencrypt-http01 | |||
secretName: minio-secret-tls | |||
YML | |||
</syntaxhighlight> | |||
==EKS » Ingress » Patch== | |||
<syntaxhighlight lang="yaml"> | |||
cat <<YML | kubectl -n minio patch ing/minio --patch-file=/dev/stdin | |||
--- | |||
metadata: | |||
annotations: | |||
nginx.ingress.kubernetes.io/proxy-body-size: 10m | |||
nginx.ingress.kubernetes.io/proxy-buffer-size: 128k | |||
nginx.ingress.kubernetes.io/proxy-buffers-number: '4' | |||
nginx.ingress.kubernetes.io/proxy-buffers-size: 256k | |||
nginx.ingress.kubernetes.io/proxy-ssl-server-name: 'on' | |||
nginx.ingress.kubernetes.io/proxy-ssl-verify: 'on' | |||
nginx.ingress.kubernetes.io/rewrite-target: / | |||
nginx.ingress.kubernetes.io/ssl-redirect: 'true' | |||
spec: | |||
ingressClassName: nginx | |||
tls: | |||
- hosts: | |||
- minio.finology.group | |||
secretName: minio-secret-tls | |||
YML | |||
</syntaxhighlight> | |||
==Playground== | ==Playground== |
Revision as of 07:59, 29 August 2024
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 minio
kubectl delete ns minio
|
kubectl get ns|grep minio
kubectl create ns minio
|
| |
cat <<YML | helm -n minio install minio bitnami/minio --version=14.7.1 -f -
---
global:
defaultStorageClass: standard
mode: standalone
auth:
rootUser: admin
rootPassword: sadaqah!
defaultBuckets: "gitlab-artifacts, gitlab-backups, gitlab-ci-secure-files, gitlab-dependency-proxy, gitlab-lfs, gitlab-mr-diffs, gitlab-packages, gitlab-pages, gitlab-registry, gitlab-runner-cache, gitlab-tf-state, gitlab-tmp, gitlab-uploads"
ingress:
enabled: true
hostname: minio.k8s.local
statefulset:
drivesPerNode: 1
replicaCount: 1
zones: 1
YML
|
cat <<YML | helm -n minio install minio bitnami/minio --version=14.7.1 -f -
---
global:
defaultStorageClass: standard
mode: distributed
auth:
rootUser: admin
rootPassword: sadaqah!
defaultBuckets: "gitlab-artifacts, gitlab-backups, gitlab-ci-secure-files, gitlab-dependency-proxy, gitlab-lfs, gitlab-mr-diffs, gitlab-packages, gitlab-pages, gitlab-registry, gitlab-runner-cache, gitlab-tf-state, gitlab-tmp, gitlab-uploads"
ingress:
enabled: true
hostname: minio.k8s.local
statefulset:
drivesPerNode: 4
replicaCount: 1
zones: 1
YML
|
| |
xdg-open http://minio.k8s.local &>/dev/null &
gnome-open http://minio.k8s.local &>/dev/null &
|
x-www-browser http://minio.k8s.local &>/dev/null &
sensible-browser http://minio.k8s.local &>/dev/null &
|
Uninstall
helm uninstall -n minio minio
kubectl delete namespace minio
Swiss Knife
kubectl -n minio run -i --tty --rm minio-cli --image=alpine --restart=Never -- sh
apk --update add minio-client inetutils-telnet
echo -n password: ;\
read -s MINIO_SERVER_ROOT_PASSWORD;\
export MINIO_SERVER_ROOT_PASSWORD;\
export MINIO_SERVER_ROOT_USER=admin;\
export MINIO_SERVER_HOST=minio.k8s.local;echo
telnet minio 9000
telnet minio 9001
ping minio.k8s.local
ping host.minikube.internal
mcli ping --count 5 minio
mcli ping --error-count 5 minio
telnet host.minikube.internal 9800
telnet host.minikube.internal 9801
telnet minio.minio.svc.cluster.local 9000
telnet minio.minio.svc.cluster.local 9001
EKS » EBS » PVC
cat << YML | kubectl apply -f -
---
apiVersion: v1
kind: PersistentVolume
metadata:
name: minio-pv
spec:
accessModes:
- ReadWriteOnce
awsElasticBlockStore:
fsType: ext4
volumeID: aws://ap-southeast-1/vol-0bbbd80804f1ae62a
capacity:
storage: 10Gi
persistentVolumeReclaimPolicy: Retain
storageClassName: "gp2"
---
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
labels:
app.kubernetes.io/name: minio
name: minio-pvc
namespace: minio
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
storageClassName: "gp2"
volumeName: minio-pv
YML
EKS » EBS » Patch
kubectl -n minio get deploy/minio -ojson|jq -r '.spec.template.spec.nodeSelector'
| |
| |
cat <<YML | kubectl -n minio patch deploy/minio --patch-file=/dev/stdin
---
spec:
template:
spec:
nodeSelector:
topology.kubernetes.io/zone: minikube
YML
|
cat <<YML | kubectl -n minio patch deploy/minio --patch-file=/dev/stdin
---
spec:
template:
spec:
nodeSelector:
topology.kubernetes.io/zone: ap-southeast-1a
YML
|
| |
kubectl -n minio get deploy/minio -ojson|jq -r '.spec.template.spec.nodeSelector'
kubectl -n minio delete pods --all
|
EKS » Ingress » TLS
cat << YML | kubectl apply -n minio -f -
---
apiVersion: cert-manager.io/v1
kind: Certificate
metadata:
name: minio-domain
namespace: minio
spec:
dnsNames:
- "minio.finology.group"
issuerRef:
kind: ClusterIssuer
name: letsencrypt-http01
secretName: minio-secret-tls
YML
EKS » Ingress » Patch
cat <<YML | kubectl -n minio patch ing/minio --patch-file=/dev/stdin
---
metadata:
annotations:
nginx.ingress.kubernetes.io/proxy-body-size: 10m
nginx.ingress.kubernetes.io/proxy-buffer-size: 128k
nginx.ingress.kubernetes.io/proxy-buffers-number: '4'
nginx.ingress.kubernetes.io/proxy-buffers-size: 256k
nginx.ingress.kubernetes.io/proxy-ssl-server-name: 'on'
nginx.ingress.kubernetes.io/proxy-ssl-verify: 'on'
nginx.ingress.kubernetes.io/rewrite-target: /
nginx.ingress.kubernetes.io/ssl-redirect: 'true'
spec:
ingressClassName: nginx
tls:
- hosts:
- minio.finology.group
secretName: minio-secret-tls
YML
Playground
helm -n minio install minio bitnami/minio --version=14.6.1
helm -n minio upgrade -i minio bitnami/minio --version=14.7.1
helm show values bitnami/minio --version=14.6.1|less
| |
| |
kubectl -n minio get secret minio -o json|jq -r '.data."root-password"'|base64 -d;echo
kubectl -n minio get secret minio -o json|jq -r '.data."root-user"'|base64 -d;echo
kubectl -n minio exec -it svc/minio -c minio -- bash
| |
| |
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 minio delete all --all
kubectl -n minio delete ing --all
kubectl -n minio delete sts --all
|
kubectl -n minio delete svc --all
kubectl -n minio delete pvc --all
kubectl -n minio delete pv --all
|
| |
kubectl -n minio rollout history deploy minio
kubectl -n minio rollout restart deploy minio
kubectl -n minio rollout status deploy minio
|
kubectl -n minio exec -it svc/minio -c minio -- mc --help
kubectl -n minio exec -it svc/minio -c minio -- bash
kubectl -n minio logs -f svc/minio -c minio
|
References
| ||
| ||