Driver FixRecommendedSound, Wi-Fi or graphics acting up? Check drivers firstFind missing or outdated drivers fast.Check DriversHalloween DealsAmazon USHalloween week deals: useful picks before month-endAmazon US: current deals, useful picks and tech finds.Check DealsSlow PC?RecommendedPC slow today? Run a repair scan before it gets worseResolve common Windows issues and optimize system performance.Scan Now×
FREEDOM251

Freedom251 › Blog › Availability Zones

How to Choose One or Two Scaleway Italy Availability Zones for Your Workload (Milan, 2026)

By Freedom251 Team · · 13 min read

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Choose one Milan availability zone (AZ) when simplicity, product eligibility, or low operational overhead matters more than surviving a zonal outage. Choose two AZs when your service-level objective requires the application to remain available if one isolated location is lost—and only after confirming that compute, networking, storage, and the data layer can fail over. Scaleway currently documents Milan as a three-AZ region: MIL-1, MIL-2, and MIL-3. The right choice is therefore an architecture decision, not simply selecting one or two names in a console.

What the Milan availability zones are today

Scaleway defines an availability zone as an isolated location within a region. The Milan region is currently documented as having three AZs. Scaleway’s October 2026 Instances documentation says, “With the opening of MIL-2 and MIL-3, you can now deploy resilient enterprise-grade workloads across multiple area zones.” A concurrent product-availability matrix also labels Milan as a three-AZ region.

As an Amazon Associate I earn from qualifying purchases.

The Italian-region launch announcement described three planned locations: the first in Settimo Milanese, with the other two in Basiglio and Milan. That announcement explains the intended physical separation, but it should not be used as a substitute for current zone names or service support. Use the live service documentation and API response when you deploy.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

You may still encounter an older Instance API page that lists only it-mil-1. That page conflicts with the newer October 2026 documentation and should be treated as stale or incomplete. Before automating placement, query the current service API and confirm that the returned zone identifiers match the zones exposed by the console and the product documentation.

One AZ versus two: the decision at a glance

Decision factor One Milan AZ Two Milan AZs
Failure tolerance A zonal outage can interrupt the workload unless another recovery path exists. Can continue through loss or maintenance of one zone when traffic, compute, and state fail over correctly.
Product eligibility Works when the required product or instance type is available in the selected zone. Requires every critical component, or an intentional substitute, to be available in both selected zones.
State and data Single placement is simpler; durability still depends on the product and your backup plan. Needs replication, quorum, promotion, or another documented failover mechanism for the exact data service.
Networking and routing Fewer routes, health checks, and failure branches. Requires multi-zone ingress, health checks, routing behavior, and often cross-zone traffic planning.
Latency Potentially fewer network hops to a dependency placed in the same zone. Users and dependencies can be served from either zone; cross-zone calls may add latency.
Capacity and price One pool of capacity and one placement decision. Two capacity pools and potentially duplicated or replicated resources; current stock and prices must be checked at deployment time.
Operations Fewer moving parts and a smaller runbook. More deployment, monitoring, testing, and incident-response work.

Two AZs are not automatically more resilient. If both zones send traffic to a single database, share one untested failover path, or depend on a zonal load-balancer component, the design still has a single failure domain. Conversely, a one-AZ service with reliable backups and rapid redeployment can be an appropriate choice for a disposable or interruption-tolerant workload.

When one AZ is the better engineering choice

Development, testing, and disposable environments

Development sandboxes, CI runners, temporary preview environments, and batch jobs often have no requirement to survive a zone outage. A single zone reduces provisioning logic, makes teardown easier, and avoids paying for replicas that provide no value to the environment’s users.

Products with single-zone eligibility

Some instance families and managed products are offered only in particular zones. Scaleway’s Instance creation guidance warns that an instance type can be available in only certain AZs. If the required type is offered in one Milan zone, forcing a two-zone design may mean changing the instance family, moving regions, or accepting an unsupported topology. Verify eligibility before designing around a zone pair.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Workloads with an independent recovery strategy

A one-AZ deployment can be reasonable when the recovery objective is measured in minutes or hours rather than continuous availability. Keep tested backups or snapshots, store infrastructure definitions, and document how to redeploy in another zone or region. The recovery plan must include data restoration, DNS or routing changes, credentials, and any dependencies that are not recreated automatically.

Systems whose state cannot be safely replicated

Some applications are difficult to run with active replicas because they use local files, single-writer databases, licensing constraints, or session state that cannot be externalized. A deliberate single-zone design with frequent backups can be safer than an untested two-zone arrangement that creates split-brain or consistency failures.

