eqixiacEquinix Infrastructure as Code

Workload guidance

Which Equinix building block fits which workload, the reasons, and the trade-offs, with the SDK entry point for each.

Building blocks#

Building blockWhat it isSDK entry point
Fabric portA physical hand-off from your cage to Fabricfabric.ports()
Virtual connectionA layer 2 or layer 3 circuit between two access pointsfabric.connections()
Fabric Cloud RouterA managed layer 3 router in a metrofabric.cloudRouters()
Fabric networkA multipoint layer 2 or IP-WAN service across metrosfabric.networks()
Service tokenDelegated access to a port for another partyfabric.serviceTokens()
Network Edge deviceA vendor network function as a virtual appliancenetworkEdge.devices()
Internet AccessTransit in an IBXinternet.services()
Internet ExchangePublic peering in a metrofabric.beta().exchangeServices() (Beta), planning with peeringIntelligence()
Precision TimeNTP or PTP over Fabricfabric.precisionTimes()
Cross connectA physical cable between two parties in an IBXportal.crossConnects()
Native multicloud linkA provider-to-provider link, outside EquinixPlanned and priced only, see Cloud-to-cloud

Selection by connectivity need#

NeedFirst choiceReasonConsider instead when
One cage to one cloudPort to cloud, EVPL_VCFewest components; routing stays on your routersYou expect a second cloud: start with a Cloud Router
One cage to several cloudsCloud Router with IP_VC to each cloudOne BGP policy; cloud-to-cloud traffic does not cross the cageYou need stateful inspection between clouds: add Network Edge or use your own firewalls and layer 2 connections
Cloud to cloud, no premisesCloud RouterWorks for any pair and any number of clouds; sizes from tens of MbpsA single pair at a sustained rate above the break-even: native link
Two or three metrosRouter-to-router IP_VC, or port-to-port EVPL_VCExplicit bandwidth per pairThe count grows: IP-WAN network
Many metros, any-to-anyIP-WAN network with a Cloud Router per metroOne attachment per metro instead of a meshYou need per-pair policy or segmentation: mesh or several networks
A metro without a cageNetwork Edge deviceNo space, power or shipping; ready in hoursThroughput or hardware features beyond a virtual appliance
Hand-off to a partner or customerService token on your port, or a private service profileThe other party orders the connection; you set the limitsA long-lived, high-volume relationship in one IBX: cross connect
Internet breakoutInternet AccessOne order, BGP or staticYou need several carriers: cross connects to each
Reaching many networks cheaplyInternet Exchange peeringOne port, many peersThe traffic is to a few large networks: private interconnection to each

Guidance by workload type#

Transactional systems and APIs#

These systems need low latency and high availability and carry moderate bandwidth.

  • Place the on-ramp in the metro nearest to the cloud region that the system runs in. The Metro Optimizer weighs that distance against the distance to the user sites.
  • Use a redundant pair of connections to two provider locations, with BFD on both BGP sessions.
  • Set a latency ceiling for the workload with maxLatencyToleranceMs, which makes the optimizer reject designs that exceed it.
  • A second metro raises the resilience score and adds a router fee and a backbone link. The resilience objective gives the first figure and the TCO comparison the second.

Data replication and backup#

Replication and backup move large volumes, tolerate high latency, and are sensitive to egress cost.

  • Size the connection from the change rate of the data and the replication window. The size of the whole dataset matters only for the first copy.
  • Replication out of a cloud is billed as egress, so run the savings calculator before choosing a path.
  • A backup target can use a single connection, because a backup can be repeated after an outage. A synchronous replica needs a redundant pair.
  • A smaller connection has a lower fixed cost and falls behind when the change rate rises, which lengthens the recovery point. Estate analysis reports connections whose 95th percentile is near their bandwidth.

AI and ML training#

Training moves data in bursts and leaves the connection idle between runs.

  • Compute the transfer time for the dataset at each bandwidth before choosing, as in AI and ML workloads.
  • Prefer a dedicated cloud port with a resizable Fabric connection over a fixed hosted connection when runs are infrequent.
  • Pin the training workload to the metro where the GPUs are, because the optimizer has no power or cooling data.
  • A copy of the data next to the GPUs avoids egress charges on every run and adds storage to operate.

