BƯỚC 1 — Dừng service + gỡ package + xóa jwt/CA cũ trên node
NODES="10.237.94.101 10.237.94.102 10.237.94.103 10.237.94.104"
for ip in $NODES; do
echo "========== $ip =========="
ssh root@$ip '
# Stop LightOS services
systemctl stop api-service cluster-manager node-manager duroslight-0 gftl lightbox-exporter discovery-service etcd 2>/dev/null
systemctl disable --now discovery-client 2>/dev/null
# Remove all LightOS packages
dnf remove -y lightos duroslight management-node-manager management-cluster-manager management-api-service management-profile-generator management-lbcli discovery-service discovery-client management-lightbox-exporter management-upgrade-manager klight_utils userlbe etcd gftl 2>&1 | tail -1
# CRITICAL: remove leftover JWT + old CA/etcd data that poison next deploy
rm -f /root/lightos-system-jwt /root/lightos-default-admin-jwt
rm -rf /etc/lightos /etc/etcd/ssl /var/lib/etcd /var/lib/lightos* 2>/dev/null
echo -n "leftover jwt: "; ls /root/lightos-*jwt* 2>/dev/null | wc -l
echo -n "etcd ssl left: "; ls /etc/etcd/ssl 2>/dev/null | wc -l
rpm -qa | grep -icE "lightos|duros|node-manager|cluster-manager|api-service|discovery|etcd|gftl|userlbe" | grep -q "^0$" && echo "packages clean" || echo "PKG STILL THERE"
'
done
Kỳ vọng mỗi node leftover jwt: 0, etcd ssl left: 0, packages clean.
BƯỚC 2 — Reboot toàn bộ node để nó nhả md126
cat > /tmp/reboot_node.ini << 'EOF'
10.237.94.101
10.237.94.102
10.237.94.103
10.237.94.104
EOF
cd ~/light-app
ansible -i /tmp/reboot_node.ini all -m reboot -a "reboot_timeout=1200" -b -u root
BƯỚC 3 — Wipe 8 ổ NVMe mỗi node sau khi reboot xong
for ip in 10.237.94.101 10.237.94.102 10.237.94.103 10.237.94.104; do
echo "========== $ip =========="
ssh root@$ip '
# Stop leftover raid0 (NOT md127 = OS raid1)
for m in /dev/md12[0-6]; do
[ -e "$m" ] && mdadm --detail "$m" 2>/dev/null | grep -q "raid0" && mdadm --stop "$m" && echo "stopped $m"
done
# Wipe 8 data drives (nvme0-7), NOT sda/sdb/md127
for d in 0 1 2 3 4 5 6 7; do wipefs -a /dev/nvme${d}n1 >/dev/null 2>&1; done
for d in 0 1 2 3 4 5 6 7; do nvme format /dev/nvme${d}n1 --lbaf=1 --force >/dev/null 2>&1; done
echo -n "data drives: "; lsblk | grep -cE "nvme[0-7]n1"
echo -n "md126: "; (grep -q md126 /proc/mdstat && echo YES || echo NO)
echo -n "md127 OS intact: "; (grep -q md127 /proc/mdstat && echo YES || echo NO)
'
done
Kỳ vọng mỗi node data drives: 8, md126: NO, md127 OS intact: YES.
BƯỚC 4 — Dọn admin (cert cluster mới lỗi + jwt)
rm -rf ~/lightos-certificates-clusterNew
rm -f /tmp/gen-jwt.yml ~/deploy-clusterNew.log
rm -f ~/lightos-system-jwt ~/lightos-default-admin-jwt