When two AZs are justified

A zonal failure is inside the service-level objective

Select two zones when the service must remain usable during the loss or maintenance of one isolated location. Define what “remain usable” means: a percentage of requests, maximum error duration, recovery time objective (RTO), and recovery point objective (RPO). A two-zone layout is justified only if those targets cannot tolerate waiting for manual redeployment.

Stateless tiers can run independently

Web servers, API workers, queue consumers, and other stateless processes should be deployable in both zones. Place enough capacity in each zone to handle the expected load after the other zone is removed, or define an explicit degraded mode. Health checks must stop sending traffic to failed instances, and the ingress layer must itself support the failure model.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

The data layer has a tested failover method

Two compute pools do not protect a database that remains single-zone. Confirm whether the exact managed database configuration supports synchronous or asynchronous replicas, automatic promotion, read/write endpoint changes, quorum requirements, and the RPO you need. For self-managed databases, test replica lag, promotion, fencing, and client reconnection. Object and block storage have different semantics; neither should be assumed to provide database-style failover without product-specific documentation.

You can operate and test the design

Multi-AZ operation adds deployment constraints, cross-zone traffic, monitoring, capacity planning, and incident branches. Assign ownership for the failover runbook and rehearse it. If the team cannot detect a zone loss, promote state, reroute traffic, and restore normal replication, the second zone is only a diagram.

A practical selection sequence

  1. Inventory every dependency. List instance families, block or file storage, Object Storage, databases, Kubernetes, VPC networking, public IP requirements, DNS, observability, and compliance constraints. Record whether each item is zonal or regional.
  2. Check eligibility before comparing zones. Consult Scaleway’s product-availability matrix and the service-specific documentation. For Instances, verify the exact family, size, image, and features in each candidate AZ. Eliminate any zone that cannot host a required component.
  3. Translate the SLO into a failure domain. Ask whether users can tolerate a complete outage of one isolated location. Map that answer to RTO and RPO. If manual restoration is acceptable, one AZ plus backups may be sufficient; if not, continue with a two-zone design.
  4. Choose a candidate pair, not a universally “best” zone. Milan has MIL-1, MIL-2, and MIL-3, but no official source publishes a universal ranking of these zones by latency, capacity, or price. Select pairs that satisfy product eligibility, then measure them from your actual users and dependencies.
  5. Measure real latency. Test application requests, database connections, storage operations, and calls to critical external services from representative networks. Measure both same-zone and cross-zone paths. A generic internet ping is not a substitute for application-level timings.
  6. Check capacity and price at deployment time. Offers, stock, and quotas change. Use the console or API for current availability and pricing; use the product matrix for rollout status. Do not infer that all three Milan AZs have identical stock or commercial terms.
  7. Design state placement explicitly. Decide where primary data, replicas, backups, and encryption keys live. Document consistency, promotion, fencing, and client retry behavior. Regional services may already distribute data across zones, while zonal resources need your placement plan.
  8. Model the degraded state. Remove one zone on paper and calculate remaining compute, connection limits, queue capacity, storage throughput, and database write capacity. Ensure autoscaling, quotas, and IP allocations still work in the surviving zone.
  9. Test and record the result. Exercise health checks, routing, replica promotion, backup restore, secret availability, and infrastructure redeployment. Record observed RTO and RPO, then update the runbook and alert thresholds.

How Milan services affect the choice

Object Storage Standard Multi-AZ

The product-availability matrix marks Object Storage Standard Multi-AZ as available across the Milan region. Scaleway’s resilience guidance describes regional Object Storage data as being stored across multiple AZs. You therefore do not normally place an Object Storage bucket in a second compute zone to obtain the same regional durability. Instead, verify the bucket’s class, retention, access policy, replication behavior, and recovery requirements, then place stateless clients in the zones that meet your latency and availability goals.

Block Storage

The matrix lists Block Storage 5k and 15k in all three Milan AZ columns. Availability in a zone does not by itself define attachment, detachment, replication, or failover behavior. Confirm whether a volume can be attached to the replacement instance you plan to use, whether multi-attach is supported for your workload, and how you will copy or restore data after a zonal loss. A replicated application layer may be preferable to trying to move a live volume during an incident.

What’s actually slowing this PC down?

Pick the symptom - the matching free tool is one click away.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Virtual Instances

Instance availability is type- and zone-dependent. Select the instance type only after checking the current zone list and stock. For a one-AZ deployment, pinning a zone can simplify capacity planning. For two AZs, verify that the same family and size—or a tested fallback—can be obtained in both zones, and that quotas and images are available in each.