AI and ML inference#

Inference traffic is steady and has a latency budget per request.

  • Place the serving metros by user population with LATENCY_FIRST, in at least two metros.
  • The time the model takes adds to the network latency, so the latency ceiling for the network should leave room for it.
  • Each additional serving metro lowers latency for the users near it and adds GPU capacity that is idle outside peak hours.

Real-time collaboration and voice#

These workloads are more sensitive to jitter and packet loss than to bandwidth.

  • Use private paths to the SaaS provider where it publishes a service profile on Fabric, and regional internet breakout otherwise.
  • Use several small deployments in metros near the users. EDGE_COMPUTE and REALTIME_COLLABORATION set critical latency sensitivity in the optimizer.
  • Private connectivity to a SaaS provider carries only the traffic that the provider accepts on it, and media streams often still use the internet.

Trading and market data#

Trading systems need predictable latency and accurate time.

  • Place the systems in the same IBX as the venue and connect with cross connects, because a virtual connection adds a shared device to the path.
  • Use Precision Time with PTP for timestamping.
  • Measure the latency of the path. The SDK's latency figures are round trips between metros and fibre floors, which serve for planning and are far coarser than the microsecond figures a trading path is judged by.

Disaster recovery#

A recovery path is used rarely and has to work when it is used.

  • Use two metros with on-ramps in both, and configure BGP so that failover needs no manual change, as described under Disaster recovery.
  • Size the backbone for the traffic it carries during a failure, and test the failover every quarter.
  • The standby path is billed every month. A smaller standby that is enlarged during a failover costs less and adds a manual step to the failover.

Colocation-heavy estates#

An estate with many cages involves physical work and depends on facility conditions.

  • Automate the reads first (order history, power events and port state), as in Colocation operations.
  • Require an approval before every order, because the portal APIs define no dry run.
  • Feed IBX SmartView data into the monitoring that already holds network data.

Layer 2 or layer 3#

Layer 2: EVPL_VC, EPL_VC, EVP-LANLayer 3: Cloud Router, IP_VC, IP-WAN
Routing runs onYour devicesThe Cloud Router, with your BGP policy
Cloud-to-cloudThrough your devicesOn the router
ControlFull: any protocol, your own firewalls inlineBGP attributes, route filters, aggregation
Operational loadVLANs and sessions on your hardware per connectionManaged router; one session per neighbour
Fixed costNo router feeRouter fee per metro
FitsExisting routers in a cage; strict control over the pathNo cage, several clouds, or a small team

Choosing a bandwidth#

  1. Start from a measurement of the traffic. fabric.metrics() returns the history of an existing connection.
  2. Size to the 95th percentile with headroom. Estate analysis uses a factor of 1.3 by default.
  3. Check the tiers that the service profile offers, because a request is rounded up to the next tier.
  4. Check whether the provider object can be resized in place.
  5. Validate with dryRun().

Redundancy levels#

LevelSurvivesTypical cost over a single connection
Single connectionNothingBaseline
Redundant connection pair, one portA connection or provider device failureOne more connection
Two ports on different Fabric devicesA port or Fabric device failureOne more port and cross connect
Two Cloud Routers in a metroA router failureOne more router fee
Two metrosA metro or cloud region failureAbout twice the design, plus a backbone

Each workload can have its own level. One estate can hold a backup target at the first level and a payment system at the fourth.

Design layer or direct calls#

SituationApproach
The metro and the topology are known and smallDirect API calls with dryRun()
The metros are open, or stakeholders need to see the trade-offsDesignSpec and the Metro Optimizer
Several metros with routers, on-ramps and a backboneDeployment Wizard, executed or exported to Terraform
An estate exists and its sizing is in doubtEstate analysis
A cost question from financeSavings and TCO, with your contract rates in a custom rate card
An exploratory design sessionThe MCP server with the design toolset