From 59c0e83d0777a902c339a5d01cdd3e2eeedca286 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E5=AD=99=E6=8C=AF=E5=AE=87?= <> Date: Sun, 12 Jan 2025 04:14:59 +0800 Subject: [PATCH] feat(reset): add reset script for cluster management and validation checks MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: 孙振宇 <> --- .../ansible/manifests/group_vars/all/all.yml | 2 +- cluster/ansible/reset.sh | 30 +++++++++++++++++++ 2 files changed, 31 insertions(+), 1 deletion(-) create mode 100644 cluster/ansible/reset.sh diff --git a/cluster/ansible/manifests/group_vars/all/all.yml b/cluster/ansible/manifests/group_vars/all/all.yml index 4b1f2ff5..3e1bb846 100644 --- a/cluster/ansible/manifests/group_vars/all/all.yml +++ b/cluster/ansible/manifests/group_vars/all/all.yml @@ -11,7 +11,7 @@ bin_dir: /usr/local/bin ## External LB example config -apiserver_loadbalancer_domain_name: "lb.mathmast.com" +# apiserver_loadbalancer_domain_name: "lb.mathmast.com" loadbalancer_apiserver: address: 4.155.160.32 port: 6443 diff --git a/cluster/ansible/reset.sh b/cluster/ansible/reset.sh new file mode 100644 index 00000000..5f994198 --- /dev/null +++ b/cluster/ansible/reset.sh @@ -0,0 +1,30 @@ +#!/usr/bin/env bash + +set -eu -o pipefail + +# Check if `init.sh` has not run +if [ ! -d venv ]; then + echo "Please run init.sh first." + exit 1 +fi + +# Check if kubespray has not been cloned and its empty +if [ ! -d ../../3rd/kubespray ]; then + echo "Please run 'git submoudle --init --recursive' first." + exit 1 +fi + +# Check if `inventory.ini` has not been created +if [ ! -f ../../cluster/ansible/manifests/inventory.ini ]; then + echo "Please create your own inventory.ini first." + exit 1 +fi + +# Prompt user to input y to continue +read -p "WARNING: ARE YOU SURE TO RESET THE CLUSTER? THAT WILL DELETE ENTIRE CLUSTER [y/N]: " confirm +if [ "$confirm" != "y" ]; then + echo "Reset cluster has been canceled." + exit 1 +fi + +cd ../../3rd/kubespray && ansible-playbook -i ../../cluster/ansible/manifests/inventory.ini ./reset.yml -kK -b \ No newline at end of file