Help:Server groups

From Wikitech
Jump to navigation Jump to search


Server groups allow you to define logical groups of Cloud VPS instances with advanced scheduling features.

For most use cases you will not need to define or add an instance to a server group.

Server group policies

There are four available types of server group policies:

  1. Affinity - All server group members must be scheduled on the same physical hardware. Do not use this unless you really know it is essential. This will make your entire group vulnerable to physical hardware errors with no redundancy. The only advantage is if you have a small group of servers that desperately need extremely fast network between each other. In any other case, this will cause problems. If you use it, it is best if you inform WMCS about this as well because it affects scheduling in a problematic way.
  2. Anti-affinity - All server group members must be scheduled on the different physical hardware.
  3. Soft Affinity - All server group members should be scheduled on the same physical hardware.
  4. Soft Anti-affinity - All server group members should be scheduled on the different physical hardware.

The soft versions of these policies should be used whenever possible. This allows greater flexibility for maintenance and operation tasks.

Create a new server group

You must be a Project admin in order to create, add or modify server groups.

  1. Log into Horizon
  2. Select the project containing the instance from the dropdown.
  3. Select 'Server Groups' under Compute, under Project - you’ll see a list of available server groups.
  4. Click on the "Create Server Group" button
  5. Enter a new server group name, e.g., “web”.
  6. Select the group policy from the "Policy" dropdown.
  7. Click on the “Submit” button.

Adding an instance to a server group

When creating a new CloudVPS instance you can select a server group to join from the "Available" list of "Server Groups".


Here's a server group scenario using the affinity policy:

Your service architecture consists of multiple Cloud VPS instances with dedicated roles (e.g. web server, database) that have heavy inter-node communication requirements and cannot function without each instance fully operational.

Here's another server group scenario using the anti-affinity policy:

You're deploying multiple Cloud VPS instances that run a distributed service (e.g. elasticsearch, hdfs) that provide high-availability across each server group member. Using the anti-affinity policy will help protect the availability of your distributed service by spreading your instances across multiple physical servers, reducing the impact to your service from CloudVPS maintenance or underlying hardware problems.

Communication and support

We communicate and provide support through several primary channels. Please reach out with questions and to join the conversation.

Communicate with us
Way Connect Best for
Phabricator Workboard #Cloud-Services Task tracking and bug reporting
IRC Channel #wikimedia-cloud connect
Telegram bridge
mattermost bridge
General discussion and support
Mailing List cloud@ Information about ongoing initiatives, general discussion and support
Announcement emails cloud-announce@ Information about critical changes (all messages mirrored to cloud@)
News wiki page News Information about major near-term plans
Cloud Services Blog Clouds & Unicorns Learning more details about some of our work
Wikimedia Technical Blog News and stories from the Wikimedia technical movement