Skip to content

Commit 16fcd40

Browse files
committed
Documentation for HA mode
Signed-off-by: Lazar Cvetković <l.cvetkovic.997@gmail.com>
1 parent 1a2ec9b commit 16fcd40

File tree

1 file changed

+20
-10
lines changed

1 file changed

+20
-10
lines changed

docs/loader.md

+20-10
Original file line numberDiff line numberDiff line change
@@ -12,9 +12,10 @@ can choose the APT cluster `d430` node.
1212
### vHive cluster
1313

1414
First, configure `script/setup/setup.cfg`. You can specify there which vHive branch to use, loader branch, operation
15-
mode (sandbox type), and maximum number of pods per node. All these configurations are mandatory. We currently support
15+
mode (sandbox type), maximum number of pods per node, whether to deploy Prometheus metrics collector, and the number of
16+
Kubernetes control plane replicas (for high-availability). All these configurations are mandatory. We currently support
1617
the following modes: containerd (`container`), Firecracker (`firecracker`), and Firecracker with
17-
snapshots (`firecracker_snapshots`).Loader will be cloned on every node specified as argument of the cluster create
18+
snapshots (`firecracker_snapshots`). Loader will be cloned on every node specified as argument of the cluster create
1819
script. The same holds for Kubernetes API server certificate.
1920

2021
* To create a multi-node cluster, specify the node addresses as the arguments and run the following command:
@@ -124,9 +125,10 @@ For to configure the workload for load generator, please refer to `docs/configur
124125
There are a couple of constants that should not be exposed to the users. They can be examined and changed
125126
in `pkg/common/constants.go`.
126127

127-
Sample sizes appropriate for performance evaluation vary depending on the platform.
128-
As a starting point for fine-tuning, we suggest at most 5 functions per core with SMT disabled.
129-
For example, 80 functions for a 16-core node. With larger sample sizes, trace replaying may lead to failures in function invocations.
128+
Sample sizes appropriate for performance evaluation vary depending on the platform.
129+
As a starting point for fine-tuning, we suggest at most 5 functions per core with SMT disabled.
130+
For example, 80 functions for a 16-core node. With larger sample sizes, trace replaying may lead to failures in function
131+
invocations.
130132

131133
## Build the image for a synthetic function
132134

@@ -147,7 +149,7 @@ For testing cold start performance:
147149
$ make <trace-firecracker|trace-container|empty-firecracker|empty-container>
148150
```
149151

150-
Pushing the images will require a write access to Github packages connected to this repository. Please refer to
152+
Pushing the images will require a write access to Github packages connected to this repository. Please refer to
151153
[this guide](https://docs.github.com/en/packages/working-with-a-github-packages-registry/working-with-the-container-registry#authenticating-with-a-personal-access-token-classic)
152154
for authentication instructions.
153155

@@ -184,15 +186,23 @@ For instructions on how to use the loader with OpenWhisk go to `openwhisk_setup/
184186
Currently supported vendors: AWS
185187

186188
Setup Instructions:
189+
187190
1. Sign up for a Serverless account [here](https://app.serverless.com/)
188-
2. Install Serverless framework via command line `npm install -g serverless` to allow our Go code to interact with the Serverless CLI framework e.g. `sls deploy`
189-
3. Follow their [setup guide](https://www.serverless.com/framework/docs/getting-started) to link the respective cloud providers
191+
2. Install Serverless framework via command line `npm install -g serverless` to allow our Go code to interact with the
192+
Serverless CLI framework e.g. `sls deploy`
193+
3. Follow their [setup guide](https://www.serverless.com/framework/docs/getting-started) to link the respective cloud
194+
providers
190195

191196
To run the default Loader:
197+
192198
1. Change the `Platform` value in `cmd/config.json` to one of those specified in `docs/configuration.md`
193-
2. ~~Build the Go binary in Linux: `go build -v -o ./server/trace-func-go/aws/trace_func ./server/trace-func-go/aws/trace_func.go` (For Window users, please use WSL to build the binary)~~
199+
2. ~~Build the Go binary in
200+
Linux: `go build -v -o ./server/trace-func-go/aws/trace_func ./server/trace-func-go/aws/trace_func.go` (For Window
201+
users, please use WSL to build the binary)~~
194202
3. Start the experiments: `go run cmd/loader.go --config cmd/config.json --verbosity trace`
195203

196204
Note:
197-
- Current deployment is via zip file where the Go binary has to be built prior to running the code. For now, the Go binary has been packaged in this repo. Otherwise, refer to Step 2 above to build your custom Go binary.
205+
206+
- Current deployment is via zip file where the Go binary has to be built prior to running the code. For now, the Go
207+
binary has been packaged in this repo. Otherwise, refer to Step 2 above to build your custom Go binary.
198208
- Refer to [Single Execution](#single-execution) section for more details on the experiment configurations.

0 commit comments

Comments
 (0)