You can run the script with or without using the optional arguments listed in this section. Run the script on the Bootstrapper VM.
Run the Script without Arguments
To run the script without arguments, open a terminal and run $ python setup_ha.py
.
- Management cluster.
- Bootstrapper cluster.
- All the required namespaces with their services in the Management cluster for VMware Telco Cloud Automation and/or VMware Telco Cloud Automation Control Plane.
If the script run is interrupted, the script verifies the installed cluster and services and deploys only the missing components.
Run the Script with Arguments
- Open a terminal and run
$ python setup_ha.py [options]
. This command lists the available optional arguments.$ python setup_ha.py [options] VMware Inc. Copyright 2022 Create/Delete cloud native TCA and/or TCA-CP appliances in HA mode. Default is to install "all" services after installing MANAGEMENT Cluster and Bootstrapper Cluster. Optional arguments: -h, --help show this help message and exit -b, --deployBootstrapperClusterOnly deploys only Bootstrapper cluster -d, --debug set logging level to DEBUG -f CONFIG_FILE, --config_file CONFIG_FILE config file in JSON format. Default:./bootstrapper.json -i, --skipConfirmations. skip confirmations -m {lab, ha}, --mode {lab, ha} Deployment mode. Default mode is 'ha'. Use 'ha' mode for production. Use 'lab' mode for development and lab testing purpose only. 'lab' mode deploys CN TCA and/or TCA-CP with fewer resources and has no high availability. -p, --skipBootstrapperClusterCreationDeletion skip creating Bootstrapper cluster, storing manifest and deleting it at the end -r, --deleteBootstrapperClusterOnly removes only Bootstrapper cluster -s [Service_or_NameSpace], --deploy [Service_or_NameSpace]. Deploy specific service or all services in the namespace. -u [Service_or_NameSpace], --delete [Service_or_NameSpace]. Delete specific service or all services in the namespace, default is "all" -v, --validateOnly validate input file and stop
- Select an argument and run the script.
Argument | Description |
---|---|
-b, --deployBootstrapperClusterOnly |
This argument deploys the bootstrapper cluster only. It saves the manifest file in a database that can be used at a later stage. |
-r, --deleteBootstrapperClusterOnly |
This argument deletes the bootstrapper cluster. It does not affect any other services running in various namespaces in VMware Telco Cloud Automation and VMware Telco Cloud Automation Control Plane appliances. |
-v, --validateOnly |
This argument validates the input configuration file. It does not deploy or delete any cluster or service. |
-s [Service_or_NameSpace], --deploy [Service_or_NameSpace] |
This argument deploys a specific service or all services in the namespace. It deploys only a given service in one or more namespaces or all the services in a given namespace, as required by the VMware Telco Cloud Automation appliance. This option is for troubleshooting or development purposes only. |
-u [Service_or_NameSpace], --delete [Service_or_NameSpace] |
This argument deletes a specific service in a namespace or all services in a given namespace, as required by the VMware Telco Cloud Automation appliance. If you do not provide a namespace or a service, it deletes all services and clusters by default. This option is for troubleshooting or development purposes only. |
-m {lab,ha}, --mode {lab,ha} |
This argument indicates the deployment mode of the VMware Telco Cloud Automation cluster. Default mode is You can use this mode only for development and lab testing. |
Deployment Stages
STAGE 1.0::Validate 'ha' mode configuration: bootstrapper.json STAGE 1.1::Validation complete. STAGE 2.0::Deploy MANAGEMENT Cluster STAGE 2.1::Update addon to management cluster: 583c264e-e951-45b3-ae01-ab4f825db41e STAGE 2.2::Store kubeconfig to management cluster: 583c264e-e951-45b3-ae01-ab4f825db41e STAGE 3.0::Deploy bootstrapper cluster STAGE 3.1::Deploy services in namespaces STAGE 3.2::Processing 'istio-system' namespace STAGE 3.2.1::Processing {'istio-base': '2.1.0'} service in 'istio-system' namespace STAGE 3.2.2::Processing {'istio-discovery': '2.1.0'} service in 'istio-system' namespace STAGE 3.3::Processing 'tca-services' namespace STAGE 3.3.1::Processing {'static-route-manager': '2.1.0'} service in 'tca-services' namespace STAGE 3.3.2::Processing {'support-bundle-service': '2.1.0'} service in 'tca-services' namespace STAGE 3.4::Processing 'metallb-system' namespace STAGE 3.4.1::Processing {'metallb': '2.1.0'} service in 'metallb-system' namespace STAGE 3.5::Processing 'postgres-operator-system' namespace STAGE 3.5.1::Processing {'postgres-operator': '2.1.0'} service in 'postgres-operator-system' namespace STAGE 3.6::Processing 'tca-mgr' namespace STAGE 3.6.1::Processing {'mongodb': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.2::Processing {'zookeeper': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.3::Processing {'kafka': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.4::Processing {'redisoperator': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.5::Processing {'redisservice': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.6::Processing {'istio-ingress': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.7::Processing {'postgres': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.8::Processing {'network-slicing': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.6.9::Processing {'tca': '2.1.0'} service in 'tca-mgr' namespace STAGE 3.7::Processing 'tca-system' namespace STAGE 3.7.1::Processing {'mongodb': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.2::Processing {'zookeeper': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.3::Processing {'kafka': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.4::Processing {'redisoperator': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.5::Processing {'redisservice': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.6::Processing {'istio-ingress': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.7::Processing {'postgres': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.8::Processing {'tca-extension-platform': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.9::Processing {'tca': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.10::Processing {'kbs': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.11::Processing {'nfv-ccli': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.12::Processing {'hostconfig-operator': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.13::Processing {'tca-kubecluster-operator': '2.1.0'} service in 'tca-system' namespace STAGE 3.7.14::Processing {'nfv-tca-diagnosis-api': '2.1.0'} service in 'tca-system' namespace STAGE 3.8::Processing 'fluent-system' namespace STAGE 3.8.1::Processing {'fluent': '2.1.0'} service in 'fluent-system' namespace STAGE 4.0::Migrate Kubeconfig from BootstrapperVM to TCA-M and TCA-CP Appliances STAGE 4.1::Migrate Kubeconfig from BootstrapperVM to 10.176.113.14 STAGE 4.2::Migrate Kubeconfig from BootstrapperVM to 10.176.113.15 STAGE 5.0::Delete bootstrapper cluster.
Debugging Option
To get a detailed output for each API call, use the --debug
option.
Out of Scope for this Script
- VMware Telco Cloud Automation Manager or VMware Telco Cloud Automation Control Plane appliance activation.
- Day 0 configuration of VMware Telco Cloud Automation Manager or VMware Telco Cloud Automation Control Plane appliance.
- Uploading certificates. Optional when configuring in an air-gapped environment.
- Site pair of VMware Telco Cloud Automation and VMware Telco Cloud Automation Control Plane.
- Cleanup of services during deployment failures.
For more troubleshooting tips and latest updated information refer to the knowledgebase.