Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
6 changes: 3 additions & 3 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -125,7 +125,7 @@ the end. In `infra.region` of `perfkit.yaml`, it creates, in this order:
1. an SSH key (see `PERFKIT_SSH_KEY` below);
2. a new VPC, `perfkit-<run id>`, whose range DigitalOcean assigns, so parallel runs never
collide;
3. two `ubuntu-24-04-x64` droplets in it, `perfkit-<run id>-uut` and
3. two `ubuntu-22-04-x64` droplets in it, `perfkit-<run id>-uut` and
`perfkit-<run id>-loadgen`, tagged `perfkit` and `perfkit-run-<run id>`;
4. a firewall, `perfkit-<run id>`: from the VPC: all ports (tcp and udp) and icmp, so the load
generator reaches the server's API and the server reaches the callees; SSH (22) from this machine's public IP (from `https://api.ipify.org`) and from the VPC, where the agent on the load generator reaches the server under test.
Expand Down Expand Up @@ -159,8 +159,8 @@ digest its tag had when the run started.
$ npx perfkit run --config perf/perfkit.yaml --target-version 2.31.6 --dry-run
plan for Routr 2.31.6 (dry run, nothing created)
region nyc3, new VPC (range assigned by DigitalOcean)
uut c-8 ubuntu-24-04-x64
loadgen c-16 ubuntu-24-04-x64
uut c-8 ubuntu-22-04-x64
loadgen c-16 ubuntu-22-04-x64
firewall from the VPC: all ports (tcp/udp) and icmp; SSH (22) from 203.0.113.7 and the VPC only
tags perfkit, perfkit-run-20261103T141210Z-bd3254a
images fonoster/routr-edgeport:2.31.6@sha256:8bca…1866
Expand Down
4 changes: 2 additions & 2 deletions package-lock.json

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

2 changes: 1 addition & 1 deletion package.json
Original file line number Diff line number Diff line change
@@ -1,6 +1,6 @@
{
"name": "perfkit",
"version": "0.1.7",
"version": "0.1.8",
"description": "Benchmark harness for Fonoster projects: DigitalOcean runs, one report.json schema, one branded report page",
"license": "MIT",
"author": "Pedro Sanders <psanders@fonoster.com>",
Expand Down
2 changes: 1 addition & 1 deletion src/cli/formatPlan.ts
Original file line number Diff line number Diff line change
Expand Up @@ -13,7 +13,7 @@ const LABEL_WIDTH = 11;
* ```
* plan for Routr 2.31.5 (dry run, nothing created)
* region nyc3, new VPC (range assigned by DigitalOcean)
* uut c-8 ubuntu-24-04-x64
* uut c-8 ubuntu-22-04-x64
* ```
*
* Digests are shortened to their first and last 4 hex digits.
Expand Down
8 changes: 6 additions & 2 deletions src/infra/constants.ts
Original file line number Diff line number Diff line change
Expand Up @@ -4,8 +4,12 @@
export const DO_API_URL = "https://api.digitalocean.com/v2";
export const PUBLIC_IP_URL = "https://api.ipify.org";

/** The droplet OS image in v1. */
export const DROPLET_IMAGE = "ubuntu-24-04-x64";
/**
* The droplet OS image in v1. Not 24.04: on its kernel (6.8) SIPp 3.7.3 places
* ~5% fewer calls than its rate, then sends the ones it owes in a burst, which
* spoils capacity steps. On 22.04 (5.15) it holds the rate.
*/
export const DROPLET_IMAGE = "ubuntu-22-04-x64";

/** Every perfkit droplet carries it; sweep looks only at droplets with it. */
export const PERFKIT_TAG = "perfkit";
Expand Down
2 changes: 1 addition & 1 deletion test/infra/createPlanRun.unit.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -57,7 +57,7 @@ describe("createPlanRun", () => {
role: "uut",
name: `perfkit-${RUN_ID}-uut`,
size: "c-8",
image: "ubuntu-24-04-x64"
image: "ubuntu-22-04-x64"
});
expect(plan.loadgen.name).to.equal(`perfkit-${RUN_ID}-loadgen`);
expect(plan.images.map(({ ref }) => ref)).to.deep.equal([
Expand Down
2 changes: 1 addition & 1 deletion test/infra/createProvision.unit.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ describe("createProvision", () => {
expect(uut).to.deep.include({
vpc_uuid: client.vpcs[0]!.id,
tags: ["perfkit", `perfkit-run-${RUN_ID}`],
image: "ubuntu-24-04-x64",
image: "ubuntu-22-04-x64",
size: "c-8"
});
const [vpc] = client.callsTo("createVpc")[0] as [{ name: string }];
Expand Down
4 changes: 2 additions & 2 deletions test/infra/run.unit.test.ts
Original file line number Diff line number Diff line change
Expand Up @@ -27,8 +27,8 @@ const DELETED = "Everything this run created was deleted.";

const PLAN = `plan for Routr 2.31.5 (dry run, nothing created)
region nyc3, new VPC (range assigned by DigitalOcean)
uut c-8 ubuntu-24-04-x64
loadgen c-16 ubuntu-24-04-x64
uut c-8 ubuntu-22-04-x64
loadgen c-16 ubuntu-22-04-x64
firewall from the VPC: all ports (tcp/udp) and icmp; SSH (22) from 203.0.113.7 and the VPC only
tags perfkit, perfkit-run-${RUN_ID}
images fonoster/routr-edgeport:2.31.5@sha256:4f1c…e2a0
Expand Down
Loading