This document contains the procedure to update the database manually with the airgapFqdn in the ApplianceConfig table on TCA-CP (where workload cluster is configured).
Symptoms:
Failed to pull image "example.packages.com/kubectl:3.2.0-ob-24441215": rpc error: code = Unknown desc = failed to pull and unpack image "example.packages.com/kubectl:3.2.0-ob-24441215": failed to resolve reference "example.packages.com/kubectl:3.2.0-ob-24441215": failed to do request: Head "https://example.packages.com/v2/kubectl/manifests/3.2.0-ob-24441215": dial tcp ##.###.##.##:443: connect: network is unreachable
2.3 or above
Airgap Server FQDN is missing for clusters in the database of TCA Control plane node. This could happen after cluster certs are renewed using manual/automated work arounds provided.
Update Airgap FQDN for management cluster in TCA-CP DB.
connect-to-postgres
debug-tca-cluster
Once new shell starts, then type
debug-tca
Then go to postgres
SELECT * from "ApplianceConfig" WHERE val->'config'->>'clusterName'='<cluster_name>';
Check the entries for the cluster, you will find Airgap entry is missing.UPDATE "ApplianceConfig" SET "val" = jsonb_set("val", '{config,airgapFqdn}', '"<airgap_fqdn>"') WHERE "val"->'config'->>'clusterName'='<cluster_name>';
Example of the DB entry before and after the changes:
Before adding airgap FQDN:
{ "_id" : ObjectId("########################"), "config" : { "url" : "[https://##.###.##.###:6443|https://##.###.##.###:6443/]", "clusterName" : "<clusterName>", , "UUID" : "########-####-####-####-############", "version" : "1.22", "kubeSystemUUID" : "########-####-####-####-############", "clusterType" : "WORKLOAD" } , "section" : "kubernetes", "enterprise" : "HybridityAdmin", "organization" : "HybridityAdmin", "lastUpdated" : ISODate("20##-##-##T07:59:24.211Z"),
"lastUpdateEnterprise" : "HybridityAdmin", "lastUpdateOrganization" : "HybridityAdmin", "lastUpdateUser" : "HybridityAdmin", "creationDate" : ISODate("20##-##-##T11:13:18.802Z"), "creationEnterprise" : "HybridityAdmin", "creationOrganization" : "HybridityAdmin", "creationUser" : "HybridityAdmin", "isDeleted" : false }
After updating the changes in DB:
{ "_id" : ObjectId("########################"), "config" : { "url" : "[https://##.###.##.###:6443|https://##.###.##.###:6443/]", "clusterName" : "<clusterName>","kubeconfig" : "", "UUID" : "########-####-####-####-############", "version" : "1.22", "kubeSystemUUID" : "########-####-####-####-############", "clusterType" : "WORKLOAD", "airgapFqdn" : "[name.example.com|http://name.example.com/]" } , "section" : "kubernetes", "enterprise" : "HybridityAdmin", "organization" : "HybridityAdmin", "lastUpdated" : ISODate("20##-##-##T07:59:24.211Z"), "lastUpdateEnterprise" : "HybridityAdmin", "lastUpdateOrganization" : "HybridityAdmin", "lastUpdateUser" : "HybridityAdmin", "creationDate" : ISODate("20##-##-##T11:13:18.802Z"), "creationEnterprise" : "HybridityAdmin", "creationOrganization" : "HybridityAdmin", "creationUser" : "HybridityAdmin", "isDeleted" : false }