Sendense Documentation

Sendense Controllers

Per-VM DR target appliances used by controller-backed replication patterns.

Documents Home

Reference

Sendense Controllers

Per-VM DR target appliances used by controller-backed replication patterns.

ReadyCurrentcontrollersreplicationfailover

Definition

Sendense Controllers are target-side per-VM destination appliances used by controller-backed replication workflows.

Customers do not pre-provision controller VMs. The destination system must have the required controller template available, and Sendense provisions controller VMs on demand as protected VMs are added to replication patterns.

What Controllers Do

A controller VM is created from the controller template in the destination system. It has its own management operating system disk and carries the attached replica data disks for its protected workload.

  • Prepare and maintain the replication target for one protected VM.
  • Offload target-side preparation and conversion work for that VM.
  • Handle target-side disks for the replicated workload.
  • Provide recovery readiness and validation signals.
  • Support test failover, planned failover, live failover, commit, rollback, and guest adaptation where applicable.
  • Report controller health, network reachability, version, and disk health back to the Sendense control plane.

Scaling Model

Sendense uses one controller VM per protected VM. This offloads target-side preparation and conversion work to the controller, allowing replication and failover work to scale horizontally.

One controller per protected VM

The target SNA is the shared replication ingress for the recovery site. Each protected VM has its own Sendense Controller holding its replica disks, so target-side work scales with the workload count.

One controller per protected VMRECOVERY SITENODE APPLIANCETarget SNAReplication ingressPER-VM TARGETSendense ControllerReplica disks for VM APER-VM TARGETSendense ControllerReplica disks for VM BPER-VM TARGETSendense ControllerReplica disks for VM C
Replication data (inside the recovery site)

How Replication Data Reaches A Controller

Replication data reaches a controller through the SNA at the recovery site. On every replication route, the recovery-site SNA receives the replication stream and passes it to the controller for that VM, and that controller traffic stays inside the recovery site.

Controllers also report health and readiness back to the Sendense control plane. In some deployment shapes, controller heartbeat and control traffic can flow through an SNA relay; in local or cohosted deployments it can flow directly to SHA.

Controller Lifecycle

A controller-backed target moves through operational states: provisioning and initializing while Sendense prepares the controller, then ready with syncs running on schedule (and paused where an operator disables them). Failover moves the target through the failover lifecycle: a test failover is rollback-eligible, and a live failover awaits commit or rollback. After commit, the promoted VM is production and the target leaves normal replication management.

During Failover

During failover, Sendense promotes and boots the existing controller-backed target rather than creating a recovered VM from scratch. During replication, a controller defaults to 2 vCPU and 4 GB RAM; during failover, the promoted workload switches to the protected VM compute specification where supported.

Controllers And Other Sendense Roles

Sendense Controllers participate in DR failover operations, not ordinary full VM restore from EBA.

SHA
The orchestration and policy layer. SHA coordinates replication patterns and controller-backed targets; controllers do the target-side work.
SNA
The backup proxy and site appliance. At the recovery site, the SNA receives the replication stream and passes it to the controller for each VM.
snagent
The CloudStack KVM hypervisor host agent. It runs on hypervisor hosts and is a different role from a controller appliance.
EBA
The backup repository. Full VM restore comes from EBA recovery points; failover promotes a controller-backed target instead.

Related Docs