Managed PostgreSQL and MySQL

The matrix marks Managed PostgreSQL and Managed MySQL as available across the Milan region. Regional availability does not mean every configuration automatically fails over between AZs. Check the service’s high-availability option, replica placement, promotion time, endpoint behavior, backup location, and maintenance process. Test application reconnects and transaction handling during a planned failover before treating the database as multi-AZ.

Kubernetes Kapsule and Kosmos

The matrix marks Kapsule and Kosmos as available across Milan. A cluster can still be zonally concentrated if all worker nodes, control-plane dependencies, ingress, or persistent volumes land in one AZ. Spread worker pools across the selected zones, use topology-aware scheduling where supported, and verify that persistent-volume placement and rescheduling match the storage product’s guarantees.

VPC and related networking

VPC is listed as available across Milan, but a regional network does not automatically create a resilient application path. Check subnet, route, security-group, load-balancer, NAT, public-IP, and DNS behavior in each zone. Ensure the surviving zone has enough addresses and egress capacity when the other zone is unavailable.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Architecture patterns for one AZ

Simple service with backups

Run the application and its database in one eligible zone. Keep immutable backups or snapshots, store infrastructure definitions in version control, and monitor backup completion rather than merely backup configuration. Define the procedure to restore into another Milan AZ or a different region, including DNS changes and secret recovery. This pattern minimizes cost and operational complexity while accepting a longer outage during a severe zonal event.

Single-zone production with regional dependencies

Compute can remain in one zone while using regional Object Storage Multi-AZ for assets, backups, or artifacts. This separates application placement from object durability. Confirm that the application can operate if the compute zone is lost and that the redeployment process can access the regional bucket from the recovery location.

Architecture patterns for two AZs

Active-active stateless compute

Deploy equivalent instance pools in two zones behind an ingress path that performs health checks. Keep sessions in a shared or replicated service, or use stateless tokens. Balance normal traffic across both zones, but verify that either pool can handle the required load when the other is removed. Avoid making one zone a nominal standby if it has never carried production traffic.

Active-passive stateful service

Run a primary data service with a replica or standby in the second zone. Document promotion authority, fencing of the failed primary, endpoint changes, and client retry behavior. Measure replication lag and promotion time under realistic load. If the provider’s managed service handles promotion, verify the exact trigger and maintenance behavior rather than assuming automatic failover.

Free tools Windows power users keep installed

One-click scans. No signup required.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Two-zone Kubernetes worker pools

Use separate worker pools or failure-domain labels so scheduling can distribute replicas. Set disruption budgets that permit a zone evacuation, and ensure the ingress controller, DNS, secrets, and persistent volumes remain usable when one pool disappears. Test a node-pool and whole-zone failure separately; they exercise different recovery paths.

Cross-zone traffic controls

Keep chatty, latency-sensitive components close when possible, but do not sacrifice failover for a small normal-path latency gain. Measure the bandwidth and cost implications of cross-zone database, cache, and queue traffic. Apply connection timeouts and retries that prevent a failed zone from causing request storms in the survivor.

Latency, capacity, and price: what is and is not known

No official Scaleway source identified here publishes a universal MIL-1, MIL-2, or MIL-3 latency ranking. The same is true for a permanent capacity ranking or a guarantee that one zone is cheaper. Latency depends on the client network, destination service, protocol, packet size, and time of day; capacity and prices depend on the instance offer, quotas, and current stock.

  • Latency: benchmark the complete request path from representative user locations and dependencies. Include TLS setup, connection pooling, database queries, and failover paths.
  • Capacity: check quota, available stock, and fallback instance types in each zone immediately before deployment and during capacity reviews.
  • Price: model duplicated compute, replicas, cross-zone traffic, public IPs, load-balancing, storage, and backups. Recheck the live console or API because offers can change.

Choose a zone pair based on measured workload behavior and operational requirements, not on an assumed geographic or commercial advantage.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.
Independent reader supportYour contribution helps us test, update, and keep practical guides available for everyone.Support on Ko-Fi

Failure testing and operational runbook

Before the test

  • Write the expected user impact, RTO, RPO, and success criteria.
  • Identify the zone-specific instances, volumes, subnets, addresses, replicas, and monitoring alerts.
  • Confirm that backups are recent and that rollback or restoration is possible.
  • Notify stakeholders and define who can stop the exercise.

