Skip to content

Commit

Permalink
Updates ndt-canary DS for GCP, not Equinix (#853)
Browse files Browse the repository at this point in the history
The ndt-canary DaemonSet was previously configured to work for Equinix
Metal machines, while we were testing those in production. That
experiment finished and the Metal machine deleted.

Now, we want to test MIGs in production. This commit simply copied
ndt-virtual.jsonnet over ndt-canary.jsonnet, then modified
ndt-canary.jsonnet to be appropriate for testing MIGs in production.
  • Loading branch information
nkinkade authored Sep 21, 2023
1 parent df4b598 commit 797ae0a
Showing 1 changed file with 17 additions and 6 deletions.
23 changes: 17 additions & 6 deletions k8s/daemonsets/experiments/ndt-canary.jsonnet
Original file line number Diff line number Diff line change
Expand Up @@ -30,30 +30,41 @@ exp.ExperimentNoIndex(expName, 'pusher-' + std.extVar('PROJECT_ID'), 'none', dat
hostNetwork: true,
nodeSelector: {
'mlab/type': 'virtual',
'mlab/run': 'ndt-canary',
'mlab/run': expName + '-canary',
},
serviceAccountName: 'heartbeat-experiment',
containers+: [
{
name: 'ndt-server',
image: 'measurementlab/ndt-server:' + exp.ndtCanaryVersion,
// Virtual machines are part of managed instances groups (MIG), and
// each VM name ends in a random suffix. The load balancer name for
// the machine (no suffix) is the name used to generate tokens, so
// we strip off suffix and use that name as the value for the
// -token.machine flag.
command: [
'/bin/sh',
'-c',
'/ndt-server -token.machine=${NODE_NAME/org-*/org} $@',
'--',
],
args: [
'-ndt5_addr=127.0.0.1:3002', // any non-public port.
'-ndt5_ws_addr=:3001', // default, public ndt5 port.
'-ndt5.token.required=true',
'-ndt7.token.required=true',
'-token.machine=$(NODE_NAME)',
'-htmldir=html/mlab',
'-uuid-prefix-file=' + exp.uuid.prefixfile,
'-prometheusx.listen-address=127.0.0.1:9990',
'-datadir=/var/spool/' + expName,
'-key=/certs/tls.key',
'-cert=/certs/tls.crt',
'-token.verify-key=/verify/jwk_sig_EdDSA_locate_20200409.pub',
'-txcontroller.device=bond0',
// Equinix machines of type m3-small-x86 have a 50Gbps
// unthrottled link. Set max-rate to 40Gbps.
'-txcontroller.max-rate=40000000000',
'-txcontroller.device=ens4',
// GCE VMs have an egress rate limit of 7Gbps to Internet
// addresses. Setting max-rate to 4Gbps should leave headroom for
// very fast clients.
'-txcontroller.max-rate=4000000000',
'-label=type=virtual',
'-label=deployment=canary',
'-label=external-ip=@' + exp.Metadata.path + '/external-ip',
Expand Down

0 comments on commit 797ae0a

Please sign in to comment.