You are viewing documentation for a previous version of Platform9 products. For the latest Private Cloud Director documentation, click here.
Self Managed Cloud Platform
5.14
×
SMCP Overview and Architecture
Getting Started
Management plane operations
Cluster Management
Resource Management
Monitoring
Networking
Security
Support
Title
Message
Create new category
What is the title of your new category?
Edit page index title
What is the title of the page index?
Edit category
What is the new title of your category?
Edit link
What is the new title and URL of your link?
Scaling Down the Management Cluster
Summarize Page
Copy Markdown
Open in ChatGPT
Open in Claude
In order to scale down the management cluster, a manual PV migration steps is required.
If the nodes to be scaled down host SeaweedFS or Consul deployments, the PVs attached to them must be migrated to other nodes in the cluster before scaling down.
Prerequisites
- Identify which pods are on nodes being removed
- Identify target nodes for migration
- Ensure SSH/rsync access between nodes
Migration Process (Per Pod)
- Get current state
x
# Find pod's current node $ kubectl get pod <pod-name> -o wide # Get PV name from PVC $ kubectl get pvc <pvc-name> -o jsonpath='{.spec.volumeName}' # Get current node IP from PV $ kubectl get pv <pv-name> -o jsonpath='{.spec.nodeAffinity.required.nodeSelectorTerms[0].matchExpressions[0].values[0]}'- Prepare new node directory :
ssh ubuntu@<new-node-ip>sudo mkdir -p /opt/pf9/volumes/csi/<pvc-id>sudo chown root:ubuntu /opt/pf9/volumes/csi/<pvc-id>sudo chmod 2775 /opt/pf9/volumes/csi/<pvc-id>exit- Rsync data from old to new node :
# From old nodessh ubuntu@<old-node-ip>sudo rsync -avzAX --progress \ --rsync-path="sudo rsync" \ /opt/pf9/volumes/csi/<pvc-id>/ \ ubuntu@<new-node-ip>:/opt/pf9/volumes/csi/<pvc-id>/- Save PV configuration :
kubectl get pv <pv-name> -o yaml > pv-backup.yaml- Edit PV YAML
vim pv-backup.yamlChanges needed:
- Update nodeAffinity IP:
old-node-ip→new-node-ip - Remove from metadata:
creationTimestamp,resourceVersion,uid - Remove entire
status:section
- Delete PV and PVC :
kubectl apply -f pv-backup.yaml- Recreate PV only :
kubectl apply -f pv-backup.yaml- Delete pod - StatefulSet will recreate PVC and bind :
kubectl delete pod <pod-name>- Verify :
# Verify PV-PVC bindkubectl get pv,pvc | grep <pvc-name># Verify pod is on new nodekubectl get pod <pod-name> -o wideType to search, ESC to discard
Type to search, ESC to discard
Type to search, ESC to discard
Last updated on
Was this page helpful?
Next to read:
Monitoring OptionsDiscard Changes
Do you want to discard your current changes and overwrite with the template?
Archive Synced Block
Message
Create new Template
What is this template's title?
Delete Template
Message