Skip to content

Commit

Permalink
Merge remote-tracking branch 'origin/master' into auto-generate/v0.14.6
Browse files Browse the repository at this point in the history
  • Loading branch information
Gerrit91 committed Aug 23, 2023
2 parents 905648d + 9ee069b commit 39677da
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 4 deletions.
8 changes: 6 additions & 2 deletions docs/src/development/proposals/MEP12/README.md
Original file line number Diff line number Diff line change
Expand Up @@ -8,7 +8,11 @@ So, instead of just randomly deciding the placement of a machine candidate, we w

## Placement Strategy

Machines in the project are spread across all available racks evenly (best effort), the user can optionally pass placement tags which will be considered for spreading the machines as well (this will for example allow spreading by a cluster id tag inside the same project).
Machines in the project are spread across all available racks evenly within a partition (best effort). For this, an additional request to the datastore has to be made in order to find allocated machines within the project in the partition.

The algorithm will then figure out the least occupied racks and elect a machine candidate randomly from those racks.

The user can optionally pass placement tags which will be considered for spreading the machines as well (this will for example allow spreading by a cluster id tag inside the same project).

## API

Expand All @@ -17,6 +21,6 @@ Machines in the project are spread across all available racks evenly (best effor

type MachineAllocation struct {
// existing fields are omitted for readability
PlacementTags []string `json:"tags" description:"by default machines are spread across the racks inside a partition for every project. if placement tags are provided, the machine candidate has an additional anti-affinity to other machines having the same tags"`
PlacementTags []string `json:"placement_tags" description:"by default machines are spread across the racks inside a partition for every project. if placement tags are provided, the machine candidate has an additional anti-affinity to other machines having the same tags"`
}
```
4 changes: 2 additions & 2 deletions docs/src/development/proposals/index.md
Original file line number Diff line number Diff line change
Expand Up @@ -22,11 +22,11 @@ Once a proposal was accepted, an issue should be raised and the implementation s
| [MEP-1](MEP1/README.md) | Distributed Control Plane Deployment | `In Discussion` |
| [MEP-2](MEP2/README.md) | Two Factor Authentication | `Aborted` |
| [MEP-3](MEP3/README.md) | Machine Re-Installation to preserve local data | `Completed` |
| [MEP-4](MEP4/README.md) | Multi-tenancy for the metal-api | `Accepted` |
| [MEP-4](MEP4/README.md) | Multi-tenancy for the metal-api | `In Discussion` |
| [MEP-5](MEP5/README.md) | Shared Networks | `Completed` |
| [MEP-6](MEP6/README.md) | DMZ Networks | `Completed` |
| [MEP-8](MEP8/README.md) | Configurable Filesystemlayout | `Completed` |
| [MEP-9](MEP9/README.md) | No Open Ports To the Data Center | `Completed` |
| [MEP-10](MEP10/README.md) | SONiC Support | `Completed` |
| [MEP-11](MEP11/README.md) | Auditing of metal-stack resources | `Completed` |
| [MEP-12](MEP12/README.md) | Rack Spreading | `In Discussion` |
| [MEP-12](MEP12/README.md) | Rack Spreading | `Completed` |

0 comments on commit 39677da

Please sign in to comment.