Service level agreements
Listed terms cover requests sent through this service adapter. They do not cover direct connections to the target service or replace the cloud provider’s own SLA. Each origin-to-target pair has its own terms or an explicit pending status. See the SLA tables, measurement rules, and scaling conditions.azure::1.0.0::aks to Azure AKS API on AWS EKS
Deployment availability. This AKS-to-EKS composition requires explicit sipsvr configuration, ReportOnly mode and the azure-aks enforcement-off acknowledgement. It is not general appliance injection or full AKS compatibility; terms apply only when this exact deployed composition and operations are named in a signed agreement.
What Tensor9 covers. These service levels cover the adapter between the origin API and target API. They do not replace the target provider’s SLA.
How latency is counted. Adapter work, including metadata and coordination, counts. Only separately measured permitted target waits are excluded.
Which terms apply. Your signed agreement names the covered operations, workload limits, remedies, and final service levels for your deployment.
What this adapter does
Azure ContainerService ARM requests are authenticated, decoded and checked against the supported cluster and pool subset, then translated into desired state for AWS EKS. Accepted mutations return after durable admission; target cluster creation, node registration and workload Kubernetes requests are separate paths.How the latency targets were chosen
Bounded cluster and pool reads: 10 ms monthly p99.AgentPools_Get, AgentPools_List, ManagedClusters_Get, ManagedClusters_List, ManagedClusters_ListByResourceGroup. Includes an indexed adapter-state read and source-API response mapping.
Cluster and pool desired-state admission: 25 ms monthly p99. AgentPools_CreateOrUpdate, AgentPools_Delete, ManagedClusters_CreateOrUpdate, ManagedClusters_Delete. Includes validation, admission, durable generation commit and reconciliation scheduling.
Your signed agreement sets the terms for your deployment. A target does not add an operation or option that the compatibility tables mark unavailable.
What counts toward latency
For a request-response row, measure from the agreed ingress boundary to dispatch of the complete response. A row that explicitly names a first response chunk ends at that chunk; its number does not cover the rest of the stream. A long-poll row names the intentional wait and when adapter delay starts. Include parsing, authorization, admission, translation, serialization, adapter-owned storage and coordination, retries and response handling. Subtract only separately measured target-workload waits and external network segments allowed by the measurement rules. The adapter’s own response handling and dispatch remain covered. A database used for adapter metadata is still adapter work, even if a cloud provider hosts it. For concurrent calls, exclude the union of permitted wait intervals, not the sum of overlapping spans. Calculate each request’s adapter duration first, then the monthly p99. Do not subtract one service’s p99 from another’s. Known adapter timeouts are over-budget samples; failed or incomplete requests cannot disappear to improve the percentile. Missing measurements do not become zero latency. An SDK call span alone does not prove how much of its duration can be excluded.Availability and failures
The 99.9% request target measures correct adapter handling, not the percentage of application calls that return success. Correctly forwarding a target quota or permission error is different from producing that error because the adapter sent the wrong request. Adapter-caused failures count even when the target is healthy. With 1,000,000 eligible calls in a month, a 99.9% target permits at most 1,000 adapter-attributable failures. Endpoint probes have their own denominator. Correctness defects remain actionable even when the monthly availability percentage is met.Scaling and target-service capacity
Independent clusters reconcile concurrently while writes to one cluster or pool are generation ordered. Bounded list pages and request bodies prevent an unbounded cluster inventory from inheriting point-read latency. Admission capacity and native EKS provisioning time must be reported separately. Tell Tensor9 the expected steady rate, bursts, concurrency, payload sizes and operation mix. Tensor9 sizes and scales the adapter for the agreed load; you choose and monitor the target service’s capacity with Tensor9’s help. A latency budget is not a requests-per-second rating. Larger requests and higher rates need explicit terms, not silent inheritance of a small-request SLA.Data and behavior guarantees
A successful mutation preserves the source cluster and pool identity, records a complete desired generation and never reports readiness before EKS confirms it. Unknown fields or unsupported source features fail explicitly; stale reconciliation cannot overwrite a newer accepted generation.Example and diagnosis
A caller creates one cluster with a bounded pool specification. The adapter validates and records generation N within the 25 ms p99 target; AWS EKS may still be provisioning. A later bounded Get reads the same identity and honest observed status within the 10 ms read target. Usetensor9 explain and the documented explain headers to understand the selected adapter and its behavior. Correlate available request diagnostics with the target provider’s latency, throttling and capacity metrics. An explain report helps diagnose a request; it is not by itself a qualified SLA timing measurement. Share the operation, request shape, timestamps and request identifiers with support, with credentials and customer payloads removed.