Deployment units

更新时间:
复制 MD 格式

A deployment unit (Cell) defines a boundary for service communication and organizes communication links. This enables non-disruptive releases that use traffic shifting. It also provides the foundation for high availability (HA) application architectures, such as intra-city active-active and active geo-redundancy, and for disaster recovery switchovers and recovery.

A Deployment Zone groups zones to organize compute resources. This provides the foundation for various deployment and disaster recovery scenarios. SOFAStack specifies that a workspace in a region can have a maximum of two Deployment Zones. This configuration is intended for intra-city active-active architectures because using more zones for this type of setup provides little benefit.

Note
  • If a workspace has two or fewer zones, it has two Deployment Zones by default. Each Deployment Zone contains one deployment unit, and each deployment unit is associated with one zone.

  • If a workspace has more than two zones, it still has only two Deployment Zones. The two deployment units in these Deployment Zones are associated with the first two zones that were created. The other zones are not associated with any deployment unit. This means that compute resources in the unassociated zones cannot be used for deployments. You must associate these zones with the correct deployment units using the deployment product.

On the SOFAStack platform, services within the same deployment unit are prioritized for discovery and access. You can implement this using products such as a configuration center. An Application Service is associated with one or more deployment units and is composed of multiple compute nodes (ECS). Each node publishes multiple identical services. When you assign compute nodes to an Application Service, the nodes are also assigned to the corresponding deployment units. This ensures that services on nodes within the same deployment unit are prioritized for access.

When deploying an Application Service, you can perform operations at the deployment unit level. For example, you can implement grouping strategies or blue-green deployments. For this reason, deployment and daily Operations and Maintenance (O&M) on the SOFAStack platform emphasize deployment units and abstract away the underlying concept of zones.

The relationship between deployment units, zones, and Deployment Zones within the same workspace is as follows:

  • In a public cloud environment, a deployment unit usually corresponds to a single zone. However, a zone can run out of resources. In this case, a deployment unit can be associated with multiple zones.

  • A deployment unit can belong to only one Deployment Zone.

  • A Deployment Zone can have multiple deployment units.

  • A deployment domain usually has only one zone, but can have multiple zones for the same reason that is described in point 1.

  • A zone cannot belong to multiple Deployment Zones.

Note

On the SOFAStack platform, a service usually corresponds to a SOFA RPC service.

Create a deployment unit

  1. Go to the Classic Application Service console. In the navigation pane on the left, click Settings > Environment Parameters.

  2. Click + New Deployment Unit, and then enter an identifier and a description.

    Note

    After a deployment unit is created, it cannot be deleted, and its identifier cannot be modified.

Edit a deployment unit

Click the Edit icon to the right of an existing deployment unit.

If you add a zone to the workspace, you are prompted in Classic Application Service to add the zone to a Deployment Zone.

Note

You must refresh the page to see this prompt.