Skip to content

Commit

Permalink
Merge pull request #310 from AutomatingSciencePipeline/309-docs-add-g…
Browse files Browse the repository at this point in the history
…lados-vm-info-to-docs-_1

Add docs for VMs
  • Loading branch information
rhit-windsors authored Oct 8, 2024
2 parents 25a0410 + e8587ec commit 5c1ca71
Show file tree
Hide file tree
Showing 2 changed files with 28 additions and 0 deletions.
26 changes: 26 additions & 0 deletions docs/docs/infrastructure/vms.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,26 @@
# Glados Virtual Machines

To run the cluster we have created several virtual machines that are hosted by Rose-Hulman. The docs below will layout how these virtual machines are structured.

!!! note

Currently Ubuntu 22.04 LTS is the operating system of choice. This will be supported until April of 2027. There were some issues with Ubuntu 24.04 LTS running the cluster on our test machine. We can reevaluate this choice in the future.

| VM Host Name | Description | Specs | What runs here?
| ----------- | ------------------------------------ | ------------------------------------ | --------------------------------
| glados | This VM will run the kubernetes control plane. See above for the function of the control plane | 2 CPU cores, 4GB of RAM, 50GB of storage | control-plane
| glados-db | This VM will run and store the MongoDB. | 4 CPU cores, 8GB of RAM, 1TB of storage?, ability to run AVX instructions | database
| glados-w1 | This will be a general worker node. | 4 CPU cores, 8GB of RAM, 50GB of storage | non-specific
| glados-w2 | This will be a general worker node. | 4 CPU cores, 8GB of RAM, 50GB of storage | non-specific

!!! note

If we need more worker nodes they can follow the scheme above, glados-w3, glados-w4, etc.

## Justification

The glados host name will only run the control plane because it will be able to keep running in the case that another system goes down. The control plane is able to redistribute tasks in the case of a system crash. This system does not need a lot of resources since it is only directing the work to the rest of the cluster.

Glados-db will run the MongoDB, this means that it may need quite a bit of persistent storage. Therefore we need quite a bit of storage on this VM. MongoDB also appears to be quite resource intensive.

Glados worker nodes can all be the same specs and can be spun up/down as they are needed. When adding/removing nodes you will have to instruct the control plane to do so.
2 changes: 2 additions & 0 deletions docs/mkdocs.yml
Original file line number Diff line number Diff line change
Expand Up @@ -21,6 +21,7 @@ nav:
- Updating Documentation: documentation/guide.md
- Infrastructure:
- Kubernetes: infrastructure/kubernetes.md
- VMs: infrastructure/vms.md
- Cheatsheet: cheatsheet.md
- (Old) Repository Guide: repository_guide.md

Expand Down Expand Up @@ -55,3 +56,4 @@ markdown_extensions:
- def_list
# # https://yakworks.github.io/docmark/extensions/permalinks/
# - toc(permalink=true)
- tables

0 comments on commit 5c1ca71

Please sign in to comment.