alasio 9.0.0 → 10.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cli/src/bound-harnesses.js +98 -0
- package/dist/cli/src/bound-harnesses.js.map +1 -0
- package/dist/cli/src/branches.js +30 -14
- package/dist/cli/src/branches.js.map +1 -1
- package/dist/cli/src/cluster/docker.js +21 -11
- package/dist/cli/src/cluster/docker.js.map +1 -1
- package/dist/cli/src/cluster/host.js +5 -1
- package/dist/cli/src/cluster/host.js.map +1 -1
- package/dist/cli/src/cluster/k3s.js +68 -3
- package/dist/cli/src/cluster/k3s.js.map +1 -1
- package/dist/cli/src/cluster/node.js +47 -13
- package/dist/cli/src/cluster/node.js.map +1 -1
- package/dist/cli/src/cluster/stargz.js +40 -3
- package/dist/cli/src/cluster/stargz.js.map +1 -1
- package/dist/cli/src/commands/common.js +2 -2
- package/dist/cli/src/commands/common.js.map +1 -1
- package/dist/cli/src/commands/lake.js +1 -1
- package/dist/cli/src/commands/lake.js.map +1 -1
- package/dist/cli/src/commands/login-relay.js +91 -0
- package/dist/cli/src/commands/login-relay.js.map +1 -0
- package/dist/cli/src/commands/login.js +11 -10
- package/dist/cli/src/commands/login.js.map +1 -1
- package/dist/cli/src/commands/logs.js +89 -6
- package/dist/cli/src/commands/logs.js.map +1 -1
- package/dist/cli/src/commands/restart.js +10 -4
- package/dist/cli/src/commands/restart.js.map +1 -1
- package/dist/cli/src/commands/restore-filer-store.js +27 -10
- package/dist/cli/src/commands/restore-filer-store.js.map +1 -1
- package/dist/cli/src/commands/status.js +59 -12
- package/dist/cli/src/commands/status.js.map +1 -1
- package/dist/cli/src/commands/up.js +9 -6
- package/dist/cli/src/commands/up.js.map +1 -1
- package/dist/cli/src/commands/upgrade.js +14 -5
- package/dist/cli/src/commands/upgrade.js.map +1 -1
- package/dist/cli/src/folders.js +9 -13
- package/dist/cli/src/folders.js.map +1 -1
- package/dist/cli/src/gateway-calls.js +14 -8
- package/dist/cli/src/gateway-calls.js.map +1 -1
- package/dist/cli/src/install.js +7 -41
- package/dist/cli/src/install.js.map +1 -1
- package/dist/cli/src/kube/api.js +59 -12
- package/dist/cli/src/kube/api.js.map +1 -1
- package/dist/cli/src/kube/apply.js +107 -9
- package/dist/cli/src/kube/apply.js.map +1 -1
- package/dist/cli/src/kube/object-store-scale.js +10 -7
- package/dist/cli/src/kube/object-store-scale.js.map +1 -1
- package/dist/cli/src/kube/rollout.js +16 -6
- package/dist/cli/src/kube/rollout.js.map +1 -1
- package/dist/cli/src/main.js +2 -1
- package/dist/cli/src/main.js.map +1 -1
- package/dist/cli/src/manifests/admission.js +228 -11
- package/dist/cli/src/manifests/admission.js.map +1 -1
- package/dist/cli/src/manifests/alasio.js +151 -63
- package/dist/cli/src/manifests/alasio.js.map +1 -1
- package/dist/cli/src/manifests/branch.js +6 -1
- package/dist/cli/src/manifests/branch.js.map +1 -1
- package/dist/cli/src/manifests/codex-login.js +101 -0
- package/dist/cli/src/manifests/codex-login.js.map +1 -0
- package/dist/cli/src/manifests/collector.js +26 -21
- package/dist/cli/src/manifests/collector.js.map +1 -1
- package/dist/cli/src/manifests/common.js +50 -23
- package/dist/cli/src/manifests/common.js.map +1 -1
- package/dist/cli/src/manifests/config.js +79 -30
- package/dist/cli/src/manifests/config.js.map +1 -1
- package/dist/cli/src/manifests/disruption.js +8 -3
- package/dist/cli/src/manifests/disruption.js.map +1 -1
- package/dist/cli/src/manifests/folders.js +8 -5
- package/dist/cli/src/manifests/folders.js.map +1 -1
- package/dist/cli/src/manifests/harness-pools.js +236 -0
- package/dist/cli/src/manifests/harness-pools.js.map +1 -0
- package/dist/cli/src/manifests/image-holder.js +61 -0
- package/dist/cli/src/manifests/image-holder.js.map +1 -0
- package/dist/cli/src/manifests/index.js +6 -2
- package/dist/cli/src/manifests/index.js.map +1 -1
- package/dist/cli/src/manifests/keda.js +4 -2
- package/dist/cli/src/manifests/keda.js.map +1 -1
- package/dist/cli/src/manifests/lake.js +1 -17
- package/dist/cli/src/manifests/lake.js.map +1 -1
- package/dist/cli/src/manifests/log.js +63 -16
- package/dist/cli/src/manifests/log.js.map +1 -1
- package/dist/cli/src/manifests/neon.js +57 -77
- package/dist/cli/src/manifests/neon.js.map +1 -1
- package/dist/cli/src/manifests/network-policies.js +111 -39
- package/dist/cli/src/manifests/network-policies.js.map +1 -1
- package/dist/cli/src/manifests/node-agent.js +39 -19
- package/dist/cli/src/manifests/node-agent.js.map +1 -1
- package/dist/cli/src/manifests/object-store.js +98 -24
- package/dist/cli/src/manifests/object-store.js.map +1 -1
- package/dist/cli/src/manifests/sandbox-gateway.js +147 -46
- package/dist/cli/src/manifests/sandbox-gateway.js.map +1 -1
- package/dist/cli/src/manifests/scalers.js +5 -4
- package/dist/cli/src/manifests/scalers.js.map +1 -1
- package/dist/cli/src/manifests/sizing.js +1 -1
- package/dist/cli/src/manifests/sizing.js.map +1 -1
- package/dist/cli/src/manifests/valkey.js +19 -5
- package/dist/cli/src/manifests/valkey.js.map +1 -1
- package/dist/cli/src/manifests/volume-lock.js +43 -0
- package/dist/cli/src/manifests/volume-lock.js.map +1 -0
- package/dist/cli/src/manifests/vpa.js +12 -1
- package/dist/cli/src/manifests/vpa.js.map +1 -1
- package/dist/cli/src/manifests/workspace-storage.js +19 -16
- package/dist/cli/src/manifests/workspace-storage.js.map +1 -1
- package/dist/cli/src/neon-storage.js +0 -2
- package/dist/cli/src/neon-storage.js.map +1 -1
- package/dist/cli/src/release.js +9 -9
- package/dist/cli/src/release.js.map +1 -1
- package/dist/cli/src/target.js +2 -2
- package/dist/cli/src/target.js.map +1 -1
- package/dist/cli/src/telegram.js +13 -4
- package/dist/cli/src/telegram.js.map +1 -1
- package/dist/cli/src/wakes.js +68 -0
- package/dist/cli/src/wakes.js.map +1 -0
- package/dist/cli/src/webhook.js +5 -2
- package/dist/cli/src/webhook.js.map +1 -1
- package/dist/cluster/node/pins.json +6 -5
- package/dist/neon/control/branches.js +11 -4
- package/dist/neon/control/branches.js.map +1 -1
- package/dist/neon/control/endpoints.js +81 -10
- package/dist/neon/control/endpoints.js.map +1 -1
- package/dist/neon/control/secrets.js +11 -6
- package/dist/neon/control/secrets.js.map +1 -1
- package/dist/src/binder/bindings.js +195 -0
- package/dist/src/binder/bindings.js.map +1 -0
- package/dist/src/binder/names.js +30 -0
- package/dist/src/binder/names.js.map +1 -1
- package/dist/src/binder/tokens.js +17 -4
- package/dist/src/binder/tokens.js.map +1 -1
- package/dist/src/branch/names.js +10 -6
- package/dist/src/branch/names.js.map +1 -1
- package/dist/src/events/names.js +24 -3
- package/dist/src/events/names.js.map +1 -1
- package/dist/src/gateway/names.js +44 -5
- package/dist/src/gateway/names.js.map +1 -1
- package/dist/src/harness/names.js +18 -0
- package/dist/src/harness/names.js.map +1 -1
- package/dist/src/kube/client.js +212 -0
- package/dist/src/kube/client.js.map +1 -0
- package/dist/src/kube/sandbox-shape.js +6 -0
- package/dist/src/kube/sandbox-shape.js.map +1 -1
- package/dist/src/kube/started-map.js +12 -0
- package/dist/src/kube/started-map.js.map +1 -0
- package/dist/src/node-agent/names.js +16 -8
- package/dist/src/node-agent/names.js.map +1 -1
- package/dist/src/telegram/bot-commands.js +17 -0
- package/dist/src/telegram/bot-commands.js.map +1 -0
- package/dist/src/telegram/stop.js +12 -0
- package/dist/src/telegram/stop.js.map +1 -0
- package/package.json +1 -1
|
@@ -29,9 +29,10 @@
|
|
|
29
29
|
import { createHash } from "node:crypto";
|
|
30
30
|
import { isDeepStrictEqual } from "node:util";
|
|
31
31
|
import { Schema } from "effect";
|
|
32
|
-
import { freeLabels } from "../../../src/binder/names.js";
|
|
32
|
+
import { freeLabels, GATEWAY_READINESS, STOP_GRACE_SECONDS } from "../../../src/binder/names.js";
|
|
33
|
+
import { EVENTS_BROKERS_VARIABLE, EVENTS_PASSWORD_FILE_VARIABLE, EVENTS_USERNAME_VARIABLE } from "../../../src/events/names.js";
|
|
33
34
|
import { MAIN_ENVIRONMENT_NAME } from "../../../src/branch/names.js";
|
|
34
|
-
import { BINDING_KEY_VARIABLE, CALLER_KEY_VARIABLE,
|
|
35
|
+
import { BINDING_KEY_VARIABLE, CALLER_KEY_VARIABLE, GATEWAY_CONFIG_VARIABLE, GatewayConfig as GatewayConfigSchema, FOLDERS_NAMESPACE_VARIABLE, RECEIVER_PORT_VARIABLE, SESSIONS_NAMESPACE_VARIABLE, templateHash, } from "../../../src/gateway/names.js";
|
|
35
36
|
import { BAYMA_CONTAINER, BAYMA_STOP_SECONDS, CPU_FEATURES_ANNOTATION, NET_MODE_LABEL, SESSION_TEMPLATE_ANNOTATION, STOP_WAIT_ARG } from "../../../src/kube/sandbox-shape.js";
|
|
36
37
|
import { ATTACH_ROOT, goferOf, gvisorRuntimeClass, NODE_AGENT_PORT, NODE_AGENT_TOKEN_VARIABLE, WORKSPACES_ROOT } from "../../../src/node-agent/names.js";
|
|
37
38
|
import { memoryBytes } from "../capacity.js";
|
|
@@ -40,11 +41,13 @@ import { imageReference } from "../images.js";
|
|
|
40
41
|
import { READY_ONCE_BOUND_ANNOTATION } from "../kube/rollout.js";
|
|
41
42
|
import { sessionsNamespace, stopWaitSeconds } from "./alasio.js";
|
|
42
43
|
import { folderTemplate, foldersRun } from "./folders.js";
|
|
43
|
-
import {
|
|
44
|
+
import { harnessesConfig } from "./harness-pools.js";
|
|
45
|
+
import { accountRole, APPLIED_AFTER_ANNOTATION, appliedAfter, componentName, given, imagePullSecrets, labels, MAIN_ENVIRONMENT, NAMESPACE, otelEnv, RELEASE, replicasOf, restrictedContainer, restrictedPod, selectorLabels, sha256, TINI_SUBREAPER, } from "./common.js";
|
|
44
46
|
import { resumedConditionPolicy, sandboxPodPolicy } from "./admission.js";
|
|
45
47
|
import { durationSeconds } from "./config.js";
|
|
46
48
|
import { LOG_BROKERS, logPrincipalSecret } from "./log.js";
|
|
47
49
|
import { boundBudget } from "./disruption.js";
|
|
50
|
+
import { FILER_STORE } from "./object-store.js";
|
|
48
51
|
import { priority } from "./priorities.js";
|
|
49
52
|
import { scaledObject } from "./scalers.js";
|
|
50
53
|
import { verticalPodAutoscaler } from "./sizing.js";
|
|
@@ -67,10 +70,6 @@ export const POOL_POD_PORT = 7290;
|
|
|
67
70
|
export const POOLS = { none: "sandboxes-none", full: "sandboxes-full" };
|
|
68
71
|
/** The component of a pool's pods: a session's. */
|
|
69
72
|
export const POOL_COMPONENT = "session";
|
|
70
|
-
/** Whether the sandbox service runs: for session workspaces on workspace storage, where the node agents run, which attach them, and Neon's setup makes its keys. */
|
|
71
|
-
export function sandboxServiceRuns(config) {
|
|
72
|
-
return config.workspaceStorage.enabled && nodeAgentRuns(config);
|
|
73
|
-
}
|
|
74
73
|
/** The pools of `environment`, by its sessions' internet. */
|
|
75
74
|
export const poolsOf = (config, environment) => {
|
|
76
75
|
const namespace = sessionsNamespace(config, environment);
|
|
@@ -87,7 +86,7 @@ export const poolsOf = (config, environment) => {
|
|
|
87
86
|
*/
|
|
88
87
|
export function carriedPools(config, liveGateway, kept) {
|
|
89
88
|
const none = { none: null, full: null };
|
|
90
|
-
if (!
|
|
89
|
+
if (!poolsSnapshotted(kept.cpuBaseline) || liveGateway === undefined)
|
|
91
90
|
return none;
|
|
92
91
|
const held = Schema.decodeUnknownOption(Schema.fromJsonString(GatewayConfigSchema))(liveGateway);
|
|
93
92
|
if (held._tag === "None" || held.value.snapshots === null)
|
|
@@ -114,8 +113,8 @@ export function recordedCpuBaseline(liveGateway) {
|
|
|
114
113
|
const recorded = held.value.snapshots?.templates.none.current?.metadata?.annotations?.[CPU_FEATURES_ANNOTATION];
|
|
115
114
|
return recorded ? recorded.split(",") : null;
|
|
116
115
|
}
|
|
117
|
-
/** Whether the sandbox pools' sessions are snapshotted: where the
|
|
118
|
-
export const poolsSnapshotted = (
|
|
116
|
+
/** Whether the sandbox pools' sessions are snapshotted: where the nodes' CPU baseline is recorded, which they are held to. */
|
|
117
|
+
export const poolsSnapshotted = (cpuBaseline) => cpuBaseline !== null;
|
|
119
118
|
/**
|
|
120
119
|
* The template of a pool's pods, as the module says: a session's, under its internet `mode`.
|
|
121
120
|
* Where its sessions are snapshotted (poolsSnapshotted), as main's are by the gateway, it holds
|
|
@@ -126,7 +125,7 @@ export const poolsSnapshotted = (config, cpuBaseline) => nodeAgentRuns(config) &
|
|
|
126
125
|
*/
|
|
127
126
|
export function poolTemplate(config, pool, mode, cpuBaseline) {
|
|
128
127
|
const template = unhashedPoolTemplate(config, pool, mode, cpuBaseline);
|
|
129
|
-
if (!poolsSnapshotted(
|
|
128
|
+
if (!poolsSnapshotted(cpuBaseline))
|
|
130
129
|
return template;
|
|
131
130
|
return { ...template, metadata: { ...template.metadata, annotations: { ...template.metadata?.annotations, [SESSION_TEMPLATE_ANNOTATION]: templateHash(template) } } };
|
|
132
131
|
}
|
|
@@ -134,7 +133,7 @@ export function poolTemplate(config, pool, mode, cpuBaseline) {
|
|
|
134
133
|
function unhashedPoolTemplate(config, pool, mode, cpuBaseline) {
|
|
135
134
|
const { sessions } = config;
|
|
136
135
|
const agent = imageReference(config.images.agent);
|
|
137
|
-
const snapshotted = poolsSnapshotted(
|
|
136
|
+
const snapshotted = poolsSnapshotted(cpuBaseline);
|
|
138
137
|
return {
|
|
139
138
|
metadata: {
|
|
140
139
|
labels: { "app.kubernetes.io/part-of": "alasio", "app.kubernetes.io/instance": RELEASE, "app.kubernetes.io/component": POOL_COMPONENT, [NET_MODE_LABEL]: mode, ...freeLabels(pool) },
|
|
@@ -173,8 +172,11 @@ function unhashedPoolTemplate(config, pool, mode, cpuBaseline) {
|
|
|
173
172
|
"0.0.0.0",
|
|
174
173
|
"--port",
|
|
175
174
|
String(POOL_POD_PORT),
|
|
175
|
+
// Its home's, named through the pod's own mount, where its node's agent reads what a live
|
|
176
|
+
// save caught (src/node-agent/volume.ts hostPathOf), and not through the image's link
|
|
177
|
+
// of /home/agent to it, which no mount of the pod names.
|
|
176
178
|
"--state-dir",
|
|
177
|
-
"/home
|
|
179
|
+
"/attach/ws/home/.bayma",
|
|
178
180
|
"--token-file",
|
|
179
181
|
"/attach/token",
|
|
180
182
|
"--telemetry-token-file",
|
|
@@ -243,7 +245,7 @@ function gatewayConfig(config, carried) {
|
|
|
243
245
|
// A new session's volume's size, as the configuration checks it.
|
|
244
246
|
quotaBytes: memoryBytes(config.sessions.storage.size),
|
|
245
247
|
// Under the releases the cluster keeps, each restored with a RuntimeClass of its own.
|
|
246
|
-
snapshots: poolsSnapshotted(
|
|
248
|
+
snapshots: poolsSnapshotted(carried.cpuBaseline)
|
|
247
249
|
? {
|
|
248
250
|
liveEverySeconds: durationSeconds(config.sessions.snapshots.liveEvery) ?? 0,
|
|
249
251
|
releases: carried.gvisorReleases.map((release) => ({ release, runtimeClassName: gvisorRuntimeClass(release), gofer: goferOf(release, NODE_PINS.gvisor.restoresThroughSocketSince) })),
|
|
@@ -261,6 +263,8 @@ function gatewayConfig(config, carried) {
|
|
|
261
263
|
folders: foldersRun(config)
|
|
262
264
|
? { namespace: config.host.namespace, template: { ...folderTemplate(config) }, stateRoot: config.host.stateRoot, releaseAfterSeconds: durationSeconds(config.host.releaseAfter) ?? 0 }
|
|
263
265
|
: null,
|
|
266
|
+
// Conversations' harnesses' pools, where they run in pools of their own.
|
|
267
|
+
harnesses: harnessesConfig(config),
|
|
264
268
|
};
|
|
265
269
|
}
|
|
266
270
|
/**
|
|
@@ -326,13 +330,15 @@ function gatewayObjects(config, carried) {
|
|
|
326
330
|
spec: {
|
|
327
331
|
serviceAccountName: GATEWAY,
|
|
328
332
|
...priority("floor"),
|
|
333
|
+
// Its front's calls under way let end as it stops (src/binder/server.ts).
|
|
334
|
+
terminationGracePeriodSeconds: STOP_GRACE_SECONDS,
|
|
329
335
|
securityContext: restrictedPod(1000, 1000),
|
|
330
336
|
...imagePullSecrets(config),
|
|
331
337
|
containers: [{
|
|
332
338
|
name: GATEWAY_COMPONENT,
|
|
333
339
|
image: imageReference(config.images.alasio),
|
|
334
340
|
imagePullPolicy: config.images.pullPolicy,
|
|
335
|
-
|
|
341
|
+
args: ["node", "/opt/alasio/src/gateway/main.ts"],
|
|
336
342
|
env: [
|
|
337
343
|
{ name: GATEWAY_CONFIG_VARIABLE, value: "/etc/gateway/config.json" },
|
|
338
344
|
key(CALLER_KEY_VARIABLE, "caller-key"),
|
|
@@ -346,7 +352,7 @@ function gatewayObjects(config, carried) {
|
|
|
346
352
|
...(otelEnv(config).length > 0 ? [{ name: "OTEL_SERVICE_NAME", value: GATEWAY }, ...otelEnv(config)] : []),
|
|
347
353
|
],
|
|
348
354
|
ports: [{ name: "gateway", containerPort: GATEWAY_PORT }],
|
|
349
|
-
readinessProbe: { httpGet: { path: "/healthz", port: "gateway" },
|
|
355
|
+
readinessProbe: { httpGet: { path: "/healthz", port: "gateway" }, ...GATEWAY_READINESS },
|
|
350
356
|
securityContext: restrictedContainer(),
|
|
351
357
|
resources: config.sessions.gateway.resources,
|
|
352
358
|
volumeMounts: [{ name: "config", mountPath: "/etc/gateway", readOnly: true }, { name: "log", mountPath: "/run/alasio/log", readOnly: true }],
|
|
@@ -385,7 +391,7 @@ function receiverObjects(config) {
|
|
|
385
391
|
name: RECEIVER_COMPONENT,
|
|
386
392
|
image: imageReference(config.images.alasio),
|
|
387
393
|
imagePullPolicy: config.images.pullPolicy,
|
|
388
|
-
|
|
394
|
+
args: ["node", "/opt/alasio/src/receiver/main.ts"],
|
|
389
395
|
env: [
|
|
390
396
|
{ name: RECEIVER_PORT_VARIABLE, value: String(port) },
|
|
391
397
|
{ name: BINDING_KEY_VARIABLE, valueFrom: { secretKeyRef: { name: GATEWAY, key: "binding-key" } } },
|
|
@@ -443,6 +449,12 @@ function mountServicesChecksum(config, uids) {
|
|
|
443
449
|
const reached = { metadata: VALKEY_ADDRESS, bucket: workspacesBucketUrl(config), services: Object.fromEntries(mountServices(config).map((name) => [name, uids[name] ?? null])) };
|
|
444
450
|
return createHash("sha256").update(JSON.stringify(reached)).digest("hex").slice(0, 16);
|
|
445
451
|
}
|
|
452
|
+
/**
|
|
453
|
+
* How long a mount's juicefs has to serve the node's mount once it starts: past what a takeover
|
|
454
|
+
* takes, juicefs's own waits in it bounded at some 70 s (the FUSE session's fd, then the old
|
|
455
|
+
* mount's end), and a fresh mount, a matter of seconds.
|
|
456
|
+
*/
|
|
457
|
+
export const MOUNT_SERVE_WAIT_SECONDS = 180;
|
|
446
458
|
export const MOUNT_PATHS = {
|
|
447
459
|
run: MOUNT_RUN,
|
|
448
460
|
bin: JUICEFS_BIN,
|
|
@@ -452,6 +464,7 @@ export const MOUNT_PATHS = {
|
|
|
452
464
|
mountinfo: "/proc/1/mountinfo",
|
|
453
465
|
inNode: "nsenter -t 1 -m --",
|
|
454
466
|
resolve: "getent hosts",
|
|
467
|
+
fuseConnections: "/sys/fs/fuse/connections",
|
|
455
468
|
};
|
|
456
469
|
/**
|
|
457
470
|
* The script of a workspace mount's pod: JuiceFS's mount of workspace storage at `root`, made
|
|
@@ -463,8 +476,18 @@ export const MOUNT_PATHS = {
|
|
|
463
476
|
*
|
|
464
477
|
* Its juicefs is JuiceFS's static release, of alasio's image, which runs as it is in the node's
|
|
465
478
|
* namespace: copied to the node, under its digest, never over the one a mount runs. A mount left
|
|
466
|
-
* at `root` whose juicefs is gone, as a pod killed with no successor leaves one,
|
|
467
|
-
*
|
|
479
|
+
* at `root` whose juicefs is gone, as a pod killed with no successor leaves one, which the kernel
|
|
480
|
+
* answers as not connected, or whose juicefs answers nothing within 5 s, as one stopped or hung
|
|
481
|
+
* does, not even of what it holds in memory, is unmounted first, lazily, so the next mounts
|
|
482
|
+
* afresh.
|
|
483
|
+
*
|
|
484
|
+
* Its juicefs, taking a mount over or mounting afresh, serves within MOUNT_SERVE_WAIT_SECONDS
|
|
485
|
+
* (`serveWaitSeconds`), or is ended, and the mount fails, so kubelet starts it again, to mount
|
|
486
|
+
* afresh: a takeover whose old mount stopped answering waits, in juicefs's own reads of it, for
|
|
487
|
+
* as long as it does, and no juicefs serves the node's mount meanwhile. Ended so, or unmounted as
|
|
488
|
+
* one that answers nothing, the node's mount has its FUSE connection aborted first: a request on
|
|
489
|
+
* a session no process will answer, as a juicefs makes of the one it takes over and holds, waits
|
|
490
|
+
* where no signal ends it, KILL among them, until its connection is aborted, which fails it.
|
|
468
491
|
*
|
|
469
492
|
* In the node's mount namespace its juicefs reads the node's resolv.conf, which resolves none of
|
|
470
493
|
* the cluster's names, its network the pod's still: so the metadata engine's and the bucket's,
|
|
@@ -476,11 +499,33 @@ export const MOUNT_PATHS = {
|
|
|
476
499
|
* Its juicefs, run in the node's mount namespace, is still this pod's process, of its cgroup: the
|
|
477
500
|
* pod's teardown kills it. So a pod hands its mount over before it is torn down, never after: the
|
|
478
501
|
* pod that replaces it starts beside it (maxSurge), takes its FUSE session over, and only then is
|
|
479
|
-
* it deleted, idle, its juicefs ended already
|
|
502
|
+
* it deleted, idle, its juicefs ended already, which its readiness keeps it from until then
|
|
503
|
+
* (workspaceMountReady). `paths` are MOUNT_PATHS but for tests.
|
|
480
504
|
*/
|
|
481
|
-
export function workspaceMountScript(root, cacheSizeMiB, paths = MOUNT_PATHS) {
|
|
482
|
-
const { run, bin, state, cache, juicefs, mountinfo, inNode, resolve } = paths;
|
|
505
|
+
export function workspaceMountScript(root, cacheSizeMiB, paths = MOUNT_PATHS, serveWaitSeconds = MOUNT_SERVE_WAIT_SECONDS) {
|
|
506
|
+
const { run, bin, state, cache, juicefs, mountinfo, inNode, resolve, fuseConnections } = paths;
|
|
483
507
|
return [
|
|
508
|
+
// The FUSE connection of the node's mount at the root aborted, where its mount there, the
|
|
509
|
+
// topmost, is a FUSE file system's: every request on it fails, those no process will ever
|
|
510
|
+
// answer among them, as one a juicefs makes of the very session it takes over and holds,
|
|
511
|
+
// which leaves it waiting where no signal, not even KILL, ends it. Its connection is named by
|
|
512
|
+
// the minor of the mount's device, under fusectl's mount, made where the node has none.
|
|
513
|
+
"aborted() {",
|
|
514
|
+
` connection=$(awk -v root=${root} '$5 == root { connection = ""; for (i = 6; i < NF; i += 1) if ($i == "-") { if ($(i + 1) ~ /^fuse(\\.|$)/) { split($3, device, ":"); connection = device[2] }; break } } END { print connection }' ${mountinfo})`,
|
|
515
|
+
' [ -n "$connection" ] || return 0',
|
|
516
|
+
` grep -qF ' ${fuseConnections} ' ${mountinfo} || ${inNode} mount -t fusectl none ${fuseConnections}`,
|
|
517
|
+
` ${inNode} sh -c 'echo 1 > "$1"' sh "${fuseConnections}/$connection/abort" && echo "aborted the FUSE connection $connection of the node's mount, so what waits on it fails"`,
|
|
518
|
+
"}",
|
|
519
|
+
// Whether the node's mount at the root answers its .config within 5 s, which juicefs answers
|
|
520
|
+
// of its own memory, what the read said kept in $run/probed: where not, no process serves it,
|
|
521
|
+
// or one stopped or hung does. Not waited on past that: a read juicefs took but never
|
|
522
|
+
// answers waits where no signal ends it, until the connection is aborted, which frees it.
|
|
523
|
+
"answers() {",
|
|
524
|
+
` rm -f "$run/answered" "$run/probed"`,
|
|
525
|
+
` ( ${inNode} cat ${root}/.config > /dev/null 2> "$run/probed"; : > "$run/answered" ) &`,
|
|
526
|
+
` for tick in 1 2 3 4 5; do sleep 1; [ -e "$run/answered" ] && return 0; done`,
|
|
527
|
+
" return 1",
|
|
528
|
+
"}",
|
|
484
529
|
// `url`, its host a Service's name given as its address, by the pod's DNS.
|
|
485
530
|
"resolved() {",
|
|
486
531
|
' scheme=${1%%://*}; rest=${1#*://}; auth=""',
|
|
@@ -492,6 +537,11 @@ export function workspaceMountScript(root, cacheSizeMiB, paths = MOUNT_PATHS) {
|
|
|
492
537
|
" esac",
|
|
493
538
|
` printf '%s://%s%s%s\n' "$scheme" "$auth" "$address" "$tail"`,
|
|
494
539
|
"}",
|
|
540
|
+
// Told to stop (TERM, INT) at any time, the script's start among it: noted, and passed on to
|
|
541
|
+
// its juicefs, as it runs; before it runs, it is not started.
|
|
542
|
+
"pid=",
|
|
543
|
+
"termed=",
|
|
544
|
+
`trap 'termed=1; [ -z "$pid" ] || kill -TERM "$pid"' TERM INT`,
|
|
495
545
|
// The metadata engine's password given in META_PASSWORD, which JuiceFS reads, not in its
|
|
496
546
|
// address on the command line, which every process of the node's PIDs could read.
|
|
497
547
|
`META_PASSWORD=$(node -e 'process.stdout.write(decodeURIComponent(new URL(process.env.META_URL).password))') || exit 1`,
|
|
@@ -499,28 +549,68 @@ export function workspaceMountScript(root, cacheSizeMiB, paths = MOUNT_PATHS) {
|
|
|
499
549
|
`meta=$(resolved "$(node -e 'const url = new URL(process.env.META_URL); url.password = ""; process.stdout.write(url.href)')") || exit 1`,
|
|
500
550
|
'bucket=$(resolved "$BUCKET") || exit 1',
|
|
501
551
|
`run=${run}`,
|
|
502
|
-
`mkdir -p "$run" ${bin} ${state} ${cache}`,
|
|
503
|
-
`rm -f "$run/handed-over"`,
|
|
552
|
+
`mkdir -p "$run" ${bin} ${state} ${cache} || exit 1`,
|
|
553
|
+
`rm -f "$run/handed-over" "$run/expired"`,
|
|
504
554
|
// Made, empty, before the mount starts or the log is followed, which would not find it yet.
|
|
505
555
|
`: > "$run/juicefs.log"`,
|
|
506
|
-
|
|
507
|
-
|
|
508
|
-
|
|
509
|
-
`
|
|
510
|
-
|
|
556
|
+
// Named by its digest, read whole: a read that fails, as one of a layer lazily pulled may, stops
|
|
557
|
+
// the mount, which kubelet starts again, rather than run a juicefs of no digest, which is none.
|
|
558
|
+
`digest=$(sha256sum ${juicefs}) || { echo "could not read ${juicefs}, so the mount is not started" >&2; exit 1; }`,
|
|
559
|
+
`node_juicefs="${bin}/juicefs-$(printf '%.16s' "$digest")"`,
|
|
560
|
+
// Copied beside it under a name of its own, made by mktemp, and moved into place, so no
|
|
561
|
+
// pod's half-written copy is run: no $$, which Kubernetes makes $ in a container's command.
|
|
562
|
+
`if [ ! -x "$node_juicefs" ]; then`,
|
|
563
|
+
` copying=$(mktemp "${bin}/.juicefs.XXXXXX") && { cp ${juicefs} "$copying" && chmod 755 "$copying" && mv "$copying" "$node_juicefs"; } || { rm -f "$copying"; echo "could not copy ${juicefs} to the node, so the mount is not started" >&2; exit 1; }`,
|
|
564
|
+
"fi",
|
|
565
|
+
// A mount of a juicefs gone, which its kernel answers as no longer connected, or of one that
|
|
566
|
+
// answers nothing within 5 s: unmounted, so this one mounts afresh. Asked of its .config,
|
|
567
|
+
// which juicefs answers of its own memory, never its metadata engine's (JuiceFS's
|
|
568
|
+
// pkg/vfs/internal.go), so a juicefs that serves still, however slow its metadata engine
|
|
569
|
+
// is, or unreachable, as it is where `up` rolls the mount, is answered and taken over, its
|
|
570
|
+
// workspaces kept. Its takeover reads the same file (cmd/mount.go).
|
|
571
|
+
`if awk -v root=${root} '$5 == root { found = 1 } END { exit !found }' ${mountinfo}; then`,
|
|
572
|
+
" if ! answers; then",
|
|
573
|
+
" aborted",
|
|
574
|
+
` ${inNode} umount -l ${root} && echo "unmounted the node's mount, whose juicefs answered nothing in 5 s, not even its .config"`,
|
|
575
|
+
` elif grep -qi 'not connected' "$run/probed"; then`,
|
|
576
|
+
` ${inNode} umount -l ${root} && echo "unmounted the node's mount its juicefs left, which served nothing"`,
|
|
577
|
+
" fi",
|
|
511
578
|
"fi",
|
|
512
579
|
`${inNode} mkdir -p ${root}`,
|
|
580
|
+
`if [ -n "$termed" ]; then echo "told to stop before its juicefs started, so it starts none"; exit 0; fi`,
|
|
513
581
|
`TMPDIR=${state} ${inNode} "$node_juicefs" mount --no-bgjob --metrics 0.0.0.0:${JUICEFS_METRICS_PORT} --bucket "$bucket" --cache-dir ${cache} --cache-size ${cacheSizeMiB} "$meta" ${root} >> "$run/juicefs.log" 2>&1 &`,
|
|
514
582
|
"pid=$!",
|
|
583
|
+
// Told to stop as it started, before its PID was known: passed on now.
|
|
584
|
+
`[ -z "$termed" ] || kill -TERM "$pid"`,
|
|
515
585
|
`echo "$pid" > "$run/juicefs.pid"`,
|
|
516
586
|
`tail -n +1 -f "$run/juicefs.log" &`,
|
|
517
587
|
"tailer=$!",
|
|
518
|
-
|
|
588
|
+
// Ended where it serves nothing within its wait, its watcher's end awaited then (expired):
|
|
589
|
+
// what each of its goroutines waits on said, into its log, as Go says it on QUIT, of it and
|
|
590
|
+
// of each process it runs, while their main threads run still, as a KILLed process one of
|
|
591
|
+
// whose threads waits on yet says nothing. Then, where the node's mount answers nothing, as
|
|
592
|
+
// where it holds the session no process serves, its FUSE connection aborted, as what holds
|
|
593
|
+
// it up may be a request on it that nothing answers, which no signal ends; TERM, and KILL 5 s
|
|
594
|
+
// on; and the mount, dead, unmounted, so the next mounts afresh. Where it answers, it is the
|
|
595
|
+
// mount of the pod this replaces, served still, which the next takes over again.
|
|
596
|
+
"(",
|
|
597
|
+
` for second in $(seq ${serveWaitSeconds}); do grep -qF '${SERVING}' "$run/juicefs.log" && exit 0; kill -0 "$pid" 2>/dev/null || exit 0; sleep 1; done`,
|
|
598
|
+
` : > "$run/expired"`,
|
|
599
|
+
` echo "juicefs served nothing within ${serveWaitSeconds} s of starting, so it is ended, and the mount started again to mount afresh" >&2`,
|
|
600
|
+
` for proc in /proc/[0-9]*; do [ "$(sed 's/.*) //' "$proc/stat" 2>/dev/null | cut -d ' ' -f 2)" = "$pid" ] && kill -QUIT "\${proc#/proc/}" 2>/dev/null; done`,
|
|
601
|
+
` kill -QUIT "$pid" 2>/dev/null; sleep 2`,
|
|
602
|
+
" dead=",
|
|
603
|
+
" if ! answers; then aborted; dead=1; fi",
|
|
604
|
+
` kill -TERM "$pid" 2>/dev/null; sleep 5; kill -KILL "$pid" 2>/dev/null`,
|
|
605
|
+
` if [ -n "$dead" ]; then ${inNode} umount -l ${root} && echo "unmounted the node's mount, which no juicefs served"; fi`,
|
|
606
|
+
") &",
|
|
607
|
+
"watcher=$!",
|
|
519
608
|
`wait "$pid"; code=$?`,
|
|
520
609
|
// A TERM's wait ends as the trap runs; the mount's own end is waited for.
|
|
521
610
|
`while kill -0 "$pid" 2>/dev/null; do wait "$pid"; code=$?; done`,
|
|
522
611
|
"sleep 1",
|
|
523
|
-
`
|
|
612
|
+
`if [ -e "$run/expired" ]; then wait "$watcher"; fi`,
|
|
613
|
+
`kill "$tailer" "$watcher" 2>/dev/null`,
|
|
524
614
|
`if grep -qF '${HANDED_OVER}' "$run/juicefs.log"; then`,
|
|
525
615
|
` touch "$run/handed-over"`,
|
|
526
616
|
" echo 'the mount is handed over to the pod that replaces this one, which is idle until it is deleted'",
|
|
@@ -534,19 +624,26 @@ export function workspaceMountScript(root, cacheSizeMiB, paths = MOUNT_PATHS) {
|
|
|
534
624
|
}
|
|
535
625
|
/**
|
|
536
626
|
* The readiness of a workspace mount's pod: its own juicefs runs, has said it serves the mount
|
|
537
|
-
* point (SERVING), and
|
|
538
|
-
*
|
|
539
|
-
*
|
|
540
|
-
*
|
|
627
|
+
* point (SERVING), and the node's mount table holds JuiceFS's mount at `root`: this pod's juicefs
|
|
628
|
+
* serves the node's mount point. The table alone holds the mount of the pod it replaces as its
|
|
629
|
+
* juicefs starts, before it takes that mount over, which the pod it replaces would be deleted
|
|
630
|
+
* for, its mount with it.
|
|
631
|
+
*
|
|
632
|
+
* Or it has handed its mount over, its part done: ready still, until its DaemonSet's update
|
|
633
|
+
* deletes it, once the pod that took its mount over is ready. Kubernetes keeps two of a
|
|
634
|
+
* DaemonSet's pods on a node, a surge's, only while the new is not ready and the old is; were
|
|
635
|
+
* neither ready, it deletes the old at once (the DaemonSet controller's podsShouldBeOnNode),
|
|
636
|
+
* whatever the update's maxUnavailable, and the node has no ready pod of its mount while the
|
|
637
|
+
* takeover runs on.
|
|
541
638
|
*/
|
|
542
639
|
export function workspaceMountReady(root, paths = MOUNT_PATHS) {
|
|
543
640
|
const { run, mountinfo } = paths;
|
|
544
|
-
|
|
545
|
-
`[ ! -e ${run}/handed-over ]`,
|
|
641
|
+
const serving = [
|
|
546
642
|
`kill -0 "$(cat ${run}/juicefs.pid)" 2>/dev/null`,
|
|
547
643
|
`grep -qF '${SERVING}' ${run}/juicefs.log`,
|
|
548
644
|
`awk -v root=${root} '$5 == root { for (i = 6; i < NF; i += 1) if ($i == "-") { if ($(i + 1) == "fuse.juicefs") found = 1; break } } END { exit !found }' ${mountinfo}`,
|
|
549
645
|
].join(" && ");
|
|
646
|
+
return `[ -e ${run}/handed-over ] || { ${serving}; }`;
|
|
550
647
|
}
|
|
551
648
|
/**
|
|
552
649
|
* The node's mount of workspace storage, at WORKSPACES_ROOT, the node's own (workspaceMountScript),
|
|
@@ -564,7 +661,15 @@ function workspaceMount(config, mountServices) {
|
|
|
564
661
|
return {
|
|
565
662
|
apiVersion: "apps/v1",
|
|
566
663
|
kind: "DaemonSet",
|
|
567
|
-
metadata: {
|
|
664
|
+
metadata: {
|
|
665
|
+
name: WORKSPACE_MOUNT,
|
|
666
|
+
namespace: NAMESPACE,
|
|
667
|
+
labels: labels(WORKSPACE_MOUNT_COMPONENT),
|
|
668
|
+
// Rolled only once the Valkeys it reaches are ready, its metadata engine's and the
|
|
669
|
+
// bucket's filer store's: a pod that takes its predecessor's FUSE session over while its
|
|
670
|
+
// metadata engine restarts may never serve it.
|
|
671
|
+
annotations: { [APPLIED_AFTER_ANNOTATION]: appliedAfter([{ kind: "StatefulSet", namespace: NAMESPACE, name: VALKEY }, { kind: "StatefulSet", namespace: NAMESPACE, name: FILER_STORE }]) },
|
|
672
|
+
},
|
|
568
673
|
spec: {
|
|
569
674
|
selector: { matchLabels: selectorLabels(WORKSPACE_MOUNT_COMPONENT) },
|
|
570
675
|
updateStrategy: { type: "RollingUpdate", rollingUpdate: { maxSurge: 1, maxUnavailable: 0 } },
|
|
@@ -585,8 +690,8 @@ function workspaceMount(config, mountServices) {
|
|
|
585
690
|
name: WORKSPACE_MOUNT_COMPONENT,
|
|
586
691
|
image: imageReference(config.images.alasio),
|
|
587
692
|
imagePullPolicy: config.images.pullPolicy,
|
|
588
|
-
|
|
589
|
-
env: [credential("META_URL", "metaurl"), credential("BUCKET", "bucket"), credential("ACCESS_KEY", "access-key"), credential("SECRET_KEY", "secret-key")],
|
|
693
|
+
args: ["sh", "-c", workspaceMountScript(WORKSPACES_ROOT, config.workspaceStorage.cacheSizeMiB)],
|
|
694
|
+
env: [TINI_SUBREAPER, credential("META_URL", "metaurl"), credential("BUCKET", "bucket"), credential("ACCESS_KEY", "access-key"), credential("SECRET_KEY", "secret-key")],
|
|
590
695
|
ports: [{ name: "metrics", containerPort: JUICEFS_METRICS_PORT }],
|
|
591
696
|
readinessProbe: { exec: { command: ["sh", "-c", workspaceMountReady(WORKSPACES_ROOT)] }, periodSeconds: 2 },
|
|
592
697
|
securityContext: { privileged: true },
|
|
@@ -606,8 +711,6 @@ function workspaceMount(config, mountServices) {
|
|
|
606
711
|
* may do there, binding in its pools, and the receiver, watching their Leases.
|
|
607
712
|
*/
|
|
608
713
|
export function sandboxPoolObjects(config, environment, cpuBaseline) {
|
|
609
|
-
if (!sandboxServiceRuns(config))
|
|
610
|
-
return [];
|
|
611
714
|
const pools = poolsOf(config, environment);
|
|
612
715
|
const namespace = pools.none.namespace;
|
|
613
716
|
return [
|
|
@@ -632,8 +735,6 @@ export function sandboxPoolObjects(config, environment, cpuBaseline) {
|
|
|
632
735
|
}
|
|
633
736
|
/** The sandbox service's objects: its gateway, its receiver, and the nodes' mount, main's alone, which serve every environment, and main's pools. */
|
|
634
737
|
export function sandboxServiceObjects(config, carried) {
|
|
635
|
-
if (!sandboxServiceRuns(config))
|
|
636
|
-
return [];
|
|
637
738
|
const mount = workspaceMount(config, carried.mountServices);
|
|
638
739
|
const pools = poolsOf(config, MAIN_ENVIRONMENT);
|
|
639
740
|
return [
|
|
@@ -643,7 +744,7 @@ export function sandboxServiceObjects(config, carried) {
|
|
|
643
744
|
...sandboxPodPolicy([poolTemplate(config, pools.none, "none", carried.cpuBaseline), poolTemplate(config, pools.full, "full", carried.cpuBaseline)], {
|
|
644
745
|
sessionsNamespace: sessionsNamespace(config, MAIN_ENVIRONMENT),
|
|
645
746
|
// Main's restores, by the gateway alone, onto each pool's template and the one before it, under the releases kept.
|
|
646
|
-
restores: poolsSnapshotted(
|
|
747
|
+
restores: poolsSnapshotted(carried.cpuBaseline)
|
|
647
748
|
? {
|
|
648
749
|
restorer: GATEWAY_USER,
|
|
649
750
|
templates: ["none", "full"].flatMap((mode) => [poolTemplate(config, pools[mode], mode, carried.cpuBaseline), ...(carried.previousPools[mode] ? [carried.previousPools[mode]] : [])]),
|
|
@@ -652,7 +753,7 @@ export function sandboxServiceObjects(config, carried) {
|
|
|
652
753
|
: null,
|
|
653
754
|
}),
|
|
654
755
|
// Where main's sessions are snapshotted, what the gateway may set of a restore's pod's status.
|
|
655
|
-
...(poolsSnapshotted(
|
|
756
|
+
...(poolsSnapshotted(carried.cpuBaseline) ? resumedConditionPolicy(componentName("resumed-condition"), GATEWAY_USER, pools.none.namespace) : []),
|
|
656
757
|
...receiverObjects(config),
|
|
657
758
|
...sandboxPoolObjects(config, MAIN_ENVIRONMENT, carried.cpuBaseline),
|
|
658
759
|
mount,
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sandbox-gateway.js","sourceRoot":"","sources":["../../../../src/manifests/sandbox-gateway.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"sandbox-gateway.js","sourceRoot":"","sources":["../../../../src/manifests/sandbox-gateway.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { scaled } from "./common.js";
|
|
2
|
-
/** The ScaledObject of `workload`, of `scale`, on `triggers
|
|
3
|
-
export function scaledObject(workload, scale, triggers) {
|
|
4
|
-
return scaledOn(workload, scale, triggers, undefined);
|
|
2
|
+
/** The ScaledObject of `workload`, of `scale`, on `triggers`, as often and as long as `timing` says, KEDA's defaults where none: none where the scale is a fixed count. */
|
|
3
|
+
export function scaledObject(workload, scale, triggers, timing) {
|
|
4
|
+
return scaledOn(workload, scale, triggers, undefined, timing);
|
|
5
5
|
}
|
|
6
6
|
/**
|
|
7
7
|
* The ScaledObject of `workload`, of `scale`, on its CPU's use, averaged over its pods, as
|
|
@@ -15,7 +15,7 @@ export function cpuScaledObject(workload, scale, { percent, startUpSeconds }) {
|
|
|
15
15
|
const cpu = { type: "cpu", metricType: "Utilization", metadata: { value: String(percent) } };
|
|
16
16
|
return scaledOn(workload, scale, [cpu], { horizontalPodAutoscalerConfig: { behavior: { scaleUp: { stabilizationWindowSeconds: startUpSeconds } } } });
|
|
17
17
|
}
|
|
18
|
-
function scaledOn(workload, scale, triggers, advanced) {
|
|
18
|
+
function scaledOn(workload, scale, triggers, advanced, timing) {
|
|
19
19
|
if (!scaled(scale))
|
|
20
20
|
return [];
|
|
21
21
|
const { name = "", namespace = "", labels = {} } = workload.metadata ?? {};
|
|
@@ -27,6 +27,7 @@ function scaledOn(workload, scale, triggers, advanced) {
|
|
|
27
27
|
scaleTargetRef: { apiVersion: workload.apiVersion, kind: workload.kind, name },
|
|
28
28
|
minReplicaCount: scale.min,
|
|
29
29
|
maxReplicaCount: scale.max,
|
|
30
|
+
...(timing ? { pollingInterval: timing.pollingSeconds, cooldownPeriod: timing.cooldownSeconds } : {}),
|
|
30
31
|
triggers,
|
|
31
32
|
...(advanced ? { advanced } : {}),
|
|
32
33
|
},
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"scalers.js","sourceRoot":"","sources":["../../../../src/manifests/scalers.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"scalers.js","sourceRoot":"","sources":["../../../../src/manifests/scalers.ts"],"names":[],"mappings":"AASA,OAAO,EAAE,MAAM,EAAE,MAAM,aAAa,CAAC;AA2CrC,2KAA2K;AAC3K,MAAM,UAAU,YAAY,CAAC,QAAsC,EAAE,KAAY,EAAE,QAA4B,EAAE,MAAsB;IACrI,OAAO,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,QAAQ,EAAE,SAAS,EAAE,MAAM,CAAC,CAAC;AAChE,CAAC;AAED;;;;;;;GAOG;AACH,MAAM,UAAU,eAAe,CAAC,QAAsC,EAAE,KAAY,EAAE,EAAE,OAAO,EAAE,cAAc,EAAiE;IAC9K,MAAM,GAAG,GAAY,EAAE,IAAI,EAAE,KAAK,EAAE,UAAU,EAAE,aAAa,EAAE,QAAQ,EAAE,EAAE,KAAK,EAAE,MAAM,CAAC,OAAO,CAAC,EAAE,EAAE,CAAC;IACtG,OAAO,QAAQ,CAAC,QAAQ,EAAE,KAAK,EAAE,CAAC,GAAG,CAAC,EAAE,EAAE,6BAA6B,EAAE,EAAE,QAAQ,EAAE,EAAE,OAAO,EAAE,EAAE,0BAA0B,EAAE,cAAc,EAAE,EAAE,EAAE,EAAE,CAAC,CAAC;AACxJ,CAAC;AAED,SAAS,QAAQ,CAAC,QAAsC,EAAE,KAAY,EAAE,QAA4B,EAAE,QAA0C,EAAE,MAAsB;IACtK,IAAI,CAAC,MAAM,CAAC,KAAK,CAAC;QAAE,OAAO,EAAE,CAAC;IAC9B,MAAM,EAAE,IAAI,GAAG,EAAE,EAAE,SAAS,GAAG,EAAE,EAAE,MAAM,GAAG,EAAE,EAAE,GAAG,QAAQ,CAAC,QAAQ,IAAI,EAAE,CAAC;IAC3E,OAAO,CAAC;YACN,UAAU,EAAE,kBAAkB;YAC9B,IAAI,EAAE,cAAc;YACpB,QAAQ,EAAE,EAAE,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE;YACrC,IAAI,EAAE;gBACJ,cAAc,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE;gBAC9E,eAAe,EAAE,KAAK,CAAC,GAAG;gBAC1B,eAAe,EAAE,KAAK,CAAC,GAAG;gBAC1B,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,eAAe,EAAE,MAAM,CAAC,cAAc,EAAE,cAAc,EAAE,MAAM,CAAC,eAAe,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;gBACrG,QAAQ;gBACR,GAAG,CAAC,QAAQ,CAAC,CAAC,CAAC,EAAE,QAAQ,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;aAClC;SACF,CAAC,CAAC;AACL,CAAC"}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
/** VPA's update mode of each sizing: InPlace is alpha in VPA 1.8.0, behind the feature gate ./vpa.ts gives its updater and admission controller. */
|
|
2
|
-
const UPDATE_MODES = { InPlace: "InPlace", Recommended: "Off" };
|
|
2
|
+
const UPDATE_MODES = { InPlace: "InPlace", AtStart: "Initial", Recommended: "Off" };
|
|
3
3
|
/** The least any container is recommended: a little under what alasio's smallest components use (a storage broker's 13 MiB, a Valkey's 6). */
|
|
4
4
|
const MIN_ALLOWED = { cpu: "5m", memory: "16Mi" };
|
|
5
5
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"sizing.js","sourceRoot":"","sources":["../../../../src/manifests/sizing.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"sizing.js","sourceRoot":"","sources":["../../../../src/manifests/sizing.ts"],"names":[],"mappings":"AAqCA,oJAAoJ;AACpJ,MAAM,YAAY,GAAqC,EAAE,OAAO,EAAE,SAAS,EAAE,OAAO,EAAE,SAAS,EAAE,WAAW,EAAE,KAAK,EAAE,CAAC;AAEtH,8IAA8I;AAC9I,MAAM,WAAW,GAAG,EAAE,GAAG,EAAE,IAAI,EAAE,MAAM,EAAE,MAAM,EAAE,CAAC;AAClD;;;;;;;GAOG;AACH,MAAM,eAAe,GAAG,MAAM,CAAC;AAY/B;;;;;;;;GAQG;AACH,MAAM,UAAU,qBAAqB,CAAC,QAAoD,EAAE,MAAc,EAAE,UAAU,GAAkC,CAAC,KAAK,EAAE,QAAQ,CAAC;IACvK,MAAM,UAAU,GAA2B,QAAQ,CAAC,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,UAAU,IAAI,EAAE,CAAC;IAC1F,OAAO;QACL,UAAU,EAAE,uBAAuB;QACnC,IAAI,EAAE,uBAAuB;QAC7B,QAAQ,EAAE,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,IAAI,EAAE,EAAE,SAAS,EAAE,QAAQ,CAAC,QAAQ,EAAE,SAAS,IAAI,EAAE,EAAE,MAAM,EAAE,EAAE,GAAG,QAAQ,CAAC,QAAQ,EAAE,MAAM,EAAE,EAAE;QAC1I,IAAI,EAAE;YACJ,SAAS,EAAE,EAAE,UAAU,EAAE,QAAQ,CAAC,UAAU,EAAE,IAAI,EAAE,QAAQ,CAAC,IAAI,EAAE,IAAI,EAAE,QAAQ,CAAC,QAAQ,EAAE,IAAI,EAAE;YAClG,sEAAsE;YACtE,YAAY,EAAE,EAAE,UAAU,EAAE,YAAY,CAAC,MAAM,CAAC,EAAE,GAAG,CAAC,MAAM,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,WAAW,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;YACvG,cAAc,EAAE;gBACd,iBAAiB,EAAE,UAAU,CAAC,GAAG,CAAC,CAAC,EAAE,IAAI,EAAE,SAAS,EAAE,EAAE,EAAE;oBACxD,MAAM,MAAM,GAAG,SAAS,EAAE,MAAM,EAAE,CAAC,QAAQ,CAAC,CAAC;oBAC7C,OAAO;wBACL,aAAa,EAAE,IAAI;wBACnB,GAAG,CAAC,UAAU,CAAC,MAAM,GAAG,CAAC,CAAC,CAAC,CAAC,EAAE,mBAAmB,EAAE,UAAU,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC;wBACrE,UAAU,EAAE,WAAW;wBACvB,UAAU,EAAE,EAAE,GAAG,EAAE,eAAe,EAAE,GAAG,CAAC,MAAM,CAAC,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,CAAC,CAAC,EAAE,CAAC,EAAE;wBACnE,gBAAgB,EAAE,cAAc;qBACjC,CAAC;gBACJ,CAAC,CAAC;aACH;SACF;KACF,CAAC;AACJ,CAAC"}
|