How-to: change the External IP address of TCA appliances
search cancel

How-to: change the External IP address of TCA appliances

book

Article ID: 384908

calendar_today

Updated On:

Products

VMware Telco Cloud Automation

Issue/Introduction

This issue stems from the absence of an FQDN or external address during the environment's migration to version 3.x.

Environment

3.x

Resolution

TCA Manager

1. SSH into the TCA Manager appliance as admin

2. Retrieve the tcxproducts using using kubectl

admin@tcam [ ~ ]$ kubectl get tcxproduct -A

NAMESPACE   NAME         STATUS            READY   MESSAGE                               AGE

default     tca-common   updateCompleted   True    All App CRs reconciled successfully   236d

default     tca-mgr      updateCompleted   True    All App CRs reconciled successfully   236d

3. Save the tca-mgr to a YAML file

admin@tcam [ ~ ]$ kubectl get tcxproduct tca-mgr -n default -o yaml > tca-mgr-txcproduct.yaml

4. Edit the kafka-strimzi value for helmOverridesBase64:

  - deleteOnProductUpgrade: false

    helmChartName: kafka-strimzi

    helmOverridesBase64: U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0

    isOperator: false

    kappControllerSyncPeriod: 1m0s

    name: kafka-strimzi

    namespace: tca-mgr

    waitAfterDeployment: true

    a. Decode the base64 value

    b. Update the IP address in the YAML

admin@tcam [ ~ ]$ echo U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0 | base64 -d

connect:

  replicaCount: 1

externalAddress: null

isEdgeKafka: false

kafka:

  cluster: central

  externalAddress: 192.168.x.x   <---- Change the IP here

  persistence:

    storageClass: local-path

  replicaCount: 1

zookeeper:

  persistence:

    storageClass: local-path

  replicaCount: 1

    c. Encode again in base64

    d. Update the value in the tcxproduct YAML

5. Repeat the same procedure for the tca Helm chart

  - deleteOnProductUpgrade: false

    helmOverridesBase64: YXBwbGlhbmNlOgogIHJvbGU6IHRjYS1tYW5hZ2VyCmdsb2JhbDoKICBkZXBsb3ltZW50U3RyYXRlZ3k6CiAgICB0eXBlOiBSZWNyZWF0ZQogIGV4dGVybmFsQWRkcmVzczogeHh4Lnh4eC54LngKICBpcHY2OiBmYWxzZQogIGlzQ252YURlcGxveW1lbnQ6IHRydWUKaW5ncmVzczoKICBlbmFibGVkOiB0cnVlCmlzdGlvUHJveHlFbmFibGVkOiBmYWxzZQpyZXNvdXJjZXM6CiAgYXBwRW5naW5lOgogICAgbGltaXRzOgogICAgICBjcHU6IDIwMDBtCiAgICAgIG1lbW9yeTogNTAwME1pCiAgICByZXF1ZXN0czoKICAgICAgY3B1OiA1MDBtCiAgICAgIG1lbW9yeTogMTAyNE1pCiAgd2ViRW5naW5lOgogICAgbGltaXRzOgogICAgICBjcHU6IDIwMDBtCiAgICAgIG1lbW9yeTogMjUwME1pCiAgICByZXF1ZXN0czoKICAgICAgY3B1OiA1MDBtCiAgICAgIG1lbW9yeTogMTAyNE1pCnNlcnZpY2U6CiAgZ2xvYmFsOgogICAgaW5ncmVzc0lwRmFtaWxpZXM6CiAgICAtIElQdjQKICAgIC0gSVB2NgogICAgaW5ncmVzc0lwRmFtaWx5UG9saWN5OiBSZXF1aXJlRHVhbFN0YWNrCiAgICBwcmVmZXJJcHY2OiBmYWxzZQogIHBsYXRmb3JtTWFuYWdlcjoKICAgIGxkYXBfYWRtaW5Vc2VyRG46IG51bGwKICAgIGxkYXBfZ3JvdXBEbjogbnVsbAogICAgbGRhcF9wYXNzd29yZDogbnVsbAogICAgbGRhcF91cmw6IG51bGwKICAgIGxkYXBfdXNlckRuOiBudWxsCiAgICBsZGFwX3VzZXJncm91cDogbnVsbAogICAgdGNhX3VzZXJfcGFzc3dvcmQ6IFNhbXBsZVBhc3N3b3JkCiAgcHJveHk6CiAgICBwb2RBbm5vdGF0aW9uczoKICAgICAgY25pLnByb2plY3RjYWxpY28ub3JnL2lwQWRkcnM6ICdbIjEwMC4xMDAuMC4yIiwgIjIwMDE6ZGI4OjE6OjIiXScKICB0Y2FVaToKICAgIHRjYV9tYW5hZ2VyOgogICAgICByZXBsaWNhQ291bnQ6IDEKICB3ZWJFbmdpbmU6CiAgICByZXBsaWNhQ291bnQ6IDE=

    isOperator: false

    kappControllerSyncPeriod: 1m0s

    name: tca

    namespace: tca-mgr

    waitAfterDeployment: false

 

6. Once done, apply the new configuration YAML with kubectl apply

admin@tcam [ ~ ]$ kubectl apply -f tca-mgr-txcproduct.yaml

7. Reboot the appliance

 

TCA Control Plane

1. SSH into the TCA Control Plane appliance as admin

2. Retrieve the tcxproducts using using kubectl

