microsoft / microsoft/aspire

Ability to change replica count on dashboard in Runtime

Open
#4,358 7 comments 2 reactions 0 assignees View on GitHub
area-app-model area-dashboard
Dominant language
C#
Stars
6.3k
Forks
991
Avg merge
2d 15h
Merged PRs (30d)
196

Description

## Overview

To test failover scenarios (for example in this case: https://github.com/dotnet/aspire/issues/4357) first-class support for changing replica count in dashboard would be very helpful

This feature can be implemented closely with https://github.com/dotnet/aspire/issues/295, because two scenarios are very similar (restart is basically scaling pods to 0 and than back to replica_count)

For example, we can start with ReplicaCount = 3 for service, but we can change it to "0" and "4", for example. This will insanely help with testing scenarios of failovers locally - test what happens if you just turn off the database, and than rescale it

This would like smth like this:

![image_2024-06-02_00-06-29](https://github.com/dotnet/aspire/assets/46647517/eb97c13b-7225-4277-9883-78e8af90011f)

This will also resolve issue https://github.com/dotnet/aspire/issues/3095 - as one of the ways to perform "complete stop" of the service (or even restart, after some time, with specified replica count we want)

However, It seems easy to add this feature for .NET apps, but it's might be not so trivial for applications where nodes are required to be in state of consensus (any leader-election, multimaster or master-replica architecture) (for example Kafka or Postgres), because it might be required to add info to all brokers/servers about new added host.

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.