Attention

You are viewing an older version of the documentation. The latest version is v3.3.

Reconcile with Existing Tanzu Cluster

This section explains the procedure to configure and run the Edge Conductor tool to reconcile with an existing Tanzu cluster.

Tanzu Cluster - Preparation

Follow the Hardware and Software Requirements for Edge Conductor Day-0 Host to prepare the Day-0 host hardware and software.

Follow the instructions in Build and Install Edge Conductor Tool to build and install the Edge Conductor tool. Go to the _workspace folder to run the Edge Conductor tool.

Prepare the Tanzu cluster and create the default privileged PSP according to instructions in Tanzu Doc. Describe the cluster in a config file (in this example, config/cluster/tanzu_cluster.yml), with the following content:

SupervisorCluster:
    controller:
    ip: <supervisor-controller-plane-ip>
    user: <vcenter-sso-user>
    ssh_passwd: <vcenter-sso-user-password>
Namespace: <tanzu-cluster-namespace>
TKC:
    name: <tanzu-cluster-name>
Nodes:
    - ip: <node ip>
    critype: <dockerd or containerd>
    user: root
Registrystorage: <tanzu controller storage registry storage path>
Images:
    - <image copy from tanzu controller to target node>
    - <image copy from tanzu controller to target node>

Tanzu Cluster - Top Config

Create tanzu-top-config.yml for Tanzu cluster as shown in the following example:

Cluster:
 type: "tanzu"
 config: "config/cluster/tanzu_cluster.yml"

Services:
  client: eci-tanzu

The config/cluster/tanzu_cluster.yml is generated during Tanzu Cluster - Preparation.

The client eci-tanzu is specified in the Services section to deploy a list of tested services on Tanzu.

For other config sections and detailed description, refer to Top Config.

Tanzu Cluster - Custom Config

Prepare a custom config file customcfg.yml based on Custom Config. Note that the custom config file is a mandatory parameter for conductor init.

Tanzu Cluster - Reconcile with Existing Cluster

Run the following command to reconcile with the existing Tanzu cluster:

./conductor cluster reconcile

By default, kubeconfig will be exported to ~/.kube/config. If --export-kubeconfig is specified, kubeconfig will be exported to the target location.

Check Tanzu Cluster

Install the kubectl tool (v1.20.0) to interact with the target cluster using the kubeconfig exported by the Edge Conductor tool.

kubectl get nodes

Use --kubeconfig to specify the kubeconfig, which is not at ~/.kube/config.

Add New Node to Target Cluster

To add a well-prepared new node to the target cluster, update the config/cluster/tanzu_cluster.yml and add the node information in the Nodes section.

Then, run the following command:

./conductor cluster join

Use --kubeconfig to specify the kubeconfig, which is not at ~/.kube/config.

After the join command completes, recheck the cluster:

kubectl get nodes

Use --kubeconfig to specify the kubeconfig, which is not at ~/.kube/config.

Once a node joins the cluster, refer to Docker Docs to configure the node CRI services (docker or containerd) proxy setup.

Tanzu Cluster - Deploy Services

Run the following command to deploy services on the target cluster:

./conductor service build
./conductor service deploy

Use --kubeconfig to specify the kubeconfig, which is not at ~/.kube/config.