minio: expand decommission pools in argocd

expand the tenant (tenant.pools.size) in minio

1.install tenant from appofapps, pool name: pool-0

2.to expand tenant, add pool-1 into application yaml of tenant,check into git repo;

expand pools were OK. tenant: it worked.

3.If want to decommission pools, run the following commands.

#create and login a minio client pod in k8s

kubectl run minioclient -i -t --image=minio/mc --command -- /bin/sh -c 'echo hello;sleep 3600'

kubectl exec -i -t -n default minioclient -c minioclient -- sh

Note that the following commands need to be run in the pod of k8s.

#minio config

mc alias set dev4 http://minio.tenant.svc.cluster.local:80 minio minio123 --api s3v4

  1. #check the pools status

mc admin decommission status dev4

#decommission pool (it will automatically migrate data.)

mc admin decommission start dev4 http://myminio-pool-1-{0...3}.myminio-hl.tenant.svc.cluster.local/export{0...3}/data

  1. delete pool-1 in tenant application yaml, check into git repo;

tenant: it worked. ( pool-0 )

复制代码
apiVersion: argoproj.io/v1alpha1
kind: Application
metadata:
  name: tenant
  namespace: argocd
  finalizers:
  - resources-finalizer.argocd.argoproj.io
spec:
  project: default
  source:
    repoURL: 'https://operator.min.io/'
    targetRevision: 5.0.6
    helm:
      parameters:
        - name: 'tenant.pools[0].storageClassName'
          value: cinder
        - name: 'tenant.pools[0].name'
          value: 'pool-0'
        - name: 'tenant.pools[0].servers'
          value: '4'
        - name: 'tenant.pools[0].size'
          value: 4Gi
        - name: 'tenant.pools[0].volumesPerServer'
          value: '4'
#       - name: 'tenant.pools[1].storageClassName'
#         value: cinder
#       - name: 'tenant.pools[1].name'
#         value: 'pool-1'
#       - name: 'tenant.pools[1].servers'
#         value: '4'
#       - name: 'tenant.pools[1].size'
#         value: 6Gi
#       - name: 'tenant.pools[1].volumesPerServer'
#         value: '4'
        - name: tenant.certificate.requestAutoCert
          value: 'false'
        - name: 'tenant.buckets[0].name'
          value: 'artifacts'
        - name: 'tenant.buckets[1].name'
          value: 'test'
    chart: tenant
  destination:
    server: 'https://kubernetes.default.svc'
    namespace: tenant
  syncPolicy:
    automated: {}
    syncOptions:
      - CreateNamespace=true
相关推荐
秋风点枝3 天前
第一篇:认识 Argo CD —— 从传统发布到云原生 GitOps
git·云原生·argocd
秋风点枝3 天前
第二篇:安装 Argo CD + 第一次部署应用
kubernetes·github·argocd
nvd117 天前
K3s + ArgoCD 中的密码管理
数据库·oracle·argocd
heimeiyingwang9 天前
【GitOps·ArgoCD篇】RBAC与多租户:团队权限隔离实战
argocd·gitops
heimeiyingwang10 天前
【GitOps·ArgoCD篇】健康检查与资源钩子:自定义健康状态
argocd·gitops
heimeiyingwang11 天前
【GitOps·ArgoCD篇】与 Kustomize 集成:多环境配置管理
kustomize·argocd·gitops
heimeiyingwang12 天前
【GitOps·ArgoCD篇】同步策略:自动同步、手动同步与同步钩子
argocd·gitops
heimeiyingwang16 天前
【GitOps·入门篇】工具生态:ArgoCD、Flux、Jenkins X 对比选型
jenkins·flux·argocd·gitops
xiaoxiangsiyan1 个月前
GitLab CI/CD 自托管(EE 企业版)+ Kubernetes Runner 集群 + ArgoCD(GitOps 部署)
运维·网络·ci/cd·容器·kubernetes·gitlab·argocd
nvd111 个月前
ArgoCD 双层轮询深入拆解:从 redis-app.yaml 注册到缓存重建的完整链路
redis·缓存·argocd