Platform uninstallation

Platform installation includes creating a temporary and a permanent management cluster. To install a new platform, first remove the temporary cluster using the guide.

Starting with release 2.12, you can uninstall (remove) a deployed Shturval platform with the shtil utility. To do this:

  1. If shtil is not installed:
chmod +x ./shtil-2.13.1
  1. To remove the platform, run ./shtil-2.13.1 delete management with your parameter values.
All available parameters for platform removal with shtil-2.13.1
ParameterRequiredDescription
--bootstrap-kubeconfig [string]NoPath to the temporary management cluster kubeconfig. Required if the temporary cluster kubeconfig is not at the default path ($HOME/.shturval/shturval-bootstrap)
--help, -hNoHelp for the cluster deletion command
--kubeconfig [string]YesPath to the permanent management cluster (platform) kubeconfig
--license [string]NoShturval platform license. If the license contains special characters ($,<, >, *, &, ?, /,\ ), enclose it in single quotes. Required when there is no temporary platform cluster and a temporary cluster must be started
--registry [string]NoRegistry address; default r.shturval.tech
--retry [int]NoNumber of retries for failed operations (default: 10)
--verbosity, -v [int32]NoLog verbosity level (default: 0)
--insecureNoSkip security verification when connecting to the registry (default false)

Note

  • Removal is available only with the static permanent management cluster kubeconfig issued for download after installation completes. In the graphical interface, find it in the management cluster namespace, in the secret named clustername-kubeconfig.
  • Permanent management cluster removal runs only with the temporary (bootstrap) cluster. If the temporary cluster was removed or is unavailable, specify the license (--license) in ./shtil-2.13.1 delete management to start a temporary cluster in an open environment, or the license and Registry (--license, --registry) in a closed environment.
  • The Docker container with the temporary cluster on the local machine where removal runs must work correctly and must not be paused. Two Docker containers cannot run at the same time.
  • During management cluster removal, shtil prompts for confirmation; you must enter the management cluster name.
  • You cannot remove the platform if client clusters are deployed and running.

Management cluster uninstallation examples

Remove a cluster in an open environment when the temporary cluster exists and kubeconfig is at the default path
./shtil-2.13.1 delete management --kubeconfig=ENTER-PATH-TO-PERMANENT-CLUSTER-KUBECONFIG 
Remove a cluster in an open environment with increased log verbosity for debugging when the temporary cluster exists and kubeconfig is at the default path
./shtil-2.13.1 delete management --kubeconfig=ENTER-PATH-TO-PERMANENT-CLUSTER-KUBECONFIG --verbosity=3 --retry=50
Remove a cluster in an open environment when the temporary cluster exists and kubeconfig is not at the default path
./shtil-2.13.1 delete management --kubeconfig=ENTER-PATH-TO-PERMANENT-CLUSTER-KUBECONFIG  --bootstrap-kubeconfig=ENTER-PATH-TO-TEMPORARY-CLUSTER-KUBECONFIG
Remove a cluster in an open environment when there is no temporary cluster
./shtil-2.13.1 delete management --kubeconfig=ENTER-PATH-TO-PERMANENT-CLUSTER-KUBECONFIG  --license="ENTER-YOUR-LICENSE"

By default, the temporary cluster will

Remove a cluster in a closed environment when the temporary cluster exists and kubeconfig is not at the default path
./shtil-2.13.1 delete management --kubeconfig=ENTER-PATH-TO-PERMANENT-CLUSTER-KUBECONFIG  --bootstrap-kubeconfig=ENTER-PATH-TO-TEMPORARY-CLUSTER-KUBECONFIG --registry=ENTER-YOUR-REGISTRY-ADDRESS

Note If the registry uses a self-signed certificate, add the registry to the container image registry configuration file and skip security verification when connecting to the registry (--insecure=true). For Podman, the default configuration file path is /etc/containers/registries.conf; for Docker, /etc/docker/daemon.json.

Remove in a closed environment without TLS security verification
./shtil-2.13.1 delete management --kubeconfig=ENTER-PATH-TO-PERMANENT-CLUSTER-KUBECONFIG --registry=ENTER-YOUR-REGISTRY-ADDRESS --insecure=true
registries.conf example
# Copied from https://raw.githubusercontent.com/projectatomic/registries/master/registries.fedora

# This is a system-wide configuration file used to
# keep track of registries for various container backends.
# It adheres to TOML format and does not support recursive
# lists of registries.

# The default location for this configuration file is /etc/containers/registries.conf.

# The only valid categories are: 'registries.search', 'registries.insecure',
# and 'registries.block'.

[registries.search]
registries = ['docker.io', 'registry.fedoraproject.org', 'registry.access.redhat.com']

# If you need to access insecure registries, add the registry's fully-qualified name.
# An insecure registry is one that does not have a valid SSL certificate or only does HTTP.
[registries.insecure]
registries = ['YOUR-REGISTRY-ADDRESS']


# If you need to block pull access from a registry, uncomment the section below
# and add the registries fully-qualified name.
#
# Docker only
[registries.block]
registries = []
daemon.json example

{
    "insecure-registries" : ["YOUR-REGISTRY-ADDRESS"]
}