Virtual Private Cloud: Regions and Zones


The Virtual Private Cloud (VPC) used to operate entirely out of one data center in St. Petersburg, and as a result, it lacked pools. We made it a point to address this issue and we’ve kept our word: we’ve opened a new VPC pool in our Moscow data center, Berzarina. This ensures fault-tolerance, improves connectivity, and raises the performance of our users’ resources.

Overview: Berzarina is located 2 km away from the Oktyabrskoye Pole Metro station on Ul. Berzarina in Moscow. The data center occupies a total area of 900 m2 (server area – 500 m2). The center has 160 server cabinets, precision air-conditioners, and UPS clusters. We’ve already written a detailed description about how our data center operates (with photos).

Regions and Zones: A Brief Overview

Regions and zones increase VPC availability and fault-tolerance. Regions are independent instances of the VPC infrastructure, which are located in separate data centers. Each region has its own resources, network, and API endpoints. Regions are managed using an authorization client and web interface.

A region’s virtualization and data-storage hosts are grouped together in zones. Zones can be divided by different characteristics, like capacity. In the near future, we’ll be adding a zone with high-performance hosts to each of these regions, where you’ll be able to create and launch virtual machines with a large number of vCPUs and RAM. When creating a virtual machine, we can indicate the zone we’d like it to operate in (moreover, we’ll even be able to specify the host in that zone).

A zone’s computing and storage resources are located on independent hosts and do not overlap another zone’s resources.


What has changed in the Virtual Private Cloud since introducing regions and zones? Take a look at the following points:

  • As before, resources are purchased as a quota (you rent the resources you want and distribute them among your projects).
  • One project may include resources from different regions and zones (it would be easier to limit projects to one region, but we figured projects may need servers in Moscow and St. Petersburg).
  • Resources in different zones have to be purchased separately (the active region is shown in a tab at the top of the project management screen).
  • Network resources are provided in the framework of the region and not zones. Servers in different zones can be connected to a LAN without any restrictions. Quotas for virtual machine images are also provided by region.

A new version of Resell API v2 is available for managing resources. The old version will still be supported, but all requests will be rerouted to zone ru-1a (the first zone in St. Petersburg).

To make the API more accessible, we’ve developed a selvpcclient library: you can interact with the API from our console or OpenStack console clients. We’ll be publishing the library in the near future.

When working with console clients, a new parameter will now have to be added to each command: region name (—os-region-name ru1). Regions can be given with an environment variable using the command export OS_REGION_NAME=’ru-1’.

Plans for Development

Our immediate plans are to launch another zone in St. Petersburg and add the option of connecting resources in different regions via a local network. This should provide full support for projects with resources in different regions.

We’ve also added a new kind of disk—Universal. It’s is a mix between the low-cost basic disk and high-performance fast disk. Universal disks will be built entirely on SSDs and will have much fewer limits on the number of IOPS than basic disks. This solution will lower response times and improve overall responsiveness without any losses.

We are working to improve our services and hope they fully meet your expectations. This is why we’ve put our updated control panel in beta testing and are awaiting your feedback: anyone who wants to can share their thoughts on the panel and together we can make our service comfortable for all of our users. Don’t be afraid to share your ideas in the comments below. We will take all of your comments into consideration for future developments.