During the test

  1. Stop or isolate the selected zone’s application capacity using an approved maintenance method.
  2. Verify that health checks remove failed endpoints and that traffic reaches the surviving zone.
  3. Promote or reconnect the data layer according to its documented procedure.
  4. Observe error rate, latency, connection counts, queue depth, storage throughput, and resource saturation.
  5. Check background jobs, webhooks, scheduled tasks, and administrative access; these often reveal hidden single-zone dependencies.

After the test

Record the measured recovery time, data loss, manual actions, and unexpected dependencies. Restore the original topology only after replication and data integrity are confirmed. Update alerts and the runbook with exact commands or console paths used by the team. Repeat after major changes to instance types, database versions, networking, or orchestration.

Automating zone selection safely

Do not hard-code a Milan zone list from an old document. The legacy Instance API page that lists only it-mil-1 is inconsistent with the October 2026 documentation announcing MIL-2 and MIL-3. At deployment time, query the live API for the service, filter the returned zones by the exact product and instance type, and fail closed if the expected set is missing.

A safe automation flow should:

  1. Fetch the current region and zone inventory from the service API.
  2. Validate that each requested product, size, image, volume type, and networking feature is offered in the candidate zone.
  3. Apply an explicit allow-list for the zones your architecture has tested.
  4. Check quotas and capacity, then select a fallback only if it has passed the same compatibility tests.
  5. Record the chosen zone identifiers in deployment output and monitoring metadata.
  6. Alert when the provider’s zone list or product matrix changes.

For a two-zone deployment, automation should create symmetric resources and reject partial completion. A deployment that silently places both replicas in one zone has produced a single-zone system while appearing successful.

Worked decisions for common workloads

Internal development API

Choose one eligible Milan AZ. The environment is usually disposable, and backups or source-controlled infrastructure can restore it. Use a second zone only if the team is specifically testing multi-zone behavior.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Customer-facing web application with a replicated database

Choose two zones if the availability objective includes surviving a zonal outage. Run stateless application capacity in both, confirm the managed database’s high-availability mode and promotion semantics, and test ingress and client reconnects. Size the survivor for the required degraded load.

Nightly batch processing

One zone is normally sufficient when a failed run can be retried. Store inputs, checkpoints, and outputs in a regional service or another independently recoverable location, and alert on missed schedules.

Large instance type available in only one zone

Choose the eligible zone or reassess the workload’s sizing and region. Do not claim two-zone resilience by placing a smaller, untested substitute in the second zone. If continuous availability is mandatory, find a supported instance and data design before production launch.

Kubernetes service with persistent volumes

Use two zones only after confirming worker, ingress, volume, and database behavior during zone loss. Replica spreading without a compatible persistent-storage and data failover plan does not provide end-to-end resilience.

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Pre-deployment checklist

  • Milan zone names and identifiers were verified from current service APIs and documentation.
  • Every required product and exact instance type is eligible in the selected zone or pair.
  • The SLO, RTO, and RPO explicitly require—or do not require—surviving a zonal outage.
  • Stateless capacity, ingress, health checks, quotas, IPs, and egress work after removing one zone.
  • Database replication, promotion, consistency, backups, and client reconnects are documented and tested.
  • Storage attachment, volume recovery, and object-data durability match the workload’s needs.
  • Cross-zone latency, traffic, and cost were measured rather than assumed.
  • Failure tests produced acceptable recovery time and data loss, with a maintained runbook.
  • Automation detects stale zone lists and prevents accidental single-zone placement.

Bottom line

Milan is a three-AZ Scaleway region in the current October 2026 documentation. Start with product eligibility, then map your SLO to the failure domain: one AZ for simple or interruption-tolerant systems, two AZs for workloads that must continue through one zone’s loss and have tested compute, routing, and data failover. There is no officially published universal winner among MIL-1, MIL-2, and MIL-3 for latency, capacity, or price, so validate the live API and measure your own workload before committing.

Product prices and availability are accurate as of the date/time indicated and are subject to change. Any price and availability information displayed on Amazon at the time of purchase will apply.

Availability Zonescloud architectureCloud InfrastructureHigh AvailabilityKubernetesMilanScaleway

Leave a Reply

Your email address will not be published. Required fields are marked *

Special offer. See more information about Outbyte and uninstall instructions. Please review EULA and Privacy policy.

Recommended PC Tool
Recommended PC Tool
Windows Errors? Fix Them Before They SpreadFree repair scan
Crashes, No Sound, or Screen Glitches?Free driver scan

Two free Windows tools

One Free Minute Could Fix That PC

Before you go - each of these free tools takes about a minute and tackles what quietly slows a Windows PC down.

Special offer. View Outbyte info, uninstall instructions, EULA, and Privacy Policy.