admin@tcacp [ ~ ]$ kubectl get tcxproduct

NAME         STATUS            READY   MESSAGE                               AGE

tca-common   updateCompleted   True    All App CRs reconciled successfully   345d

tca-cp-cn    updateCompleted   True    All App CRs reconciled successfully   345d

3. Save the tca-cp-cn to a YAML file

admin@tcacp [ ~ ]$ kubectl get tcxproduct tca-cp-cn -n default -o yaml > tca-cp-cn-txcproduct.yaml

4. Edit the kafka-strimzi value for helmOverridesBase64:

    a. Decode the base64 value

  - deleteOnProductUpgrade: false

    helmChartName: kafka-strimzi

    helmOverridesBase64: U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0

    imgpkgTag: 3.2.0-ob-24287525

    isOperator: false

    kappControllerSyncPeriod: 1m0s

    name: kafka-strimzi

    waitAfterDeployment: true

     b. Update the IP address in the YAML

admin@tcacp [ ~ ]$ echo U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0U2FtcGxlQmFzZTY0 | base64 -d

connect:

  replicaCount: 1

kafka:

  cluster: edge

  externalAddress: 192.168.x.x <--- Change the IP here

  persistence:

    storageClass: local-path

  replicaCount: 1

  service:

    extPort: 9093

zookeeper:

  persistence:

    storageClass: local-path

  replicaCount: 1

     c. Encode again in base64

     d. Update the value in the tcxproduct YAML

5. Repeat the same procedure for the tca Helm chart

  - deleteOnProductUpgrade: false

    helmOverridesBase64: YXBwbGlhbmNlOgogIHJvbGU6IHRjYS1jcApnbG9iYWw6CiAgZGVwbG95bWVudFN0cmF0ZWd5OgogICAgdHlwZTogUmVjcmVhdGUKICBleHRlcm5hbEFkZHJlc3M6IHh4eC54eHgueC54CiAgaXB2NjogZmFsc2UKICBpc0NudmFEZXBsb3ltZW50OiB0cnVlCmluZ3Jlc3M6CiAgZW5hYmxlZDogdHJ1ZQogIGthZmthOgogICAgZWRnZToKICAgICAgY2x1c3RlcjogZWRnZQogICAgICBleHRlcm5hbExpc3RlbmVyUG9ydDogIjkwOTMiCiAgICAgIHJlcGxpY2FDb3VudDogIjEiCiAgICBpc0VkZ2VLYWZrYTogdHJ1ZQppc3Rpb1Byb3h5RW5hYmxlZDogZmFsc2UKcmVzb3VyY2VzOgogIGFwcEVuZ2luZToKICAgIGxpbWl0czoKICAgICAgY3B1OiAyMDAwbQogICAgICBtZW1vcnk6IDU1MDBNaQogICAgcmVxdWVzdHM6CiAgICAgIGNwdTogNTAwbQogICAgICBtZW1vcnk6IDUwMDBNaQogIHdlYkVuZ2luZToKICAgIGxpbWl0czoKICAgICAgY3B1OiAyMDAwbQogICAgICBtZW1vcnk6IDI1MDBNaQogICAgcmVxdWVzdHM6CiAgICAgIGNwdTogNTAwbQogICAgICBtZW1vcnk6IDEwMjRNaQpzZXJ2aWNlOgogIGJvb3RzdHJhcHBlcjoKICAgIGhvc3Q6IGh0dHA6Ly9rOHMtYm9vdHN0cmFwcGVyLXNlcnZpY2UudGNhLWNwLWNuLnN2Yy5jbHVzdGVyLmxvY2FsCiAgZXh0ZW5zaW9uUGxhdGZvcm06CiAgICB1cmw6IGh0dHA6Ly90Y2EtZXh0ZW5zaW9uLXBsYXRmb3JtLnRjYS1jcC1jbi5zdmMuY2x1c3Rlci5sb2NhbDo1MDAxCiAgZ2xvYmFsOgogICAgaW5ncmVzc0lwRmFtaWxpZXM6CiAgICAtIElQdjQKICAgIC0gSVB2NgogICAgaW5ncmVzc0lwRmFtaWx5UG9saWN5OiBSZXF1aXJlRHVhbFN0YWNrCiAgICBwcmVmZXJJcHY2OiBmYWxzZQogIHBsYXRmb3JtTWFuYWdlcjoKICAgIHRjYV91c2VyX3Bhc3N3b3JkOiBTYW1wbGVwYXNzd29yZAogIHByb3h5OgogICAgcG9kQW5ub3RhdGlvbnM6CiAgICAgIGNuaS5wcm9qZWN0Y2FsaWNvLm9yZy9pcEFkZHJzOiAnWyIxMDAuMTAwLjAuMiIsICIyMDAxOmRiODoxOjoyIl0nCiAgdGNhVWk6CiAgICByZXBsaWNhQ291bnQ6IG51bGwKICB3ZWJFbmdpbmU6CiAgICByZXBsaWNhQ291bnQ6IDE=

    imgpkgTag: 3.2.0-ob-24287525

    isOperator: false

    kappControllerSyncPeriod: 1m0s

    name: tca

    waitAfterDeployment: false

6. Once done, apply the new configuration YAML with kubectl apply

admin@tcacp [ ~ ]$ kubectl apply -f tca-mgr-txcproduct.yaml

7. Reboot the appliance