This issue stems from the absence of an FQDN or external address during the environment's migration to version 3.x.
3.x
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