VMware Telco Cloud
TCP 5.2 + TCA 3.5
Quick Technical Reference
Architecture · Components · Networking · Kubernetes · CNF/VNF · Harbor · Orchestration · Lifecycle · Security · Performance · Troubleshooting
| Legend | Meaning |
|---|---|
| TCP (Teal) → | Belongs to / managed by Telco Cloud Platform infrastructure (ESXi, NSX, TKG, vSAN, Aria…) |
| TCA (Blue) → | Belongs to / managed by Telco Cloud Automation (orchestration, catalog, LCM, Harbor onboarding…) |
| Shared (Purple) → | Concept applies to both products equally |
| ★ = Best Practice | Broadcom-recommended design or operational approach |
| ⚠ = Warning | Known pitfall or important constraint |
| ✘ = Critical | Violation will cause failure — must not be missed |
1. How TCP and TCA Work Together
1.1 Product Roles at a Glance
| Product | Full Name | Role in Telco Cloud | What It Owns |
|---|---|---|---|
| TCP 5.2 | Telco Cloud Platform | Infrastructure + multi-layer stack | ESXi, vCenter, NSX, vSAN, TKG, Cloud Director, Avi LB, Harbor, Aria, BCDR |
| TCA 3.5 | Telco Cloud Automation | NFV-MANO Orchestration layer | Catalog, NF descriptors, LCM workflows, VIM registration, CaaS provisioning |
1.2 Architecture Stack — Complete View
┌───────────────────────────────────────────────────────────────────┐
│ BSS / OSS (External — not part of TCP/TCA) │
├───────────────────────────────────────────────────────────────────┤
│ TCA 3.5 (NFVO + G-VNFM) │
│ ┌──────────────┐ ┌──────────────────────────────────────────┐ │
│ │ TCA Manager │ │ TCA Control Plane (3 instances) │ │
│ │ (UI/API/ │──│ CP-MGMT-VC | CP-COMP-VC | CP-EXT-K8│ │
│ │ Catalog) │ └──────────────────────────────────────────┘ │
│ └──────────────┘ │ VIM APIs │
├───────────────────────────────────────────────────────────────────┤
│ TCP 5.2 Infrastructure Layer │
│ ┌──────────────────┐ ┌──────────────────┐ ┌────────────────┐ │
│ │ vSphere/vCenter │ │ NSX 4.2.4 │ │ vSAN / NFS │ │
│ │ ESXi 8.0U3 │ │ EDP / DFW / Edge│ │ vSAN ESA/OSA │ │
│ └──────────────────┘ └──────────────────┘ └────────────────┘ │
│ ┌──────────────────┐ ┌──────────────────┐ ┌────────────────┐ │
│ │ TKG 2.5.7 │ │ Cloud Director │ │ Harbor 2.15.1 │ │
│ │ (CaaS/K8s) │ │ 10.6.1 (VNF VIM)│ │ (OCI Registry)│ │
│ └──────────────────┘ └──────────────────┘ └────────────────┘ │
│ ┌────────────────────────────────────────────────────────────┐ │
│ │ Aria Operations 8.18.7 | Aria Logs 8.18.7 | Aria Networks │ │
│ └────────────────────────────────────────────────────────────┘ │
├───────────────────────────────────────────────────────────────────┤
│ Physical: ESXi Servers | Leaf/Spine Fabric | Storage Drives│
└───────────────────────────────────────────────────────────────────┘
1.3 Responsibility Split — What Does What
| Function | TCP 5.2 (Infrastructure) | TCA 3.5 (Orchestration) |
|---|---|---|
| VIM Management | vCenter, Cloud Director, TKG are the VIMs | TCA registers VIMs, interfaces via API |
| K8s Cluster Lifecycle | TKG 2.5.7 provides K8s platform | TCA provisions clusters (CaaS), manages node pools |
| Container Images / Charts | Harbor 2.15.1 hosts images & Helm charts | TCA pulls from Harbor during CNF instantiation |
| Network Functions | NSX provides networking for NFs | TCA deploys/scales/heals/terminates VNFs & CNFs |
| Load Balancing | Avi LB + AKO provides L4/L7 LB | TCA-deployed CNF requests LB via Annotations/Labels |
| Monitoring | Aria Operations / Logs / Networks | TCA generates alarms, provides NF/NS lifecycle events |
| Node Customization | ESXi host provides vSphere environment | TCA applies DPDK, hugepages, isolcpus on K8s nodes |
| Workflows / Automation | vRO 8.18.1 executes enterprise workflows | TCA triggers vRO workflows during NF LCM operations |
| BCDR | vSphere Replication + Live Site Recovery 9.0.2 | TCA Velero add-on for K8s cluster backup/restore |
1.4 End-to-End CNF Deployment Flow
Vendor CSAR (CNFD + Helm chart refs + infra requirements)
│
▼
TCA Manager ──[catalog upload]──► Network Function Catalog
│ │
│ [Instantiate] │
▼ ▼
TCA-CP-COMP-VC ──────────────────► TKG Workload Cluster
① Node Customization (ESXi hosts via TCP)
│ hugepages, isolcpus,
│ DPDK modules, SR-IOV
② Grant (namespace + RBAC)
③ Pre-Workflow (optional)
④ Helm Install ◄──── Harbor 2.15.1 (OCI chart + images)
⑤ Post-Workflow (optional)
│
▼
CNF Running ──► Pods in K8s Namespace
│ Secondary interfaces (EDP VMXNET3 or SR-IOV VF)
└── Avi LB exposes service endpoints (AKO → Avi Controller)
2. Compute / ESXi / CPU / NUMA
2.1 ESXi 8.0 U3 [TCP]
| Topic | Details |
|---|---|
| Role | Type-1 hypervisor. Provides compute/memory/virt for VNF VMs and TKG node VMs (CNFs). |
| Install | 128 GB+ local disk. Static IP + DNS-resolvable FQDN. CPU virtualisation ON in BIOS. NTP configured. |
| Host types | ESXi_MGMT_01–04 (management), ESXi_COMP_xx (workload CNF/VNF), ESXi_EDGE_xx (NSX Edge). |
| Legacy storage | SD/USB devices for ESX-OSData DEPRECATED in TCP 5.2. Use 128 GB+ local disk. |
| Clusters | Management cluster (min 4 hosts), Edge cluster (min 2), Workload cluster (min 3). |
| HA + DRS | Enable on ALL clusters. DRS: Fully Automated. DRS Anti-Affinity rules: configure post-deployment for Aria, vCenter, Cloud Director HA pairs. |
| Power Policy | Set HIGH PERFORMANCE on all data-plane hosts → prevents CPU power management → consistent throughput. |
2.2 NUMA — Critical for Data Plane [TCP]
Server (Dual Socket)
┌─────────────────────────┐ ┌─────────────────────────┐
│ CPU Socket 0 (NUMA 0) │ │ CPU Socket 1 (NUMA 1) │
│ Cores 0–23 │ │ Cores 24–47 │
│ Local DRAM (128 GB) │ │ Local DRAM (128 GB) │
│ PCIe NIC (vmnic0/1) │ │ PCIe NIC (vmnic2/3) │
│ ▲ │ │ ▲ │
│ [SAME NUMA = FAST] │ │ [SAME NUMA = FAST] │
└─────────────────────────┘ └─────────────────────────┘
│ Cross-NUMA access adds latency │
└──────────────────────────────────┘
| NUMA Rule | Why |
|---|---|
| One NIC per NUMA node minimum | Traffic processed by local CPU+memory — reduces latency |
| Install NIC in PCIe slot aligned to NUMA node | Ensures PCI traffic stays within NUMA boundary — critical for data plane |
| Worker Node VM sized within one NUMA node | All vCPU + memory from same NUMA — avoid cross-NUMA scheduling |
| Use EDP or SR-IOV per NUMA node | Each data plane NIC within correct NUMA boundary for its packets |
2.3 CPU Pinning & Latency Sensitivity [TCP + TCA]
| Setting | Effect | Where Configured | Use When |
|---|---|---|---|
| Latency Sensitivity = Normal | ESXi scheduler moves vCPUs freely. No reservation. | vSphere VM settings | General workloads |
| Latency Sensitivity = High | Each vCPU pinned to physical core. HT sibling blocked. 100% CPU+RAM reservation auto-applied. | TCA → Infrastructure Requirements → Latency Sensitivity | 5G data plane VMs (UPF, DU) |
| Latency Sensitivity = High + SMT | vCPU pinned to HT thread. Consecutive pairs share physical core. | TCA → Enable SMT | When HT sharing acceptable on data plane |
| isolcpus kernel arg | Isolates CPUs from Linux scheduler inside Worker Node. | TCA → Infra Req → KERNEL ARGUMENTS | Prevent OS tasks stealing data plane CPU |
| CPU Manager Policy = Static | K8s pins container to Worker Node vCPUs (Guaranteed Pod required). | TCA Node Pool config | K8s-native CPU pinning for CNF containers |
| isNumaConfigNeeded = true | NUMA-aware Worker Node vCPU pinning. | TCA → node_components in Resources tab | Ensure CNF container on correct NUMA |
⚠ Latency Sensitivity = High auto-applies 100% CPU + memory reservation. Pre-size hosts to accommodate full reservations.
kube-reserved and system-reserved must be non-zero when CPU Manager Policy = Static. Otherwise K8s scheduler fails to place Guaranteed Pods correctly.
3. Networking
3.1 Physical Network Design [TCP]
| Design Element | Rule |
|---|---|
| Topology | Leaf/Spine L3 fabric. L2 terminated at each leaf switch. No VLAN spanning between racks/pods. |
| ToR Switches | Minimum 2 per rack for redundancy. Cell sites: no ToR redundancy (cost/power constrained). |
| MTU | Physical switches: 9000 (jumbo). Guest OS / vDS: 9000 vDS → 8900 inside VM. Required for vSAN, vMotion, data plane. |
| Oversubscription | Leaf uplink must exceed aggregate downlink. E.g., 16×25G hosts → min 4×100G uplinks to spine. |
| ECMP | Equal uplinks across all spine switches for balanced multipath routing. |
| Flow Control | DISABLE on ToR and NSX Bare Metal Edge data-plane paths → eliminates pause-frame-induced latency. |
| QoS | Required: Low-Latency Queuing on physical fabric for telco workloads. |
3.2 Key VLANs Reference [TCP]
| VLAN | Purpose | Cluster | Notes |
|---|---|---|---|
| 100 | ESXi Management | All | ESXi host VMkernel management |
| 200 | vMotion | All | Separate VMkernel + TCP/IP stack. NOT for SR-IOV VMs. |
| 300 | vSAN Storage | All | vSAN inter-host traffic |
| 70 | NSX Standard TEP | Workload | Tunnel Endpoint for standard NSX overlay |
| 80 | NSX Enhanced TEP (EDP) | Workload | Tunnel Endpoint for EDP-enabled overlay |
| 10 | VM Management | All | Platform VM management traffic |
| 20 | External | Management | External connectivity for management cluster |
| SR-IOV VLAN | SR-IOV data plane | Workload | Tenant VLAN — any N, configured per CNF |
| 0-4094 | Edge Trunk | Edge | Full trunk for NSX Edge north-south traffic |
3.3 vSphere Distributed Switch (vDS) [TCP]
Use vDS only — no standard switches in TCP 5.2. MTU: 9000 on ALL vDS.
Static port binding on all non-management port groups. Ephemeral binding on management only (vCenter-down recovery).
NIOC v3: enable on non-workload vDS to prioritize traffic types during contention.
Two vDS types on workload cluster: Standard vDS (NSX overlay) + Enhanced vDS (EDP data plane).
NIC teaming: min 2 physical NICs per vDS, separate cards. One NIC per NUMA node for workload vDS.
3.4 NSX 4.2.4 [TCP]
| NSX Component | Description |
|---|---|
| NSX Manager | 3-node cluster with Virtual IP. Two clusters: one for Management, one for Workload/Edge domains. |
| Transport Zones | Host TZ (ESXi overlay reach) + Edge TZ (Edge overlay reach). Define which nodes participate. |
| TEP (Tunnel Endpoint) | IP per transport node used for GENEVE encapsulation of overlay traffic. |
| T0 Gateway | Tier-0: north/south routing, BGP peering to physical routers. Lives on NSX Edge cluster. |
| T1 Gateway | Tier-1: tenant routing for workload segments. Connected to T0. Distributed on ESXi hosts. |
| vDefend DFW | Hypervisor-level stateful microsegmentation per VM NIC. Default rule: allow. Adds overhead on data path. |
| VRFs | Virtual routing tables for tenant network isolation. Multi-tenant L3 separation. |
3.5 NSX Enhanced Data Path (EDP) [TCP]
Standard NSX Path: EDP (DPDK) Path:
pNIC pNIC
│ interrupt-driven │ poll-mode driver
▼ ▼
VMkernel EDP vDS (DPDK core, dedicated)
▼ ▼
VM vNIC (VMXNET3) VM vNIC (VMXNET3 → EDP)
▼ ▼
Guest OS network stack DPDK app (userspace, no OS stack)
← Eliminates interrupt overhead →
| EDP Aspect | Details |
|---|---|
| Two modes | EDP-Standard (dynamic CPU allocation) | EDP-Performance/Dedicated (static cores — preferred for telco data plane) |
| NIC requirement | Poll-mode capable NIC. Same bandwidth on all NUMA nodes. One dedicated NIC per NUMA per EDP vDS. |
| Core assignment | Equal CPU cores from each NUMA node assigned to EDP switch. |
| Config path | NSX Transport Node Profile → switching mode = EDP-Standard or EDP-Performance |
| NUMA + teaming | NSX LB Source Teaming Policy ensures NUMA-aware NIC selection when Latency Sensitivity=High + VMXNET3 |
| EDP vs SR-IOV | EDP: keeps HA/DRS/vMotion, needs tuning. SR-IOV: max performance but loses HA/vMotion. Broadcom recommends EDP where possible. |
3.6 SR-IOV [TCP + TCA]
Allows one physical NIC to expose multiple Virtual Functions (VFs) directly to VMs/pods — bypasses VMkernel entirely.
TCP provides the host-level SR-IOV infrastructure (BIOS, driver, VF configuration). TCA configures NUMA Alignment for SR-IOV in CNF descriptor and applies node customization.
SR-IOV + vMotion: NOT supported. Drain + power off VMs before ESXi upgrade on SR-IOV hosts.
Max: 128 SR-IOV + PCI devices per CSAR package (TCA limit).
3.7 DPDK [TCP + TCA]
| DPDK Aspect | Details |
|---|---|
| What | Userspace poll-mode packet processing framework. Eliminates Linux OS network stack overhead. |
| PMD drivers | vfio-pci (recommended, requires IOMMU) | igb_uio (deprecated, no IOMMU protection) |
| vfio-pci + IOMMU | Add kernel args: intel_iommu=on iommu=pt (via TCA Infrastructure Requirements) |
| vfio without IOMMU | modprobe vfio enable_unsafe_noiommu_mode=1 OR echo 1 > /sys/module/vfio/parameters/enable_unsafe_noiommu_mode |
| TCP role | EDP vDS + physical NIC provide the packet path. Hugepages configured at ESXi host level. |
| TCA role | Reads CSAR → applies DPDK kernel module, vfio-pci, hugepages, iommu kernel args to Worker Node automatically. |
3.8 NSX Bare Metal Edge Tuning Commands [TCP]
# View ring buffer size Edge-node> get dataplane | find ring # Set ring buffer (valid: 512 | 1024 | 2048 | 4096) Edge-node> set dataplane ring-size rx 1024 Edge-node> set dataplane ring-size tx 1024 Edge-node> restart service dataplane # Flow cache (default: 115 MB/core — increase if collision rate high) Edge-node> get dataplane flow-cache config Edge-node> set dataplane flow-cache-size 524288 Edge-node> restart service dataplane # BGP neighbor status Edge-node> get bgp neighbor
⚠ Disabling flow cache (NSX 4.1.1+) triggers an alarm. Only disable if strictly required. Prefer increasing cache size.
# ESXi — Mellanox CX6 RSS (takes effect after host reboot) esxcli system module parameters set -m nmlx5_core -p 'GEN_RSS=4 RSS=16 DRSS=8 max_queues=32' # ESXi — EDP pNIC ring size nsxdp-cli ens uplink ring set -t 4096 -r 4096 -n vmnic10 net-dvs --persist # ESXi — TX queue length (default 2000, max 10000) esxcli system settings advanced set -i 10000 -o /Net/MaxNetifTxQueueLen # ESXi — Separate Rx/Tx to different CPU cores esxcli system settings advanced set -o /Net/NetNetqRxQueueFeatPairEnable -i 0
4. Storage
| Storage Type | Details | Managed By |
|---|---|---|
| vSAN ESA | Express Storage Architecture — preferred for vSphere 8 new deployments. High performance SDS. | TCP (vCenter cluster) |
| vSAN OSA | Original Storage Architecture — use for vSphere 7 or specific design requirements. | TCP (vCenter cluster) |
| NFS | External NFS datastore. Required for offline/backup storage. Dedicated VMkernel adapter. | TCP (vCenter) |
| iSCSI / FC / NVMe | External block storage options. Check VMware Compatibility Guide. | TCP (vCenter) |
| vSphere CSI Driver | Cloud Storage Interface — dynamic PV provisioning for TKG pods. | TCP (K8s/TKG) |
| RWO (Block/VMDK) | ReadWriteOnce — single node mount. Default for TKG pods via CSI. | TCP (CSI/vSAN) |
| RWX (File) | ReadWriteMany — requires vSAN File Service 7.0+ (limited PV count) or external NFS. | TCP (vSAN / NFS) |
| Velero | K8s cluster backup/restore. Requires S3-compatible object storage. | TCA (add-on on TKG) |
⚠ vSAN hosts: RAID controller must be in PASS-THROUGH mode (no RAID configured). vSAN manages disk grouping itself.
★ vSAN license included in TCP at 1 TiB per core. Additional capacity licenses may be required for large datastores.
RWX PV count via vSAN File Service is limited — check VMware Configuration Maximums. Use external NFS for high RWX PV counts.
5. Kubernetes / TKG 2.5.7
5.1 TKG Overview [TCP infrastructure, TCA provisions]
TCA Manager ──[CaaS provision]──► TCA-CP-COMP-VC
│
▼
Management Cluster (TKG)
│ manages
▼
┌─────────────────────────────┐
│ Workload Cluster A │
│ ┌──────────────────────┐ │
│ │ Control Plane Nodes │ │
│ └──────────────────────┘ │
│ ┌──────────┐ ┌──────────┐ │
│ │Node Pool │ │Node Pool │ │
│ │(std CNFs)│ │(data pln)│ │
│ └──────────┘ └──────────┘ │
└─────────────────────────────┘
| TKG Concept | Details | Owner |
|---|---|---|
| Management Cluster | Controls workload clusters. Deployed first via TCA. | TCP (TKG) + TCA (provisions) |
| Workload Cluster | Hosts CNF pods. Multiple clusters per management cluster. | TCP (TKG) + TCA (provisions) |
| Node Pool | Group of identical Worker Node VMs in a cluster. | TCA (manages) |
| Primary CNI | Antrea (OVS, NSX integration) or Calico (iptables, BGP — but eBGP NOT supported). CANNOT change after creation. | TCP (TKG) |
| Multus CNI | Enables secondary pod network interfaces (EDP VMXNET3 or SR-IOV VF) for data plane. | TCP (TKG) + TCA (config) |
| Cluster Add-ons | Fluent-bit, Prometheus, Velero, AKO, OPA Gatekeeper — optional per cluster. | TCA (deploys) |
| K8s versions (new) | 1.30.14, 1.31.14, 1.32.10, 1.33.6, 1.34.8, 1.35.5, 1.36.1 | TCP (TKG 2.5.7) |
| K8s manage-only | 1.30.2*, 1.30.13*, 1.31.9**, 1.32.5**, 1.33.1* — cannot create new clusters | TCA (limited) |
| Isolation modes | Permissive (default, shared namespace) | Restricted (per-NF namespace isolation) | TCA (K8s VIM config) |
⚠ K8s 1.32.5: cannot create new clusters AND cannot upgrade add-ons. Upgrade to 1.33 or 1.36 LTS.
5.2 Secondary Networks for Data Plane Pods [TCP + TCA]
| Interface Type | Description | Performance | HA/vMotion |
|---|---|---|---|
| EDP VMXNET3 | Secondary VMXNET3 backed by EDP-enabled vDS (DPDK poll-mode). Recommended. | High | ✔ Supported |
| SR-IOV VF | Physical NIC Virtual Function passed directly to pod. Bypasses VMkernel. | Maximum | ✘ Not supported |
| MACVLAN | Unique MAC per secondary interface. High-performance secondary pod NIC. | High | ✔ |
| IPVLAN | Shared MAC, unique IP per secondary interface. | High | ✔ |
5.3 Avi Load Balancer + AKO [TCP]
Avi LB 30.2.7: L4 LB + L7 ingress. AKO 1.13.3 / 2.2.1 per TKG cluster. Supports IPv4, IPv6, dual-stack VIP.
AKO deployment: as TKG add-on (fixed version) OR via Helm chart (preferred for version flexibility).
CNF uses LB via K8s service type:LoadBalancer — Annotations for single service VIP, Labels for multi-service/port VIP.
AKO creates Avi pools with K8s pods as members. Monitors pod health continuously.
5.4 Multus Network Attachment Definition (NAD) [TCP + TCA]
# NAD Custom Resource (created by CNF vendor in Helm chart) apiVersion: "k8s.cni.cncf.io/v1" kind: NetworkAttachmentDefinition metadata: name: macvlan-conf-3 namespace: testns1 spec: config: '{"cniVersion":"0.3.0","type":"macvlan","master":"eth1", "mode":"bridge","ipam":{"type":"host-local", "ranges":[[{"subnet":"12.10.0.0/16"}]]}}' # Pod uses NAD via annotation: annotations: k8s.v1.cni.cncf.io/networks: macvlan-conf-3
6. CNF / VNF / Network Functions
6.1 VNF vs CNF — Key Differences [TCA]
| Aspect | VNF | CNF |
|---|---|---|
| What | Network function in VMs | Network function in containers/pods |
| Descriptor | VNFD (ETSI SOL001/SOL004) | CNFD (ETSI SOL001/SOL004) |
| VIM | vSphere or Cloud Director 10.6.1 | Kubernetes (TKG 2.5.7) |
| Packaging | VM disk images + CSAR | Helm charts + OCI images + CSAR |
| Scaling | Add/remove VDU (VM) instances | Adjust Helm replica counts |
| Healing | Replace failed VDU VMs | K8s self-heals pods; TCA can Helm re-apply |
| Upgrade | New VM image / CSAR version | Helm upgrade to new chart version |
| Performance tools | EPA: CPU pinning, hugepages, NUMA (VIO VIM) | EDP, SR-IOV, DPDK, hugepages, isolcpus, CPU pinning |
| Networking | NSX logical networks, external CPs | Multus secondary interfaces (EDP/SR-IOV) |
6.2 NF Lifecycle Operations [TCA]
| Operation | What It Does | Works On | Key Notes |
|---|---|---|---|
| Instantiate | Deploy NF. Allocates resources, creates VMs/pods. | VNF + CNF | Requires catalog entry, VIM registered, compute profile (VNF) |
| Scale Out/In | Add/remove VDU instances or pod replicas. | VNF + CNF | Defined by scaling policy in descriptor |
| Scale To Level | Jump to a predefined instantiation level. | VNF + CNF | Requires scaling policy with levels defined |
| Heal | Repair failed NF. Replaces failed VDUs or triggers Helm re-apply. | VNF + CNF | Manual or via alarm/policy trigger |
| Reconfigure | Update CNF Helm values without changing chart version. | CNF only | TCA sends updated values to Helm |
| Operate | Change power state: Start / Stop (Forceful or Graceful) of VDUs. | VNF only | Not applicable to CNFs |
| Upgrade Package | Replace NF with new CSAR/Helm chart version. | VNF + CNF | Rollback NOT available for CNF upgrades |
| Terminate | Remove all NF workloads from infrastructure. | VNF + CNF | NF must be in instantiated state |
| Rollback | Revert to previous successful operation state. | VNF + CNF | NOT available for CNF upgrade operations |
| Retry | Retry the last failed operation. | VNF + CNF | NOT available for CNF upgrade operations |
| Reset State | Reset to 'Not Instantiated - Completed'. Does NOT clean resources. | VNF + CNF | Then manually delete instance |
| Workflow | Run automation workflow on NF context. | VNF + CNF | vRO or TCA Workflow Hub |
✘ Retry, Rollback, and Reset State are NOT available for CNF upgrade operations. Enable Auto Rollback before upgrade.
6.3 CNF LCM Execution Stages [TCA-CP]
TCA-CP receives LCM instruction
│
▼
┌─────────────────────────────────────────────────┐
│ ① Node Customization │ ← Install packages, DPDK modules,
│ (hugepages, isolcpus, kernel args, drivers) │ hugepages, kernel args on K8s nodes
├─────────────────────────────────────────────────┤
│ ② Grant │ ← Namespace creation, RBAC setup
├─────────────────────────────────────────────────┤
│ ③ Pre-Workflow (optional — if defined in CSAR) │ ← vRO or TCA Workflow Hub steps
├─────────────────────────────────────────────────┤
│ ④ Helm Install / Upgrade / Rollback │ ← Pulls chart from Harbor OCI registry
│ (Helm 3.13.3+, default timeout: 20 min) │ K8s + Helm events captured here
├─────────────────────────────────────────────────┤
│ ⑤ Post-Workflow (optional — if defined in CSAR) │ ← Configuration, validation steps
└─────────────────────────────────────────────────┘
│
▼
CNF Instantiated — pods running in K8s namespace
6.4 NF States [TCA]
| State | Meaning |
|---|---|
| Not Instantiated | NF defined in catalog/inventory but not deployed. |
| Instantiated | NF deployed and running. |
| Not Instantiated – Rolled Back | Operation failed, deployed resources cleaned up. Can redeploy. |
| Not Instantiated – Completed | Reset State used. Resources NOT cleaned up automatically. Delete instance manually. |
6.5 CNF Granular Status Updates [TCA 3.1+]
Shows real-time K8s events + Helm events in TCA UI during LCM operations. Enabled by default.
Event types: HelmEvent (Helm service actions) | K8sEvent (cluster events from K8s Event Collector).
Events stored in Tasks page. Use for post-operation debugging.
# Disable granular updates (value=true = disabled): curl -k --request PUT https://<tca-ip>/admin/hybridity/api/global/settings/Cnf/disableGranularUpdates \ --header 'content-type: application/json' \ --header 'x-hm-authorization: <token>' \ --data '{"value":"true"}' # After change: restart TCA App Engine (TCA-M) + Helm Service + K8s Event Collector (TCA-CP)
TCA 3.4+: Background CNF monitoring removed. Manual Refresh required in Inventory UI. Auto full-sync every 2 hours.
7. Harbor 2.15.1 — Container Registry
| Topic | Details |
|---|---|
| What | OCI-compliant registry for Helm charts and container images. Open-source, enterprise-grade. |
| Deployed as | CNF on TKG workload cluster via TCA (TCP deploys K8s; TCA instantiates Harbor as a CNF). |
| Version | 2.15.1 in TCP 5.2 / TCA 3.5. |
| URI format | OCI repository: oci://harbor-fqdn/project/chart (ChartMuseum: https:// — deprecated in Harbor 2.8+) |
| Trivy | Built-in vulnerability scanner. Configure GitHub token in values.yaml for up-to-date DB. Manual DB update in airgap. |
| SBOM | Software Bill of Materials generation. Enable: Harbor Admin UI → Administration → SBOM. |
| Audit logs | Track all operations. Harbor Admin UI → Administration → Audit Log. |
| Privileged mode | Required for Harbor CNF pods on restricted K8s clusters. Enable explicitly before installation. |
| Partner System | Register Harbor in TCA: Infrastructure → Partner Systems. Update ca.crt after any cert change. |
| Airgap | TCA Airgap Server provides local Harbor registry for no-internet environments. |
✘ Harbor 2.15.1 removed ChartMuseum. Any CNF using ChartMuseum-based Helm repos will FAIL LCM after Harbor upgrade. Migrate to OCI BEFORE upgrading Harbor.
7.1 ChartMuseum → OCI Migration Command [TCA]
docker run -it --rm \ -v <path_to_chart_storage>:/chart_storage \ -v <harbor_ca_cert>:/usr/local/share/ca-certificates/harbor_ca.crt \ goharbor/migrate-chart:1.1.0 \ --hostname <harbor_host> --password <harbor_admin_pass>
After migration, update CNF descriptor to use oci:// URI instead of https:// URI in TCA.
7.2 Key Harbor Operations [TCP + TCA]
| Operation | Method |
|---|---|
| Reconfigure Harbor | Edit values.yaml → apply via TCA Reconfigure workflow |
| Increase PV size (Deployment) | values.yaml → persistence.persistentVolumeClaim.registry.size |
| Increase PV size (StatefulSet) | Direct PVC resize in K8s — NOT via values.yaml |
| Change admin password | Harbor Admin UI → Admin → Change Password |
| Reset admin password | harbor-cli admin reset |
| Harbor cert renewal | Update TLS K8s secret → reconfigure Harbor → update ca.crt in TCA Partner Systems |
| Backup / Restore | Follow Harbor for CNFs Deployment Guide backup procedures before any upgrade |
8. TCA Orchestration [TCA]
8.1 TCA Architecture [TCA]
| Component | Role | Access |
|---|---|---|
| TCA Manager (TCA-M) | NFVO + G-VNFM. UI/API/Catalog. Pairs with TCA-CPs. Single instance. | https://tca-m:443 (UI) | https://tca-m:9443 (appliance mgmt) |
| TCA-CP-MGMT-VC | Interfaces with Management vCenter VIM. | https://tca-cp-mgmt:443 | :9443 |
| TCA-CP-COMP-VC | Interfaces with Workload vCenter + NSX + vRO. Main workload VIM. | https://tca-cp-comp:443 | :9443 |
| TCA-CP-EXT-K8S | Interfaces with external K8s clusters (optional). | https://tca-cp-ext:443 | :9443 |
| TCA Airgap Server | Local Harbor registry for air-gapped environments. agctl CLI for management. | https://airgap-fqdn:8043 |
| Workflow Hub | Day-1 operation. TCA-native workflow execution engine. | TCA-M UI: Catalog → Workflows |
⚠ Port 443 = main UI/API. Port 9443 = appliance management (admin, certs, backup, password, reboot). Do not confuse.
8.2 Catalog [TCA]
| Catalog | Contents | Path |
|---|---|---|
| Network Function Catalog | VNFDs and CNFDs — each entry = one deployable NF type. | Catalog → Network Function |
| Network Service Catalog | NSDs — composite services of multiple NFs. | Catalog → Network Service |
| Workflow Catalog | Standalone + embedded LCM automation workflows. | Catalog → Workflows |
8.3 Packages & Descriptors [TCA]
| Term | Description | Standard |
|---|---|---|
| CSAR | Cloud Service Archive. ZIP: descriptor files + artifacts + scripts + images. | ETSI SOL004 |
| VNFD | VNF Descriptor. YAML: VDUs, Virtual Links, Connection Points, scaling, LCM. | ETSI SOL001 |
| CNFD | CNF Descriptor. YAML: Helm charts, infra requirements, workflows. | ETSI SOL001 |
| NSD | Network Service Descriptor. YAML: constituent NFs + virtual links + forwarding paths. | ETSI SOL001 |
| TOSCA | Underlying language for all descriptors. TOSCA YAML 1.2 or TOSCA NFV 1.0. | OASIS TOSCA |
Onboard method: Upload existing CSAR OR Design from scratch using Network Function Designer (visual TOSCA tool in TCA UI).
GitOps: push/import catalog drafts to/from Git for version-controlled descriptor lifecycle.
8.4 Workflows [TCA]
| Workflow Aspect | Details |
|---|---|
| Step types | TCA_SSH (remote command), TCA_SCP (file copy), TCA_EXEC (VMware Tools script on VM) |
| Contexts | NONE (standalone) | NF (auto-injects tca_vnf_id, tca_vnf_name, etc.) | NS (auto-injects tca_ns_id, etc.) |
| vRO integration | VMware Aria Automation Orchestrator 8.18.1. Register per VIM or globally in TCA-CP. |
| Retention | 14 days. Extendable to +13 days. Purges logs, attachments, step executions. |
| Limitations | Workflow rollbacks NOT supported. Design workflows to be idempotent. |
8.5 VIM Registration & Compute Profiles [TCA]
| VIM Type | Supported Versions | Key Config |
|---|---|---|
| vSphere | 7.0U3, 8.0.0b, 8.0u1/u2/u3 | Compute profile required: resource pool, datastore, folder. Configure NSX-T if network automation needed. |
| Cloud Director | 10.6, 10.6.1 | Org Admin credentials. RabbitMQ for event notifications. VCD Admin config via TCA-CP (9443), not TCA-M UI. |
| Kubernetes | 1.30–1.36 | Provide kubeconfig YAML. Set isolation mode (Permissive/Restricted). |
| TKG | 2.5.7 | Managed via TCA CaaS Infrastructure UI. |
| vRO | 8.18 (+patches) | Register per VIM or globally in TCA-CP for workflow execution. |
9. Deployment
9.1 Prerequisites [TCP + TCA]
| Prerequisite | Details |
|---|---|
| DNS | All FQDNs resolvable (forward + reverse) BEFORE deployment of any component. |
| NTP | NTP server configured on all ESXi hosts and appliances. Time sync is critical. |
| Physical switches | VLAN trunking + jumbo frames (MTU 9000) enabled on ALL server-facing ports. |
| BIOS | CPU virtualization ON. SR-IOV ON if required. Power Policy = High Performance. |
| vSAN storage | All vSAN hosts: RAID controller in pass-through mode. SSDs + HDDs present. |
| IP scheme | Plan non-overlapping VLANs + IP subnets per pod/rack before deployment. |
| DHCP | Required for K8s management VLAN. Configure DHCP + IP pool before deploying TKG. |
| Download | support.broadcom.com → My Downloads → VMware Telco Cloud Platform Advanced. |
9.2 High-Level Deployment Sequence
| Step | Component | Action |
|---|---|---|
| 1 | Physical | Cable switches, configure VLANs + jumbo frames, verify ECMP uplinks. |
| 2 | ESXi | Install on 128GB+ disk. Configure IP/FQDN/NTP/NICs. CPU virt ON in BIOS. |
| 3 | Management vCenter | Deploy VCSA. Create DC/cluster. vDS + vSAN + HA + DRS. Add MGMT hosts. |
| 4 | Workload vCenter | Deploy VCSA. Create Edge + Workload clusters. Configure vDS, vSAN, HA, DRS. |
| 5 | NSX | Deploy 3-node MGR cluster. Transport zones, profiles, TEP pools. Prepare ESXi + Edge transport nodes. |
| 6 | Cloud Director | Deploy cells + DB. Integrate with vCenter + NSX. Configure Avi LB. |
| 7 | Operations (Aria) | Deploy Aria vRO + Logs + Operations + Networks. |
| 8 | TCA | Deploy TCA-M + 3×TCA-CP OVAs. Activate. Configure. Deploy Airgap Server if airgap. |
| 9 | TKG | Via TCA CaaS: deploy management cluster → workload clusters. |
| 10 | Harbor | Via TCA: instantiate Harbor as CNF on TKG cluster. Register as Partner System. |
| 11 | Avi LB + AKO | Deploy Avi Controller. Configure. Install AKO on TKG clusters. |
| 12 | BCDR | Install vSphere Replication + Live Site Recovery on protected + recovery sites. |
| 13 | Post-deploy | Configure DRS Anti-Affinity rules. Delete snapshots. Run validation checklist. |
9.3 TCA OVA Key Deployment Properties
| Property | Description | Required |
|---|---|---|
| guestinfo.hostname | Appliance FQDN (must be DNS-resolvable) | Yes |
| guestinfo.ip_family | IPv4 / IPv6 / Dual Stack | Yes |
| guestinfo.dhcp | True/False — use False (static IP) in production | No |
| guestinfo.addressv4 | Static IPv4 address | If not DHCP |
| guestinfo.ntp | NTP server FQDN or IP | Yes |
| guestinfo.domain | DNS domain name | Yes |
| guestinfo.cert_type | Customer-Provided (default) or Generate-New | No |
| guestinfo.enable_proxy | True/False — for internet sync via proxy | No |
# OVA deployment example (ovftool 4.4.0+ required): ovftool --acceptAllEulas --allowExtraConfig \ --datastore=<DS> --name=<VM_NAME> --network=<NETWORK> \ --prop:guestinfo.hostname=<FQDN> \ --prop:guestinfo.addressv4=<IP> \ --prop:guestinfo.netmaskv4=<MASK> \ --prop:guestinfo.gatewayv4=<GW> \ --prop:guestinfo.dnsv4=<DNS> \ --prop:guestinfo.ntp=<NTP> \ <OVA_PATH> vi://<USER>:<PASS>@<VCENTER>/<DC>/host/<CLUSTER>
9.4 TCA Backup & Restore [TCA]
| Topic | Details |
|---|---|
| Backup via | 9443 → Administration → Troubleshooting → Backup & Restore |
| Schedule | Daily recommended. Hourly/Weekly also available. |
| Max restore age | 2 days. Restoring from backups older than 2 days NOT supported. |
| Destination | SFTP (recommended) or FTP. SSH key must be ssh-rsa format. |
| Key conversion | ssh-keygen -i -m PKCS8 -f id_rsa_backup_restore.pub |
| Bundle naming | TCA-BACKUP-BUNDLE-MANAGER-<FQDN>-<timestamp>.tar.gz. If FQDN>128 chars → IP used. |
| Bundle includes | Inventory data, configs, certificates, System UUID. |
| EKS note | TCA-M backup includes TCA-M + TCA-CP data if co-deployed on EKS. |
10. Upgrade & Lifecycle
10.1 Supported Paths
| From | To | Mandatory Upgrades |
|---|---|---|
| TCP 5.1 / 5.1.1 | TCP 5.2 | TCA + Airgap + Harbor + TKG + Avi LB MANDATORY. Others: bug-fix driven. |
| TCA 3.4 / 3.4.0.1 | TCA 3.5 | TCA-M + all TCA-CP instances + Airgap Server. |
| TKG 2.5.x | TKG 2.5.7 | Management cluster first → then workload clusters. |
10.2 Component Version Matrix [TCP 5.0 → 5.2]
| Component | TCP 5.0 | TCP 5.0.1 | TCP 5.1/5.1.1 | TCP 5.2 |
|---|---|---|---|---|
| ESXi / vCenter / vSAN | 8.0 U3 | 8.0 U3 | 8.0 U3 | 8.0 U3 |
| Cloud Director | 10.6 | 10.6.1 | 10.6.1 | 10.6.1 |
| NSX | 4.2 | 4.2.1.3 | 4.2.2.1 | 4.2.4 |
| TCA + Airgap | 3.2 | 3.3 / 3.3.0.1 | 3.4 / 3.4.0.1 | 3.5 |
| Harbor for CNFs | 2.10.2 | 2.10.2 | 2.13.1 | 2.15.1 |
| TKG | 2.5.2 | 2.5.2 | 2.5.4 | 2.5.7 |
| Avi LB | 30.2.1 | 30.2.2 | 30.2.3 | 30.2.7 |
| AKO | 1.12.2 | 1.12.3 | 1.13.3 | 1.13.3 / 2.2.1 |
| Aria Operations | 8.18 | 8.18.3 | 8.18.3 | 8.18.7 |
| Aria Logs | 8.18 | 8.18.3 | 8.18.3 | 8.18.7 |
| Aria Networks | 6.13 | 6.13 | 6.13 | 6.13 |
| vRO | 8.18 | 8.18.1 | 8.18.1 | 8.18.1 |
| vSphere Replication | 9.0.2 | 9.0.2 | 9.0.2 | 9.0.2 |
| Live Site Recovery | 9.0.2 | 9.0.2 | 9.0.2 | 9.0.2 |
10.3 Upgrade Sequence — CNF Workloads
① Cloud Director → 10.6.1
② TCA (TCA-M + TCA-CPs) → 3.5 [Airgap: 3.4 → 3.4.0.1 → 3.5]
③ Harbor → 2.15.1 [Migrate ChartMuseum → OCI FIRST!]
④ Avi Load Balancer → 30.2.7
⑤ AKO → 2.2.1 [Verify AKO + K8s compatibility. Upgrade via Helm if Helm-installed.]
⑥ TKG → 2.5.7 [Management cluster first → each workload cluster]
└── Update K8s version in TCA cluster templates post-upgrade
⑦ NSX → 4.2.4 [Edges → ESXi Host VIBs → NSX Management Plane]
└── SR-IOV hosts: drain pods → power OFF Worker Node VMs BEFORE ESXi upgrade
⑧ vCenter → 8.0 U3
⑨ ESXi + vSAN → 8.0 U3 [ALL hosts reboot — plan maintenance window]
⑩ Aria Operations → 8.18.7 | Aria Logs → 8.18.7
⚠ ALWAYS snapshot + backup ALL components before starting upgrade. NSX: Edges upgraded before ESXi host VIBs.
⚠ Aria Automation Orchestrator 8.x: memory snapshots NOT supported. Deactivate 'Snapshot VM memory' before snapshot.
11. Security
11.1 Authentication [TCP + TCA]
| Component | Auth Method | Notes |
|---|---|---|
| TCA | vCenter SSO or Active Directory (LDAP) | IDP config at 9443. Multiple IDPs per tenant. Changing IDP invalidates ALL existing permissions. |
| NSX | Local admin + vCenter SSO | NSX Manager UI → System → Authentication |
| vCenter | vCenter SSO — includes SAML federation | Integrated with all vSphere components |
| Cloud Director | Local users + LDAP/SAML federation | Per-org configuration |
| Aria Operations | vCenter SSO integration | Unified auth with vSphere stack |
| Harbor | Local + OIDC / LDAP federation | Configure in Harbor Admin UI |
11.2 TCA RBAC [TCA]
| Role | Capabilities |
|---|---|
| System Administrator | Full access across all tenants. |
| Role Administrator | Manage roles, permissions, users. |
| Virtual Infrastructure Admin | Add/edit/delete VIMs, compute profiles. |
| Tenant Administrator | Full access within assigned tenant scope. |
| Tag Admin | Create, edit, delete tags (included in Sys Admin + Role Admin). |
Multi-tenancy: multiple isolated tenants share one TCA installation. Impersonate tenant = stays logged in. Switch tenant = forces re-login.
Tags: key-value labels for resource filtering and policy assignment. SSD tag: only VIMs with matching tag offered for deployment.
11.3 Certificates [TCP + TCA]
| Topic | Details |
|---|---|
| Default | Self-signed on all appliances. Replace with CA-signed in production. |
| Format | PEM. Full chain required (concatenate all certs). Server cert SAN must include FQDN. |
| TCA cert update | 9443 → Administration → Certificate → Server Certificate → Apply. Services auto-restart after update. |
| Import remote CA | 9443 → Administration → Certificate → Trusted CA Certificate → Import → URL (for TCA-M ↔︎ TCA-CP trust) |
| Harbor cert change | Update TLS secret in K8s → reconfigure Harbor → update ca.crt in TCA: Infrastructure → Partner Systems. |
| NSX cert | NSX Manager UI → System → Certificates. |
11.4 TCA STIG & Password Policy [TCA]
Photon OS 5: STIG-hardened. 3 failed logins in 15 min = account lock. 90-day max password lifetime.
Password requirements: 8–32 chars, min 1 number, 1 lowercase, 1 uppercase, 1 special character.
FIPS OpenSSL required (PHTN-50-000013). auditd logging mandatory (PHTN-50-000014/016). Telnet must NOT be installed.
Session timeout: default 60 min. Configurable 10 min – 24 hours. Applies to UI + API.
11.5 NSX DFW — Data Plane Performance Note [TCP]
DFW adds overhead on data plane vNICs. For maximum data plane performance: add data plane logical ports/switches to DFW Exclusion List (do NOT disable DFW globally).
Gateway Firewall: stateful N-S firewall on T0/T1. Also impacts performance if throughput is high.
For maximum VNF performance: deactivate FWGW and DFW in NSX Security settings for that segment.
12. Performance & Data Plane Tuning
12.1 Tuning Hierarchy [TCP + TCA]
Layer What to Tune Owner
─────────────────────────────────────────────────────────────────
Physical MTU 9000, flow control OFF, ECMP Network team
ESXi Host Power=High Performance, NUMA NIC layout TCP/vSphere
vDS / EDP Ring buffer, EDP-Dedicated mode, NIOC TCP/NSX
SR-IOV / DPDK VF count, vfio-pci, IOMMU, PMD driver TCP + TCA (node custom)
K8s Worker Node hugepages, isolcpus, CPU Manager=Static TCA (node customization)
K8s Pod Guaranteed Pod, CPU/mem request=limit CNF vendor + TCA
NSX Edge Ring size, flow cache, RSS, flow control TCP/NSX
12.2 Hugepages [TCA node customization]
| Hugepage Size | Config | Use When |
|---|---|---|
| 1 GB | default_hugepagesz=1G hugepagesz=1G hugepages=<n> | Preferred for high-throughput DPDK CNFs (UPF, DU) |
| 2 MB | default_hugepagesz=2M hugepagesz=2M hugepages=<n> | When 1G pages not available or smaller DPDK footprint |
TCA automatically enables ESXi 1GB large pages on the host when 1GB hugepages are configured in node customization.
Hugepage count must cover CNF memory footprint + reserve enough for OS + K8s overhead.
12.3 VM-Level Network Parameters [TCP — VNF VMs]
| VMX Parameter | Default | Purpose |
|---|---|---|
| ethernetX.maxTxQueues | 4 | Max TX queues. Increase for multi-core TX. |
| ethernetX.maxRxQueues | 4 | Max RX queues. Increase for multi-core RX. |
| ethernetx.ctxPerDev | 1 | TX threads per vNIC. Increase for multi-queue throughput. |
| ethernetx.pnicFeatures | 2 | Enable RSS for RX traffic distribution across CPUs. |
| ethernetx.linkspeed | 10000 | Link speed advertised to guest OS (Mbps). |
12.4 Data Plane Checklist [TCP + TCA]
| Item | Action | Owner |
|---|---|---|
| Power Policy | Set High Performance on all data-plane ESXi hosts. | TCP/vSphere |
| NUMA alignment | NIC in PCIe slot aligned to NUMA node. One NIC per NUMA minimum. | TCP/Physical |
| EDP mode | Configure EDP-Dedicated on workload vDS via NSX Transport Node Profile. | TCP/NSX |
| Latency Sensitivity | Set High in TCA Infrastructure Requirements for data plane NFs. | TCA |
| isolcpus | Add to KERNEL ARGUMENTS in TCA Infrastructure Requirements. | TCA |
| Hugepages | Add 1G hugepages to KERNEL ARGUMENTS in TCA. | TCA |
| CPU Manager Static | Set on Node Pool in TCA. Non-zero kube-reserved + system-reserved. | TCA |
| Guaranteed Pod | CNF data plane container: request = limit for CPU + memory. | CNF vendor |
| DFW exclusion | Add data plane ports/segments to NSX DFW Exclusion List. | TCP/NSX |
| Ring buffer (Edge) | Set rx/tx to 1024-4096 on Bare Metal Edge. | TCP/NSX |
| Flow control | Disable on ToR + Bare Metal Edge. | Network team |
| TX queue length | Set /Net/MaxNetifTxQueueLen to 10000 on ESXi. | TCP/ESXi |
13. Troubleshooting
13.1 Tools Quick Reference
| Tool | Layer | Purpose | Access |
|---|---|---|---|
| esxtop | ESXi | Real-time CPU/mem/net/storage per VM | SSH → esxtop |
| net-stats | ESXi | NIC statistics per VM/host | SSH → net-stats -l |
| nsxdp-cli | ESXi EDP | EDP switch stats, ring size, queue depth | SSH → nsxdp-cli |
| esxcli | ESXi | NIC driver, module params, network config | SSH → esxcli |
| Edge-node CLI | NSX Edge | Ring, flow cache, BGP, dataplane config | SSH → Edge-node> |
| kubectl | K8s | Pod status, logs, events, node status | kubectl get/describe/logs/events |
| TCA Tasks page | TCA | LCM operation history, Helm/K8s events | TCA UI → Inventory → Tasks |
| Aria Logs | All | Centralized log search + dashboards | Aria Operations for Logs UI |
| Aria Operations | All | VM/host/cluster/NSX/K8s metrics | Aria Operations UI |
| Aria Networks | NSX | Network flow telemetry, path tracing | Aria Networks UI |
| NSX Support Bundle | NSX | Full NSX logs collection | NSX Mgr UI → System → Support Bundle |
| TCA Support Bundle | TCA | TCA appliance logs + config | 9443 → Admin → Troubleshooting → Collect |
13.2 Common Issues — TCP (Infrastructure)
| Symptom | Check | Resolution |
|---|---|---|
| NSX transport node not connected | NSX Mgr → Transport Nodes → status | Re-apply transport node profile. Check TEP IP pool + VLAN. |
| EDP overlay traffic loss | ESXi → nsxdp-cli → ring/queue stats | Increase pNIC ring size. Check EDP core assignment. Verify NIC NUMA alignment. |
| NSX Edge BGP not peering | Edge-node> get bgp neighbor | Check physical router ASN, IP, ACL. Verify T0 uplink subnet. |
| vSAN unhealthy | vCenter → Cluster → Monitor → vSAN → Health | Check disk health, network partition, host isolation. |
| vMotion failing | Check VLAN 200, VMkernel MTU, vMotion stack | Verify vMotion VMkernel both hosts. MTU 9000 end-to-end. |
| High data-plane latency | esxtop → CPU locality; nsxdp-cli → drops | Enable Latency Sensitivity=High. Check NUMA alignment. Disable DFW on data path. |
13.3 Common Issues — TCA (Orchestration)
| Symptom | Check | Resolution |
|---|---|---|
| NF stuck in Processing | TCA Tasks → LCM event log | Check TCA-CP connectivity to VIM. Verify credentials, network, cert trust. |
| Helm timeout | Tasks → Helm events. K8s cluster health. | Increase timeout in Advanced Settings. Check cluster node readiness. |
| Image pull error | kubectl describe pod → Events | Verify Harbor reachable from K8s nodes. Check Harbor ca.crt in TCA Partner Systems. |
| Node customization fails | TCA Tasks → node customization stage | Check custom package availability in Airgap. Check K8s node logs. |
| CNF alarm: ChartMuseum | Alert in TCA Inventory | Migrate CNF to OCI chart repo. Update descriptor URI to oci://. |
| CNF Rollback not available | Expected after upgrade op | Retry/Rollback/Reset NOT available for CNF upgrades. Use Auto Rollback setting. |
| Workflow step fails | Tasks → workflow step execution detail | Check TCA_SSH/SCP/EXEC inputs (IP, creds, VM Tools status). |
| SFTP backup fails | Check SSH key format | Convert key: ssh-keygen -i -m PKCS8 -f id_rsa_backup_restore.pub |
| Cannot login to TCA UI | IDP config. User group membership. | Verify AD/vCenter URL + credentials. Check user group → role mapping. |
| TCA-M cannot reach TCA-CP | Certificate trust. Network. | Import TCA-CP cert into TCA-M Trusted CA: 9443 → Admin → Certificate → Import URL. |
13.4 CNF / K8s Performance Issues [TCP + TCA]
| Symptom | Check | Resolution |
|---|---|---|
| DPDK app won't start | hugepages in /proc/meminfo. vfio-pci loaded. | Verify hugepages configured in kernel args. Check DPDK module + vfio-pci loaded. |
| Low CNF throughput | esxtop CPU steal. EDP ring drops. | Verify Latency Sensitivity=High. NUMA alignment. EDP ring size. Disable flow control. |
| RSS not distributing | esxcli system module parameters for nmlx5_core | Adjust RSS=16, DRSS=8, GEN_RSS=4. Reboot host after parameter change. |
| Pod CPU not pinned | kubectl describe pod → QoS class | Must be Guaranteed QoS (request=limit). Node pool CPU Manager must be Static. |
| SR-IOV VF not attached | SR-IOV device plugin pod in kube-system | Verify SR-IOV BIOS + NIC enabled. Check VF count. Check device plugin logs. |
13.5 Log Collection Commands
# K8s pod logs kubectl -n <namespace> logs <pod-name> -c <container> kubectl get events -n <namespace> --sort-by=.lastTimestamp # TCA pod logs (TCA-M namespace) kubectl -n tca-mgr logs deployment/tca-app -c tca kubectl -n tca-mgr logs deployment/tca-api -c tca # Change TCA log level to DEBUG (reverts on restart) kubectl -n tca-mgr exec -it deployment/tca-app -c tca -- \ sed -i 's/root level="INFO"/root level="DEBUG"/g' /opt/vmware/config/app-logback.xml # Verify TCA Airgap reachability curl https://<airgap-fqdn> -v # Expected: 'SSL certificate verify ok' + 'HTTP/1.1 200 OK' # NSX Edge tech support bundle Edge-node> collect-tech-support
14. Known Issues & Limitations
| Component | Limitation | Impact | Workaround |
|---|---|---|---|
| CNF Upgrade | Retry/Rollback/Reset State NOT available after upgrade failure. | Manual cleanup needed if upgrade fails. | Enable Auto Rollback before upgrade. |
| Harbor ChartMuseum | Removed in Harbor 2.15.1. CNF LCM fails on Chartmuseum repos. | All CNFs using ChartMuseum break after Harbor upgrade. | Migrate to OCI repos BEFORE upgrading Harbor. |
| SR-IOV + vMotion | vMotion NOT supported for SR-IOV VMs. | Cannot live-migrate SR-IOV worker node VMs. | Power-off planned migrations. Drain pods first. |
| SR-IOV + ESXi upgrade | SR-IOV VMs must be powered OFF before ESXi upgrade. | Upgrade breaks running SR-IOV VMs. | Drain pods → power off VMs → upgrade ESXi. |
| Primary CNI | Cannot change CNI after cluster creation. | Wrong CNI choice is permanent. | Consult CNF vendor before cluster creation. |
| eBGP in Calico | eBGP not supported in TCP 5.2. | Cannot use Calico for BGP-based routing. | Use Antrea or handle routing at NSX layer. |
| Latency Sensitivity=High | 100% CPU + memory reservation auto-applied. | Reduces host consolidation ratio. | Pre-size hosts for full reservations. |
| vSAN RWX PVs | vSAN File Service RWX PV count limited. | Cannot create unlimited RWX PVs. | Use external NFS for high RWX PV count. |
| K8s 1.32.5 | Cannot create new clusters OR upgrade add-ons. | Blocks cluster and add-on lifecycle. | Upgrade to 1.33 or 1.36 LTS. |
| TCA HA mode | Reboot + Change Password not available via UI. | Limit on self-service operations. | Use OS-level operations or redeploy. |
| Backup restore age | Backups >2 days old not safely restorable. | Data loss risk if using old backup. | Maintain daily backup schedule. |
| Aria Orch memory snapshot | Memory snapshots not supported (vRO 8.x). | Snapshot will fail if memory option enabled. | Deactivate VM memory option before snapshot. |
| Legacy SD/USB OSData | Deprecated in TCP 5.2. | SD/USB boot media no longer supported. | Use 128GB+ local disk for all ESXi installs. |
| Flow cache disable | Disabling triggers alarm (NSX 4.1.1+). | Operational alarm generated. | Increase cache size instead of disabling. |
| Bare Metal Edge HT | HT enabled causes fast-path threads to share core. | Performance degradation on data plane. | HT disabled by default via GRUB. Do not enable. |
15. Key Commands Quick Reference
15.1 TCA Operations [TCA]
# TCA patch apply curl -O <patch-tar-url> tar -xvf patch-changes.tar cd patch-changes && ./patch-tca.sh # Airgap appliance config agctl deploy agctl deploy status # Verify Airgap registry curl https://<TCA-Airgap-FQDN> -v # → SSL verify ok + HTTP/1.1 200 OK # SFTP key conversion (for TCA backup) ssh-keygen -i -m PKCS8 -f id_rsa_backup_restore.pub # Enable CNF granular updates curl -k --request PUT https://<tca-ip>/admin/hybridity/api/global/settings/Cnf/disableGranularUpdates \ --header 'content-type: application/json' \ --header 'x-hm-authorization: <token>' \ --data '{"value":"false"}'
15.2 K8s / TKG Operations [TCP + TCA]
# Pod and node status kubectl get pods -n <namespace> -o wide kubectl describe pod <pod-name> -n <namespace> kubectl get nodes -o wide kubectl describe node <node-name> # TCA service pods kubectl get pods -n tca-mgr kubectl get pods -n tca-services # Download kubeconfig (via TCA UI) # TCA UI → CaaS Infrastructure → <cluster> → Download kubeconfig # Check K8s CPU Manager policy on node kubectl get node <node-name> -o jsonpath='{.status.capacity}' # Velero backup (workload cluster) velero backup create <backup-name> --include-namespaces <ns>
15.3 NSX / EDP / ESXi Tuning [TCP]
# EDP switch + uplink stats on ESXi nsxdp-cli ens switch list nsxdp-cli ens uplink list # EDP ring size (persist with net-dvs) nsxdp-cli ens uplink ring set -t 4096 -r 4096 -n vmnic10 net-dvs --persist # Check NIC load/stats net-stats -l | grep vmnic esxcli network nic get -n vmnic10 # Module params (Mellanox — reboot required) esxcli system module parameters set -m nmlx5_core \ -p 'GEN_RSS=4 RSS=16 DRSS=8 max_queues=32' # TX queue + Rx/Tx CPU separation esxcli system settings advanced set -i 10000 -o /Net/MaxNetifTxQueueLen esxcli system settings advanced set -o /Net/NetNetqRxQueueFeatPairEnable -i 0 # DPDK / vfio modprobe vfio enable_unsafe_noiommu_mode=1 echo 1 > /sys/module/vfio/parameters/enable_unsafe_noiommu_mode
15.4 NSX Edge [TCP]
# Ring size + flow cache Edge-node> get dataplane | find ring Edge-node> set dataplane ring-size rx 1024 Edge-node> set dataplane ring-size tx 1024 Edge-node> get dataplane flow-cache config Edge-node> set dataplane flow-cache-size 524288 Edge-node> restart service dataplane # BGP + routing Edge-node> get bgp neighbor Edge-node> get route Edge-node> get interfaces
16. Key Configuration Parameters
| Parameter | Component | Value / Format | Why Important |
|---|---|---|---|
| guestinfo.hostname | TCA OVA (all appliances) | FQDN (DNS-resolvable) | Must resolve before deployment |
| guestinfo.ip_family | TCA OVA | IPv4 / IPv6 / Dual Stack | Determines addressing mode |
| guestinfo.dhcp | TCA OVA | False (production) | Static IP required in production |
| guestinfo.ntp | TCA OVA | FQDN or IP | Time sync critical for all components |
| guestinfo.cert_type | TCA OVA | Customer-Provided | Use CA-signed cert in production |
| Session Duration | TCA-M | 10 min – 24 hours (default 60 min) | Applies to UI + API sessions |
| Default Isolation Mode | K8s VIM | Permissive / Restricted | Controls CNF namespace isolation |
| Helm Timeout | TCA-CP | Minutes (default 20) | Increase for large/slow CNFs |
| Backup max useful age | TCA-M backup | ≤ 2 days | Older backups may not restore safely |
| Workflow retention | TCA-M | 14 days (max +13) | Purges logs + step data after period |
| MTU (vDS) | vSphere vDS | 9000 bytes | Required for vSAN, vMotion, data plane |
| MTU (Guest OS) | VM / K8s pod | 8900 bytes | Leave 100B for encapsulation overhead |
| TEP VLAN (Standard) | NSX | 70 (reference) | Overlay tunnel endpoints — standard |
| TEP VLAN (Enhanced) | NSX EDP | 80 (reference) | Overlay tunnel endpoints — EDP |
| isolcpus | TCA kernel args | e.g., isolcpus=4-23 | Isolates CPUs from Linux scheduler |
| hugepages (1G) | TCA kernel args | default_hugepagesz=1G hugepagesz=1G hugepages=<n> | DPDK memory requirement |
| intel_iommu / iommu | TCA kernel args | intel_iommu=on iommu=pt | Required for vfio-pci DPDK binding |
| isNumaConfigNeeded | TCA node_components | true | NUMA-aware Worker Node pinning |
| CPU Manager Policy | TKG Node Pool | static | K8s container CPU pinning |
| Ring buffer size (Edge) | NSX Bare Metal Edge | 512/1024/2048/4096 | Larger = fewer drops, more latency |
| Flow cache size (Edge) | NSX Bare Metal Edge | 524288 (example) | 115 MB/core default; increase if high collision rate |
| ethernetx.ctxPerDev | VM VMX | 1 (default), increase for multi-queue | TX threads per vNIC |
17. Version & Compatibility Matrix — TCP 5.2 + TCA 3.5
| Product | TCP 5.2 / TCA 3.5 Version | Owner | Notes |
|---|---|---|---|
| VMware ESXi | 8.0 U3 (+patches) | TCP | All management/workload/edge hosts |
| VMware vCenter Server | 8.0 U3 | TCP | Two instances: MGMT + COMP |
| VMware vSAN | 8.0 U3 (ESA/OSA) | TCP | Pass-through RAID required |
| VMware NSX | 4.2.4 (+4.2.x patches) | TCP | Two 3-node clusters: MGMT + Workload |
| VMware Cloud Director | 10.6.1 (+patches) | TCP | VIM for VNF tenancy |
| Tanzu Kubernetes Grid | 2.5.7 | TCP | CaaS platform |
| Telco Cloud Automation | 3.5 | TCA | TCA-M + 3× TCA-CP |
| TCA Airgap Server | 3.5 | TCA | Air-gapped registry |
| Harbor for CNFs | 2.15.1 | TCP/TCA | OCI registry — OCI only (no Chartmuseum) |
| Helm | 3.13.3+ | TCA | CNF chart management |
| Avi Load Balancer | 30.2.7 | TCP | L4/L7 LB |
| AKO | 1.13.3 / 2.2.1 | TCP | K8s-to-Avi integration |
| VMware Aria Operations | 8.18.7 (+patches) | TCP | Monitoring + alerting |
| VMware Aria Logs | 8.18.7 (+patches) | TCP | Log management |
| VMware Aria Networks | 6.13 (+patches) | TCP | Network flow telemetry |
| VMware Aria Orchestrator | 8.18.1 (+patches) | TCP/TCA | Workflow execution engine |
| vSphere Replication | 9.0.2 (+patches) | TCP | VM replication (BCDR) |
| Live Site Recovery | 9.0.2 (+patches) | TCP | BCDR orchestration (formerly SRM) |
| Photon OS | 5 (default), 3 (legacy) | TCA | TCA appliance + TKG node OS |
| ovftool | 4.4.0+ | TCA | OVA CLI deployment |
ℹ K8s new cluster support: 1.30.14, 1.31.14, 1.32.10, 1.33.6, 1.34.8, 1.35.5, 1.36.1. Manage-only (no new clusters): 1.30.2*, 1.30.13*, 1.31.9**, 1.32.5**, 1.33.1*. | K8s 1.32.5 (**): cannot create new clusters AND cannot upgrade add-ons.
18. Quick Technical Q&A
Q: What is TCP 5.2?
A: Broadcom's cloud-native telco platform. Combines vSphere, NSX, vSAN, TKG, Cloud Director, Harbor, Avi LB, and Aria into one integrated stack for deploying 5G NFs across Central DC, Regional DC, Far Edge, and Cell Site topologies.
Q: What is TCA 3.5?
A: Broadcom's NFV-MANO orchestration product (NFVO + G-VNFM). Sits above TCP infrastructure. Automates deployment, scaling, healing, upgrade, and lifecycle of VNFs (on vSphere/VCD) and CNFs (on Kubernetes/TKG) using ETSI SOL001/SOL004 standards.
Q: How do TCP and TCA work together?
A: TCP provides the infrastructure stack (compute, network, storage, K8s, registry). TCA uses that infrastructure via VIM APIs to orchestrate NF deployments. TCA-CP talks to vCenter/Cloud Director/K8s to execute actual workloads.
Q: What are the three TCA-CP instances for?
A: Each manages a different VIM scope: CP-MGMT-VC (management vCenter), CP-COMP-VC (workload vCenter + NSX + vRO), CP-EXT-K8S (external K8s, optional). One TCA-M orchestrates all three.
Q: Why is NUMA alignment critical for 5G?
A: Multi-socket servers have per-socket local memory. Cross-NUMA access adds latency. 5G data plane (UPF, DU) needs all resources — vCPU, memory, and NIC — on the same NUMA node to achieve required throughput with minimal latency.
Q: EDP vs SR-IOV — when to use which?
A: EDP (DPDK-enabled vDS): preferred. Keeps hypervisor HA/DRS/vMotion. Needs tuning. SR-IOV: maximum deterministic throughput, bypasses VMkernel. Loses HA/vMotion. Use only when EDP cannot meet requirements.
Q: What is DPDK and how is it configured?
A: Userspace poll-mode packet processing bypassing Linux OS stack. TCA reads CSAR and automatically installs DPDK kernel module, vfio-pci, hugepages, and kernel args (intel_iommu=on iommu=pt) on Worker Nodes as part of node customization.
Q: What is the CNF LCM stage sequence?
A: Node Customization → Grant → Pre-Workflow → Helm Install/Upgrade → Post-Workflow. Each stage is optional except Helm. Events from stages captured in TCA Tasks page.
Q: What happens when a CNF upgrade fails?
A: If Auto Rollback was enabled → Helm rolls back to previous chart version. If not → CNF in failed state. Retry/Rollback/Reset State menu items are NOT available for CNF upgrade failures.
Q: Why must Harbor ChartMuseum be migrated before upgrade?
A: Harbor 2.15.1 removed ChartMuseum. Any CNF descriptor still pointing to ChartMuseum (https:// URI) will fail all subsequent LCM operations. Migrate to OCI (oci:// URI) before upgrading Harbor from 2.13.1.
Q: What is the NSX DFW impact on data plane?
A: DFW adds per-packet firewall processing overhead on each VM's vNIC. For data-plane VMs/CNFs, add their logical ports or segments to the DFW Exclusion List. Do NOT disable DFW globally — use exclusions.
Q: How does hugepage configuration flow through TCP + TCA?
A: Engineer defines hugepages in CNF CSAR (kernel args). TCA reads CSAR during onboarding. TCA-CP applies kernel args to Worker Node VMs during Node Customization stage. TCP/ESXi then allocates 1GB large pages at the host level automatically.
Q: What is the upgrade sequence for CNF workloads?
A: Cloud Director → TCA → Harbor → Avi LB → AKO → TKG → NSX → vCenter → ESXi/vSAN → Aria. Always snapshot/backup all components before starting. ChartMuseum migration BEFORE Harbor upgrade.
Q: What must be done for SR-IOV hosts before ESXi upgrade?
A: Drain K8s pods from worker node VMs → manually power OFF the SR-IOV worker node VMs → proceed with ESXi upgrade in NSX Upgrade Coordinator. SR-IOV VMs cannot be vMotion-migrated.
Q: What does Multus CNI do?
A: Enables multiple network interfaces per K8s pod. Primary interface from Antrea/Calico (cluster networking). Secondary interface for high-throughput data plane (EDP VMXNET3 or SR-IOV VF). Defined via Network Attachment Definition (NAD) CR.
Q: What is vSAN vSphere CSI RWX storage?
A: ReadWriteMany persistent volume using vSAN File Service. Limited PV count (check Configuration Maximums). For high RWX PV count needs, use external NFS instead.
Q: How does Avi LB integrate with K8s?
A: AKO (Avi Kubernetes Operator) runs as pods in each TKG cluster. Watches K8s for LoadBalancer service objects. Creates Avi Virtual Services + Pools with K8s pods as members. CNFs request VIP via Annotations (single) or Labels (multi-service).
Q: What is the default NSX Edge ring buffer size, and when should it be changed?
A: Default Rx ring: 1024 (varies by NIC). Valid values: 512, 1024, 2048, 4096. Increase if heavy traffic causes packet drops. Larger buffer = fewer drops but higher tail latency. Adjust per workload profile.
Q: What is a Guaranteed Pod in Kubernetes?
A: A pod where every container has CPU request = CPU limit AND memory request = memory limit. Required for K8s CPU Manager Static policy to pin container CPUs. Required for data plane CNF CPU isolation.
Q: What is the TCA session timeout and where is it configured?
A: Default: 60 minutes. Configurable: 10 min – 24 hours. Applies to both UI and API sessions. Configure via TCA Session Management settings.
19. One-Page Fast Reference — TCP 5.2 + TCA 3.5
Platform Stack
Physical (Servers + Leaf/Spine L3 + vSAN disks)
└─ ESXi 8.0U3 → vCenter 8.0U3 → vSAN ESA → NSX 4.2.4 → Avi LB 30.2.7
└─ TKG 2.5.7 (K8s CaaS) ← TCA 3.5 provisions/manages
└─ Harbor 2.15.1 (OCI: Helm charts + container images)
└─ Cloud Director 10.6.1 (VNF tenancy + VIM)
└─ Aria Operations 8.18.7 | Aria Logs 8.18.7 | Aria Networks 6.13
└─ vSphere Replication 9.0.2 + Live Site Recovery 9.0.2 (BCDR)
─────────────────────────────────────────────────────────────────────
TCA 3.5: TCA-M (1) + TCA-CP-MGMT-VC + TCA-CP-COMP-VC + TCA-CP-EXT-K8S
→ Catalog (CSAR/VNFD/CNFD/NSD) → Instantiate → K8s Node Customization
→ Grant → Pre-WF → Helm Install (Harbor) → Post-WF → CNF Running
Critical Rules — Never Forget
| # | Rule | Impact if Missed |
|---|---|---|
| 1 | Migrate ChartMuseum → OCI BEFORE upgrading Harbor to 2.15.1. | All CNF LCM operations fail. |
| 2 | Drain pods + power OFF SR-IOV Worker Node VMs BEFORE ESXi upgrade. | VMs corrupted. Upgrade fails. |
| 3 | Snapshot + backup ALL components BEFORE any upgrade step. | Data loss. No recovery path. |
| 4 | Latency Sensitivity=High → 100% CPU+memory reservation auto-applied. Size hosts accordingly. | Host overcommit. NF eviction. |
| 5 | K8s CNI cannot be changed after cluster creation. | Wrong CNI choice is permanent. Cluster rebuild needed. |
| 6 | DFW adds overhead on data-plane vNICs. Add to DFW Exclusion List — do not disable globally. | Security gap if global disable. Performance issue if not excluded. |
| 7 | TCA backup max restore age = 2 days. Maintain daily backups. | Backup unusable. Data loss on restore. |
| 8 | Retry/Rollback/Reset State NOT available for CNF upgrade failures. | Manual remediation required. |
| 9 | Aria Orchestrator: NO memory snapshots (8.x). Deactivate before snapshot. | Snapshot fails with memory option. |
| 10 | TCA-CP VCD admin config must be done via TCA-CP appliance (9443), not TCA-M UI. | Config not applied. VCD integration broken. |
Ports Quick Reference
| Port | Protocol | Purpose | Component |
|---|---|---|---|
| 443 | HTTPS | Main UI + REST API | TCA-M, TCA-CP, NSX, vCenter, Cloud Director, Harbor |
| 9443 | HTTPS | Appliance Management (admin, cert, backup, password, reboot) | TCA-M, TCA-CP, Airgap |
| 8043 | HTTPS | Harbor OCI registry (Airgap) | TCA Airgap Server |
| 9543 | HTTPS | Aria Operations for Logs ingestion | TCA → Aria Logs |
| 22 | SSH | Appliance SSH + ESXi SSH + Edge SSH | All appliances |
| 5671/5672 | AMQP | RabbitMQ event notifications | Cloud Director / VIO → TCA |