You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Fix: Route to website links instead of ./docs (#4575)
<!-- Thanks for sending a pull request! Here are some tips for you: -->
#### What type of PR is this?
Fix
#### What this PR does / why we need it
There are dead-links on Readme, and reported by armadactl.
Co-authored-by: Dave Gantenbein <dave@gr-oss.io>
<ahref="https://artifacthub.io/packages/helm/gresearch/armada"title="Go to Artifact Hub"><imgsrc="https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/armada"alt="Artifact Hub"></a>
6
+
<ahref="https://artifacthub.io/packages/helm/gresearch/armada"title="Go to Artifact Hub"><imgsrc="https://img.shields.io/endpoint?url=https://artifacthub.io/badge/repository/armada"alt="Artifact Hub"></a>
7
7
<ahref="https://insights.linuxfoundation.org/project/armada"title="Click to view project insights and health checks"><imgsrc="https://insights.linuxfoundation.org/api/badge/health-score?project=armada"alt="LFX Health Score"></a>
8
8
</p>
9
9
</div>
10
10
11
11
# Armada
12
12
13
-
Armada is a system built on top of [Kubernetes](https://kubernetes.io/docs/concepts/overview/) for running batch workloads. With Armada as middleware for batch, Kubernetes can be a common substrate for batch and service workloads. Armada is used in production and can run millions of jobs per day across tens of thousands of nodes.
13
+
Armada is a system built on top of [Kubernetes](https://kubernetes.io/docs/concepts/overview/) for running batch workloads. With Armada as middleware for batch, Kubernetes can be a common substrate for batch and service workloads. Armada is used in production and can run millions of jobs per day across tens of thousands of nodes.
14
14
15
15
Armada addresses the following limitations of Kubernetes:
16
16
17
17
1. Scaling a single Kubernetes cluster beyond a certain size is [challenging](https://openai.com/blog/scaling-kubernetes-to-7500-nodes/). Hence, Armada is designed to effectively schedule jobs across many Kubernetes clusters. Many thousands of nodes can be managed by Armada in this way.
18
18
2. Achieving very high throughput using the in-cluster storage backend, etcd, is [challenging](https://etcd.io/docs/v3.5/op-guide/performance/). Hence, Armada performs queueing and scheduling out-of-cluster using a specialized storage layer. This allows Armada to maintain queues composed of millions of jobs.
19
19
3. The default [kube-scheduler](https://kubernetes.io/docs/reference/command-line-tools-reference/kube-scheduler/) is not suitable for batch. Instead, Armada includes a novel multi-Kubernetes cluster scheduler with support for important batch scheduling features, such as:
20
-
* Fair queuing and scheduling across multiple users. Based on dominant resource fairness.
21
-
* Resource and job scheduling rate limits.
22
-
* Gang-scheduling, i.e., atomically scheduling sets of related jobs.
23
-
* Job preemption, both to run urgent jobs in a timely fashion and to balance resource allocation between users.
20
+
- Fair queuing and scheduling across multiple users. Based on dominant resource fairness.
21
+
- Resource and job scheduling rate limits.
22
+
- Gang-scheduling, i.e., atomically scheduling sets of related jobs.
23
+
- Job preemption, both to run urgent jobs in a timely fashion and to balance resource allocation between users.
24
24
25
25
Armada also provides features to help manage large compute clusters effectively, including:
26
26
27
-
* Detailed analytics exposed via [Prometheus](https://prometheus.io/) showing how the system behaves and how resources are allocated.
28
-
* Automatically removing nodes exhibiting high failure rates from consideration for scheduling.
29
-
* A mechanism to earmark nodes for a particular set of jobs, but allowing them to be used by other jobs when not used for their primary purpose.
27
+
- Detailed analytics exposed via [Prometheus](https://prometheus.io/) showing how the system behaves and how resources are allocated.
28
+
- Automatically removing nodes exhibiting high failure rates from consideration for scheduling.
29
+
- A mechanism to earmark nodes for a particular set of jobs, but allowing them to be used by other jobs when not used for their primary purpose.
30
30
31
31
Armada is designed with the enterprise in mind; all components are secure and highly available.
32
32
@@ -53,6 +53,7 @@ Alternatively, you can install Armada manually by using the Helm charts defined
53
53
Armada also provides a command-line interface, `armadactl`, which can be used to interact with the Armada system.
54
54
55
55
To install `armadactl`, run the following script:
56
+
56
57
```bash
57
58
scripts/get-armadactl.sh
58
59
```
@@ -69,20 +70,28 @@ allowing you to run multiple processes with a single command.
69
70
Goreman will build the components from source and run them locally, making it easy to test changes quickly.
70
71
71
72
1. Install `goreman`:
73
+
72
74
```shell
73
75
go install github.com/mattn/goreman@latest
74
76
```
77
+
75
78
2. Start dependencies:
79
+
76
80
```shell
77
81
docker-compose -f _local/docker-compose-deps.yaml up -d
78
82
```
79
-
- **Note**: Images can be overridden using environment variables:
We expect readers of the documentation to have a basic understanding of Docker and Kubernetes; see, e.g., the following links:
208
227
@@ -219,5 +238,4 @@ For more information about contributing to Armada see [CONTRIBUTING.md](https://
219
238
220
239
## Discussion
221
240
222
-
If you are interested in discussing Armada you can find us on [](https://cloud-native.slack.com/?redir=%2Farchives%2FC03T9CBCEMC)
223
-
241
+
If you are interested in discussing Armada you can find us on [](https://cloud-native.slack.com/?redir=%2Farchives%2FC03T9CBCEMC)
0 commit comments