alasio 6.0.0 → 8.0.0
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/branches.js +106 -31
- package/dist/cli/src/branches.js.map +1 -1
- package/dist/cli/src/cluster/docker-engine.js +6 -4
- package/dist/cli/src/cluster/docker-engine.js.map +1 -1
- package/dist/cli/src/cluster/docker.js +49 -10
- package/dist/cli/src/cluster/docker.js.map +1 -1
- package/dist/cli/src/cluster/host.js +45 -19
- package/dist/cli/src/cluster/host.js.map +1 -1
- package/dist/cli/src/cluster/k3s.js +104 -5
- package/dist/cli/src/cluster/k3s.js.map +1 -1
- package/dist/cli/src/cluster/node.js +102 -51
- package/dist/cli/src/cluster/node.js.map +1 -1
- package/dist/cli/src/cluster/tar.js +43 -1
- package/dist/cli/src/cluster/tar.js.map +1 -1
- package/dist/cli/src/commands/branch.js +7 -3
- package/dist/cli/src/commands/branch.js.map +1 -1
- package/dist/cli/src/commands/init.js +54 -4
- package/dist/cli/src/commands/init.js.map +1 -1
- package/dist/cli/src/commands/lake.js +40 -6
- package/dist/cli/src/commands/lake.js.map +1 -1
- package/dist/cli/src/commands/restore-filer-store.js +56 -13
- package/dist/cli/src/commands/restore-filer-store.js.map +1 -1
- package/dist/cli/src/commands/status.js +182 -10
- package/dist/cli/src/commands/status.js.map +1 -1
- package/dist/cli/src/commands/up.js +40 -3
- package/dist/cli/src/commands/up.js.map +1 -1
- package/dist/cli/src/commands/upgrade.js +22 -6
- package/dist/cli/src/commands/upgrade.js.map +1 -1
- package/dist/cli/src/config.js +20 -8
- package/dist/cli/src/config.js.map +1 -1
- package/dist/cli/src/cpu-baseline.js +97 -0
- package/dist/cli/src/cpu-baseline.js.map +1 -0
- package/dist/cli/src/install.js +94 -13
- package/dist/cli/src/install.js.map +1 -1
- package/dist/cli/src/kept-releases.js +59 -0
- package/dist/cli/src/kept-releases.js.map +1 -0
- package/dist/cli/src/kube/api.js +9 -2
- package/dist/cli/src/kube/api.js.map +1 -1
- package/dist/cli/src/kube/apply.js +1 -1
- package/dist/cli/src/kube/apply.js.map +1 -1
- package/dist/cli/src/kube/rollout.js +79 -12
- package/dist/cli/src/kube/rollout.js.map +1 -1
- package/dist/cli/src/lake.js +124 -0
- package/dist/cli/src/lake.js.map +1 -0
- package/dist/cli/src/manifests/admission.js +183 -24
- package/dist/cli/src/manifests/admission.js.map +1 -1
- package/dist/cli/src/manifests/alasio.js +198 -27
- package/dist/cli/src/manifests/alasio.js.map +1 -1
- package/dist/cli/src/manifests/branch.js +2 -1
- package/dist/cli/src/manifests/branch.js.map +1 -1
- package/dist/cli/src/manifests/collector.js +229 -122
- package/dist/cli/src/manifests/collector.js.map +1 -1
- package/dist/cli/src/manifests/common.js +23 -8
- package/dist/cli/src/manifests/common.js.map +1 -1
- package/dist/cli/src/manifests/config.js +254 -21
- package/dist/cli/src/manifests/config.js.map +1 -1
- package/dist/cli/src/manifests/grafana.js +18 -6
- package/dist/cli/src/manifests/grafana.js.map +1 -1
- package/dist/cli/src/manifests/index.js +15 -6
- package/dist/cli/src/manifests/index.js.map +1 -1
- package/dist/cli/src/manifests/juicefs-csi.js +7 -6
- package/dist/cli/src/manifests/juicefs-csi.js.map +1 -1
- package/dist/cli/src/manifests/keda.js +2 -1
- package/dist/cli/src/manifests/keda.js.map +1 -1
- package/dist/cli/src/manifests/lake.js +340 -73
- package/dist/cli/src/manifests/lake.js.map +1 -1
- package/dist/cli/src/manifests/log.js +298 -0
- package/dist/cli/src/manifests/log.js.map +1 -0
- package/dist/cli/src/manifests/neon.js +282 -66
- package/dist/cli/src/manifests/neon.js.map +1 -1
- package/dist/cli/src/manifests/network-policies.js +211 -45
- package/dist/cli/src/manifests/network-policies.js.map +1 -1
- package/dist/cli/src/manifests/node-agent.js +116 -0
- package/dist/cli/src/manifests/node-agent.js.map +1 -0
- package/dist/cli/src/manifests/object-store.js +42 -10
- package/dist/cli/src/manifests/object-store.js.map +1 -1
- package/dist/cli/src/manifests/priorities.js +1 -0
- package/dist/cli/src/manifests/priorities.js.map +1 -1
- package/dist/cli/src/manifests/scalers.js.map +1 -1
- package/dist/cli/src/manifests/valkey.js +1 -1
- package/dist/cli/src/manifests/webhook.js +102 -0
- package/dist/cli/src/manifests/webhook.js.map +1 -0
- package/dist/cli/src/neon-storage.js +115 -0
- package/dist/cli/src/neon-storage.js.map +1 -0
- package/dist/cli/src/release.js +9 -6
- package/dist/cli/src/release.js.map +1 -1
- package/dist/cli/src/secrets.js +45 -4
- package/dist/cli/src/secrets.js.map +1 -1
- package/dist/cli/src/target.js +1 -1
- package/dist/cli/src/target.js.map +1 -1
- package/dist/cli/src/telegram.js +56 -10
- package/dist/cli/src/telegram.js.map +1 -1
- package/dist/cli/src/webhook.js +182 -0
- package/dist/cli/src/webhook.js.map +1 -0
- package/dist/cluster/node/pins.json +11 -2
- package/dist/neon/control/branches.js +146 -22
- package/dist/neon/control/branches.js.map +1 -1
- package/dist/neon/control/endpoints.js +117 -0
- package/dist/neon/control/endpoints.js.map +1 -0
- package/dist/neon/control/jwt.js +16 -3
- package/dist/neon/control/jwt.js.map +1 -1
- package/dist/neon/control/scram.js +13 -1
- package/dist/neon/control/scram.js.map +1 -1
- package/dist/neon/control/secrets.js +88 -14
- package/dist/neon/control/secrets.js.map +1 -1
- package/dist/src/kube/config.js +27 -3
- package/dist/src/kube/config.js.map +1 -1
- package/dist/src/kube/sandbox-shape.js +49 -3
- package/dist/src/kube/sandbox-shape.js.map +1 -1
- package/dist/src/node-agent/names.js +140 -0
- package/dist/src/node-agent/names.js.map +1 -0
- package/dist/src/telegram/deliveries.js +40 -0
- package/dist/src/telegram/deliveries.js.map +1 -0
- package/package.json +2 -2
- package/dist/cluster/node/config-v3.toml.tmpl +0 -12
|
@@ -1,10 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
2
|
* This machine made a node of k3s, as the cluster alasio makes on it outside Docker is
|
|
3
3
|
* (./host.ts): k3s installed by its own install script, as the systemd service `k3s`, from
|
|
4
|
-
* the binary cluster/node/pins.json pins, with gVisor beside it,
|
|
5
|
-
*
|
|
6
|
-
* built from the same pins,
|
|
7
|
-
*
|
|
4
|
+
* the binary cluster/node/pins.json pins, with each gVisor release it pins beside it, each
|
|
5
|
+
* a runtime of containerd's (./k3s.ts), and set in /etc/rancher/k3s/config.yaml. The node
|
|
6
|
+
* image (cluster/node) is built from the same pins, its gVisor releases where the machine
|
|
7
|
+
* has them, and its k3s reads the same containerd files, so a node in Docker and one on a
|
|
8
|
+
* machine run the same k3s and gVisor alike.
|
|
8
9
|
*
|
|
9
10
|
* Every download is checked against its pin as the operator downloads it, and again as
|
|
10
11
|
* root before it is installed. What alasio installed, and the digest of the files that
|
|
@@ -18,33 +19,51 @@
|
|
|
18
19
|
*/
|
|
19
20
|
import { createHash, randomUUID } from "node:crypto";
|
|
20
21
|
import { dirname } from "node:path";
|
|
21
|
-
import { fileURLToPath } from "node:url";
|
|
22
22
|
import { zstdDecompressSync } from "node:zlib";
|
|
23
23
|
import { Duration, Effect, FileSystem, Option, Schedule, Schema } from "effect";
|
|
24
24
|
import pins from "../../../cluster/node/pins.json" with { type: "json" };
|
|
25
|
+
import { CONTAINERD, GVISOR_RELEASES, gvisorDirectory, gvisorHandler } from "../../../src/node-agent/names.js";
|
|
25
26
|
import { Registries } from "../config.js";
|
|
26
|
-
import { clusterKubeconfig, KUBELET_ARGS, NotYet, registriesYaml } from "./k3s.js";
|
|
27
|
+
import { clusterKubeconfig, gvisorRuntimeFiles, KUBELET_ARGS, NotYet, registriesYaml } from "./k3s.js";
|
|
27
28
|
import { Machine, RootSystem, under } from "./machine.js";
|
|
28
29
|
import { tarEntries } from "./tar.js";
|
|
29
30
|
/** This version's pins, cluster/node/pins.json's. */
|
|
30
31
|
export const NODE_PINS = pins;
|
|
31
|
-
/**
|
|
32
|
+
/** The gVisor releases `pins` pins, the current first. */
|
|
33
|
+
export const gvisorReleases = ({ gvisor }) => gvisor.releases.map(({ release }) => release);
|
|
34
|
+
/** The gVisor release `pins` pins as current, which new sandboxes run: the first; pins of none are no pins. */
|
|
35
|
+
export function currentGvisorRelease(pins = NODE_PINS) {
|
|
36
|
+
const [current] = gvisorReleases(pins);
|
|
37
|
+
if (current === undefined)
|
|
38
|
+
throw new Error("cluster/node/pins.json pins no gVisor release");
|
|
39
|
+
return current;
|
|
40
|
+
}
|
|
41
|
+
/**
|
|
42
|
+
* Where what `pins` pins is downloaded from: k3s's binary and install script from its
|
|
43
|
+
* repository, and each gVisor release, by its name, from alasio's fork of it,
|
|
44
|
+
* github.com/eaucoin/gvisor.
|
|
45
|
+
*/
|
|
32
46
|
export const downloads = ({ k3s, gvisor }) => ({
|
|
33
47
|
k3s: { url: `https://github.com/k3s-io/k3s/releases/download/${encodeURIComponent(k3s.version)}/k3s`, algorithm: "sha256", digest: k3s.sha256 },
|
|
34
48
|
installScript: { url: `https://raw.githubusercontent.com/k3s-io/k3s/${k3s.installScript.commit}/install.sh`, algorithm: "sha256", digest: k3s.installScript.sha256 },
|
|
35
|
-
gvisor:
|
|
49
|
+
gvisor: new Map(gvisor.releases.map(({ release, sha512 }) => [
|
|
50
|
+
release,
|
|
51
|
+
{ url: `https://github.com/eaucoin/gvisor/releases/download/release-${encodeURIComponent(release)}/gvisor-x86_64.tar.zstd`, algorithm: "sha512", digest: sha512 },
|
|
52
|
+
])),
|
|
36
53
|
});
|
|
37
54
|
const BIN = "/usr/local/bin";
|
|
38
55
|
const K3S_ETC = "/etc/rancher/k3s";
|
|
39
56
|
const CONFIG_YAML = `${K3S_ETC}/config.yaml`;
|
|
40
57
|
const REGISTRIES_YAML = `${K3S_ETC}/registries.yaml`;
|
|
41
|
-
/**
|
|
58
|
+
/**
|
|
59
|
+
* What alasio installed, and the digest of the files that configure the node. Not the
|
|
60
|
+
* CPU baseline sessions are held to, which is the cluster's, of every node of it, and
|
|
61
|
+
* recorded in it (../cpu-baseline.ts): a cluster in Docker or of a kubeconfig has no
|
|
62
|
+
* stamp, and the other nodes of a cluster on this machine are not described by its stamp.
|
|
63
|
+
*/
|
|
42
64
|
const STAMP = `${K3S_ETC}/alasio.json`;
|
|
43
65
|
/** The kubeconfig k3s writes, root's alone. */
|
|
44
66
|
const K3S_KUBECONFIG = `${K3S_ETC}/k3s.yaml`;
|
|
45
|
-
const CONTAINERD = "/var/lib/rancher/k3s/agent/etc/containerd";
|
|
46
|
-
/** runsc's options, which the containerd template names where systemd runs the machine. */
|
|
47
|
-
export const RUNSC_TOML = `${CONTAINERD}/runsc.toml`;
|
|
48
67
|
/** The systemd service k3s's install script makes. */
|
|
49
68
|
export const SERVICE = "k3s";
|
|
50
69
|
const SERVICE_FILE = `/etc/systemd/system/${SERVICE}.service`;
|
|
@@ -55,28 +74,37 @@ const UNINSTALL = `${BIN}/k3s-uninstall.sh`;
|
|
|
55
74
|
/** The networks of the cluster's pods and Services, as k3s is set with them: k3s's own. */
|
|
56
75
|
const CLUSTER_CIDR = "10.42.0.0/16";
|
|
57
76
|
const SERVICE_CIDR = "10.43.0.0/16";
|
|
58
|
-
/**
|
|
77
|
+
/**
|
|
78
|
+
* What a firewall must let in to the machine from the cluster: its pods and its Services,
|
|
79
|
+
* as k3s's requirements say; and nothing more. The webhook intake's port is no rule of a
|
|
80
|
+
* firewall's: what reaches a pod's host port kube-router's NetworkPolicy chain accepts in
|
|
81
|
+
* FORWARD ahead of ufw's or firewalld's rules, which never see it, so the intake's
|
|
82
|
+
* NetworkPolicy, admitting webhook.sources alone, is what guards it
|
|
83
|
+
* (cli/src/manifests/network-policies.ts).
|
|
84
|
+
*/
|
|
59
85
|
export const CLUSTER_NETWORKS = [CLUSTER_CIDR, SERVICE_CIDR];
|
|
60
86
|
/** The directories JuiceFS's CSI driver keeps on the node, its mounts in them, which nothing of k3s's removes. */
|
|
61
87
|
const JUICEFS = ["/var/lib/juicefs", "/run/juicefs-csi"];
|
|
62
|
-
/** What alasio installs of gVisor
|
|
88
|
+
/** What alasio installs of a gVisor release, in the release's directory: runsc and its shim, and the binaries runsc runs beside it. */
|
|
63
89
|
const GVISOR = ["runsc", "containerd-shim-runsc-v1", "gvisor-bin"];
|
|
64
|
-
/**
|
|
65
|
-
|
|
66
|
-
|
|
90
|
+
/**
|
|
91
|
+
* How a node is made: a server, its volumes in `storagePath`, pulling through
|
|
92
|
+
* `registries`, its containerd running each of the gVisor releases `gvisor`, the current
|
|
93
|
+
* first.
|
|
94
|
+
*/
|
|
67
95
|
export const NodeConfig = Schema.Struct({
|
|
68
96
|
role: Schema.Literal("server"),
|
|
69
97
|
storagePath: Schema.String,
|
|
70
98
|
registries: Schema.optionalKey(Registries),
|
|
99
|
+
gvisor: Schema.Array(Schema.String),
|
|
71
100
|
});
|
|
72
|
-
/** The containerd template, which registers gVisor as the runtime `runsc`. */
|
|
73
|
-
export const containerdTemplate = Effect.flatMap(FileSystem.FileSystem, (fs) => fs.readFileString(fileURLToPath(TEMPLATE_SOURCE)));
|
|
74
101
|
/**
|
|
75
|
-
* The files that make k3s and its containerd a node of `config`, by their paths
|
|
76
|
-
*
|
|
77
|
-
*
|
|
102
|
+
* The files that make k3s and its containerd a node of `config`, by their paths: k3s's
|
|
103
|
+
* config.yaml, written as JSON, which YAML reads as it is, the registries, and the files
|
|
104
|
+
* that make each gVisor release a runtime of containerd's, where systemd runs the
|
|
105
|
+
* machine. Pure, for tests.
|
|
78
106
|
*/
|
|
79
|
-
export function nodeFiles(config
|
|
107
|
+
export function nodeFiles(config) {
|
|
80
108
|
const k3s = {
|
|
81
109
|
"disable": ["traefik"],
|
|
82
110
|
"cluster-cidr": CLUSTER_CIDR,
|
|
@@ -87,8 +115,7 @@ export function nodeFiles(config, template) {
|
|
|
87
115
|
return new Map([
|
|
88
116
|
[CONFIG_YAML, `# k3s as alasio's cluster runs it: alasio up writes this file.\n${JSON.stringify(k3s)}\n`],
|
|
89
117
|
...(config.registries ? [[REGISTRIES_YAML, `${registriesYaml(config.registries)}\n`]] : []),
|
|
90
|
-
|
|
91
|
-
[RUNSC_TOML, `# runsc's options where systemd runs the machine: its sandboxes' cgroups placed through systemd.\n[runsc_config]\n systemd-cgroup = "true"\n`],
|
|
118
|
+
...gvisorRuntimeFiles(config.gvisor, { systemd: true }),
|
|
92
119
|
]);
|
|
93
120
|
}
|
|
94
121
|
/** A digest of `files` that two sets of files share only when they are the same. */
|
|
@@ -97,13 +124,13 @@ export const filesDigest = (files) => createHash("sha256").update(JSON.stringify
|
|
|
97
124
|
export const Firewall = Schema.Literals(["ufw", "firewalld"]);
|
|
98
125
|
/**
|
|
99
126
|
* What alasio installed on this machine, as STAMP records it: k3s's version, gVisor's
|
|
100
|
-
*
|
|
127
|
+
* releases, the digest of the files that configure the node, and the firewall it opened
|
|
101
128
|
* the cluster's networks in, with those it added a rule for itself, which are all it
|
|
102
129
|
* removes.
|
|
103
130
|
*/
|
|
104
131
|
export const NodeStamp = Schema.Struct({
|
|
105
132
|
k3s: Schema.optionalKey(Schema.String),
|
|
106
|
-
gvisor: Schema.optionalKey(Schema.String),
|
|
133
|
+
gvisor: Schema.optionalKey(Schema.Array(Schema.String)),
|
|
107
134
|
config: Schema.optionalKey(Schema.String),
|
|
108
135
|
firewall: Schema.optionalKey(Schema.Struct({ tool: Firewall, networks: Schema.Array(Schema.String), added: Schema.Array(Schema.String) })),
|
|
109
136
|
});
|
|
@@ -165,8 +192,10 @@ const writeFile = Effect.fnUntraced(function* (path, content, mode) {
|
|
|
165
192
|
export const OpenFirewall = Schema.TaggedStruct("OpenFirewall", { firewall: Firewall, networks: Schema.Array(Schema.String) });
|
|
166
193
|
/** The step that writes the files that configure k3s and its containerd as a node of `config`. */
|
|
167
194
|
export const ConfigureNode = Schema.TaggedStruct("ConfigureNode", { config: NodeConfig });
|
|
168
|
-
/** The step that installs gVisor
|
|
169
|
-
export const InstallGvisor = Schema.TaggedStruct("InstallGvisor", { release: Schema.String,
|
|
195
|
+
/** The step that installs a gVisor release, from its archive, in a directory of its own. */
|
|
196
|
+
export const InstallGvisor = Schema.TaggedStruct("InstallGvisor", { release: Schema.String, archive: Artifact });
|
|
197
|
+
/** The step that stops a gVisor release's sandboxes, and removes it. */
|
|
198
|
+
export const RemoveGvisor = Schema.TaggedStruct("RemoveGvisor", { release: Schema.String });
|
|
170
199
|
/** The step that installs k3s's binary, with its install script, which makes its service, enables it, and starts it anew. */
|
|
171
200
|
export const InstallK3s = Schema.TaggedStruct("InstallK3s", {
|
|
172
201
|
version: Schema.String,
|
|
@@ -179,13 +208,13 @@ export const InstallK3s = Schema.TaggedStruct("InstallK3s", {
|
|
|
179
208
|
export const StartK3s = Schema.TaggedStruct("StartK3s", { restart: Schema.Boolean });
|
|
180
209
|
/** The step that stops k3s's service, disabling it, and stops its pods. */
|
|
181
210
|
export const StopK3s = Schema.TaggedStruct("StopK3s", {});
|
|
182
|
-
/** The step that removes k3s, with its uninstall script, gVisor, and the firewall's rules for the cluster's networks alasio added, by STAMP's `firewall`. */
|
|
211
|
+
/** The step that removes k3s, with its uninstall script, gVisor's releases, and the firewall's rules for the cluster's networks alasio added, by STAMP's `firewall`. */
|
|
183
212
|
export const RemoveNode = Schema.TaggedStruct("RemoveNode", { firewall: Schema.optionalKey(Schema.Struct({ tool: Firewall, added: Schema.Array(Schema.String) })) });
|
|
184
213
|
/** The step that removes the directory of the node's volumes. */
|
|
185
214
|
export const RemoveStorage = Schema.TaggedStruct("RemoveStorage", { path: Schema.String });
|
|
186
215
|
/** The step that reads k3s's kubeconfig, after restarting k3s, which renews its certificates, when `renew`. */
|
|
187
216
|
export const ReadKubeconfig = Schema.TaggedStruct("ReadKubeconfig", { renew: Schema.Boolean });
|
|
188
|
-
export const NodeStep = Schema.Union([OpenFirewall, ConfigureNode, InstallGvisor, InstallK3s, StartK3s, StopK3s, RemoveNode, RemoveStorage, ReadKubeconfig]);
|
|
217
|
+
export const NodeStep = Schema.Union([OpenFirewall, ConfigureNode, InstallGvisor, RemoveGvisor, InstallK3s, StartK3s, StopK3s, RemoveNode, RemoveStorage, ReadKubeconfig]);
|
|
189
218
|
/** What `step` does, as alasio says it will. */
|
|
190
219
|
export function describeNodeStep(step) {
|
|
191
220
|
const replacing = (previous) => (previous ? `, in place of ${previous},` : "");
|
|
@@ -193,10 +222,14 @@ export function describeNodeStep(step) {
|
|
|
193
222
|
case "OpenFirewall":
|
|
194
223
|
return `let the cluster's pods and Services, ${step.networks.join(" and ")}, in to this machine through ${step.firewall}, as k3s needs; ` +
|
|
195
224
|
"nothing else is opened, k3s's API server's port 6443 staying closed to the rest";
|
|
196
|
-
case "ConfigureNode":
|
|
197
|
-
|
|
225
|
+
case "ConfigureNode": {
|
|
226
|
+
const runtimes = step.config.gvisor.map(gvisorHandler);
|
|
227
|
+
return `write k3s's configuration in ${K3S_ETC}, and its containerd's, with gVisor as the runtime${runtimes.length > 1 ? "s" : ""} ${runtimes.join(" and ")}, in ${CONTAINERD}`;
|
|
228
|
+
}
|
|
198
229
|
case "InstallGvisor":
|
|
199
|
-
return `install gVisor ${step.release}${
|
|
230
|
+
return `install gVisor ${step.release} in ${gvisorDirectory(step.release)}: ${GVISOR.join(", ")}`;
|
|
231
|
+
case "RemoveGvisor":
|
|
232
|
+
return `stop the sandboxes of gVisor ${step.release}, which alasio no longer keeps, and remove ${gvisorDirectory(step.release)}`;
|
|
200
233
|
case "InstallK3s":
|
|
201
234
|
return `install k3s ${step.version}${replacing(step.previous)} in ${BIN}, with its own install script, as the systemd service ${SERVICE}, enabled and started anew`;
|
|
202
235
|
case "StartK3s":
|
|
@@ -207,7 +240,7 @@ export function describeNodeStep(step) {
|
|
|
207
240
|
return `stop the cluster's gVisor pods, ` +
|
|
208
241
|
(step.firewall && step.firewall.added.length > 0 ? `remove the rules alasio added to ${step.firewall.tool} for ${step.firewall.added.join(" and ")}, ` : "") +
|
|
209
242
|
`uninstall k3s with k3s-uninstall.sh, which removes its service, ${K3S_ETC} and its data, ` +
|
|
210
|
-
`and remove what it leaves, its node's password in ${NODE_PASSWORD}, gVisor
|
|
243
|
+
`and remove what it leaves, its node's password in ${NODE_PASSWORD}, gVisor's releases in ${GVISOR_RELEASES}, and JuiceFS's mounts and directories, ` +
|
|
211
244
|
JUICEFS.join(" and ");
|
|
212
245
|
case "RemoveStorage":
|
|
213
246
|
return `remove ${step.path}, the cluster's volumes`;
|
|
@@ -215,17 +248,23 @@ export function describeNodeStep(step) {
|
|
|
215
248
|
return `${step.renew ? `restart the service ${SERVICE}, which renews its certificates, and ` : ""}read its kubeconfig, ${K3S_KUBECONFIG}, for alasio to reach it`;
|
|
216
249
|
}
|
|
217
250
|
}
|
|
218
|
-
/**
|
|
219
|
-
const
|
|
251
|
+
/** The names in the directory `path` of this machine; none when it is not there. */
|
|
252
|
+
const namesIn = Effect.fnUntraced(function* (path) {
|
|
220
253
|
const fs = yield* FileSystem.FileSystem;
|
|
221
254
|
const { root } = yield* Machine;
|
|
222
|
-
|
|
223
|
-
const beside = (yield* fs.exists(bin)) ? (yield* fs.readDirectory(bin)).map((name) => `${BIN}/gvisor-bin/${name}`) : [];
|
|
224
|
-
return [`${BIN}/runsc`, `${BIN}/containerd-shim-runsc-v1`, ...beside];
|
|
255
|
+
return (yield* fs.exists(under(root, path))) ? yield* fs.readDirectory(under(root, path)) : [];
|
|
225
256
|
});
|
|
226
|
-
/**
|
|
227
|
-
const
|
|
228
|
-
|
|
257
|
+
/** The gVisor releases installed on this machine, by their directories. */
|
|
258
|
+
const installedGvisor = namesIn(GVISOR_RELEASES);
|
|
259
|
+
/** The executables of gVisor's `release`, as this machine names them, which its processes run. */
|
|
260
|
+
const gvisorExecutables = Effect.fnUntraced(function* (release) {
|
|
261
|
+
const directory = gvisorDirectory(release);
|
|
262
|
+
const beside = (yield* namesIn(`${directory}/gvisor-bin`)).map((name) => `${directory}/gvisor-bin/${name}`);
|
|
263
|
+
return [`${directory}/runsc`, `${directory}/containerd-shim-runsc-v1`, ...beside];
|
|
264
|
+
});
|
|
265
|
+
/** Kills the processes of gVisor's `releases`, their sandboxes and shims, which k3s's own scripts do not stop. */
|
|
266
|
+
const killGvisor = Effect.fnUntraced(function* (releases) {
|
|
267
|
+
const killed = yield* (yield* RootSystem).kill((yield* Effect.forEach(releases, gvisorExecutables)).flat());
|
|
229
268
|
if (killed > 0)
|
|
230
269
|
yield* Effect.logInfo(`stopped ${killed} of gVisor's processes`);
|
|
231
270
|
});
|
|
@@ -309,26 +348,38 @@ export const performNodeStep = (step) => Effect.gen(function* () {
|
|
|
309
348
|
return yield* Effect.logInfo(`${step.firewall} lets ${step.networks.join(" and ")} in`);
|
|
310
349
|
}
|
|
311
350
|
case "ConfigureNode": {
|
|
312
|
-
const files = nodeFiles(step.config
|
|
351
|
+
const files = nodeFiles(step.config);
|
|
313
352
|
for (const [path, content] of files)
|
|
314
353
|
yield* writeFile(under(root, path), content, path.startsWith(K3S_ETC) ? 0o600 : 0o644);
|
|
315
354
|
if (!files.has(REGISTRIES_YAML))
|
|
316
355
|
yield* fs.remove(under(root, REGISTRIES_YAML), { force: true });
|
|
356
|
+
// runsc's options for the releases containerd no longer runs; containerd's own config.toml, k3s's, stays.
|
|
357
|
+
for (const name of yield* namesIn(CONTAINERD)) {
|
|
358
|
+
const path = `${CONTAINERD}/${name}`;
|
|
359
|
+
if (name.startsWith("runsc") && name.endsWith(".toml") && !files.has(path))
|
|
360
|
+
yield* fs.remove(under(root, path));
|
|
361
|
+
}
|
|
317
362
|
yield* recordStamp({ config: filesDigest(files) });
|
|
318
363
|
return yield* Effect.logInfo(`wrote ${[...files.keys()].join(", ")}`);
|
|
319
364
|
}
|
|
320
365
|
case "InstallGvisor": {
|
|
321
366
|
const entries = tarEntries(Buffer.from(zstdDecompressSync(yield* verified(step.archive))));
|
|
322
367
|
for (const entry of entries.filter(({ name }) => GVISOR.some((installed) => name === installed || name.startsWith(`${installed}/`)))) {
|
|
323
|
-
const path = under(root, `${
|
|
368
|
+
const path = under(root, `${gvisorDirectory(step.release)}/${entry.name.replace(/\/$/u, "")}`);
|
|
324
369
|
if (entry.type === "directory")
|
|
325
370
|
yield* fs.makeDirectory(path, { recursive: true, mode: entry.mode });
|
|
326
371
|
else
|
|
327
372
|
yield* writeFile(path, entry.content, entry.mode);
|
|
328
373
|
}
|
|
329
|
-
yield* recordStamp({ gvisor: step.release });
|
|
374
|
+
yield* recordStamp({ gvisor: [...((yield* readStamp)?.gvisor ?? []).filter((release) => release !== step.release), step.release] });
|
|
330
375
|
return yield* Effect.logInfo(`installed gVisor ${step.release}`);
|
|
331
376
|
}
|
|
377
|
+
case "RemoveGvisor": {
|
|
378
|
+
yield* killGvisor([step.release]);
|
|
379
|
+
yield* fs.remove(under(root, gvisorDirectory(step.release)), { recursive: true, force: true });
|
|
380
|
+
yield* recordStamp({ gvisor: ((yield* readStamp)?.gvisor ?? []).filter((release) => release !== step.release) });
|
|
381
|
+
return yield* Effect.logInfo(`removed gVisor ${step.release}`);
|
|
382
|
+
}
|
|
332
383
|
case "InstallK3s": {
|
|
333
384
|
yield* writeFile(under(root, `${BIN}/k3s`), yield* verified(step.binary), 0o755);
|
|
334
385
|
const script = yield* verified(step.script);
|
|
@@ -351,7 +402,7 @@ export const performNodeStep = (step) => Effect.gen(function* () {
|
|
|
351
402
|
return yield* (step.restart ? systemctl("restart", SERVICE) : systemctl("enable", "--now", SERVICE));
|
|
352
403
|
case "StopK3s": {
|
|
353
404
|
yield* systemctl("disable", "--now", SERVICE);
|
|
354
|
-
yield* killGvisor;
|
|
405
|
+
yield* killGvisor(yield* installedGvisor);
|
|
355
406
|
if (yield* fs.exists(under(root, KILLALL)))
|
|
356
407
|
yield* system.run(KILLALL, []);
|
|
357
408
|
return;
|
|
@@ -360,18 +411,18 @@ export const performNodeStep = (step) => Effect.gen(function* () {
|
|
|
360
411
|
// k3s first, which would start the pods gVisor's end again.
|
|
361
412
|
if (yield* serviceInstalled)
|
|
362
413
|
yield* systemctl("stop", SERVICE);
|
|
363
|
-
yield* killGvisor;
|
|
414
|
+
yield* killGvisor(yield* installedGvisor);
|
|
364
415
|
if (step.firewall)
|
|
365
416
|
yield* closeFirewall(step.firewall);
|
|
366
417
|
if (yield* fs.exists(under(root, UNINSTALL)))
|
|
367
418
|
yield* system.run(UNINSTALL, []);
|
|
368
419
|
yield* removeJuicefs;
|
|
369
420
|
// alasio's own, and the node's password, which k3s keeps and its uninstall script leaves.
|
|
370
|
-
for (const path of [
|
|
421
|
+
for (const path of [GVISOR_RELEASES, CONFIG_YAML, REGISTRIES_YAML, STAMP, CONTAINERD, NODE_PASSWORD]) {
|
|
371
422
|
yield* fs.remove(under(root, path), { recursive: true, force: true });
|
|
372
423
|
}
|
|
373
|
-
// What k3s's uninstall script leaves of the directories it made, when it is empty.
|
|
374
|
-
for (const path of [K3S_ETC, "/etc/rancher", "/var/lib/rancher/k3s", "/var/lib/rancher"]) {
|
|
424
|
+
// What k3s's uninstall script leaves of the directories it made, and of alasio's, when it is empty.
|
|
425
|
+
for (const path of [K3S_ETC, "/etc/rancher", "/var/lib/rancher/k3s", "/var/lib/rancher", dirname(GVISOR_RELEASES)]) {
|
|
375
426
|
const at = under(root, path);
|
|
376
427
|
if ((yield* fs.exists(at)) && (yield* fs.readDirectory(at)).length === 0)
|
|
377
428
|
yield* fs.remove(at, { recursive: true });
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../../src/cluster/node.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"node.js","sourceRoot":"","sources":["../../../../src/cluster/node.ts"],"names":[],"mappings":"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"}
|
|
@@ -1,5 +1,8 @@
|
|
|
1
|
-
/**
|
|
1
|
+
/** Tar archives: read, as Docker's archive endpoint and gVisor's release send them, and written, as Docker's archive endpoint takes them. */
|
|
2
2
|
const BLOCK = 512;
|
|
3
|
+
/** The most a header's name, and its prefix, hold. */
|
|
4
|
+
const NAME_SIZE = 100;
|
|
5
|
+
const PREFIX_SIZE = 155;
|
|
3
6
|
/** A NUL-terminated field of a header, as text. */
|
|
4
7
|
const field = (header, start, end) => header.toString("latin1", start, end).replace(/\0.*$/su, "");
|
|
5
8
|
/**
|
|
@@ -29,4 +32,43 @@ export function tarEntries(tar) {
|
|
|
29
32
|
}
|
|
30
33
|
return entries;
|
|
31
34
|
}
|
|
35
|
+
/** `value` in octal, as a header's numeric field of `width` bytes holds it: zero-padded, then NUL. */
|
|
36
|
+
const octal = (value, width) => `${value.toString(8).padStart(width - 1, "0")}\0`;
|
|
37
|
+
/**
|
|
38
|
+
* `name` as a POSIX header holds it: its prefix, and the rest, split at a slash when it is
|
|
39
|
+
* longer than a header's name; a directory's own trailing slash stays with the rest.
|
|
40
|
+
*/
|
|
41
|
+
function splitName(name) {
|
|
42
|
+
if (name.length <= NAME_SIZE)
|
|
43
|
+
return { prefix: "", rest: name };
|
|
44
|
+
const at = name.slice(0, -1).indexOf("/", name.length - NAME_SIZE - 1);
|
|
45
|
+
if (at <= 0 || at > PREFIX_SIZE)
|
|
46
|
+
throw new Error(`${name} is too long a name for a tar archive's header`);
|
|
47
|
+
return { prefix: name.slice(0, at), rest: name.slice(at + 1) };
|
|
48
|
+
}
|
|
49
|
+
/** The POSIX header of `entry`, owned by root, from the epoch. */
|
|
50
|
+
function header({ name, type, mode, content }) {
|
|
51
|
+
const block = Buffer.alloc(BLOCK);
|
|
52
|
+
const { prefix, rest } = splitName(name);
|
|
53
|
+
block.write(rest, 0, NAME_SIZE, "latin1");
|
|
54
|
+
block.write(octal(mode, 8), 100, "latin1");
|
|
55
|
+
block.write(octal(0, 8), 108, "latin1");
|
|
56
|
+
block.write(octal(0, 8), 116, "latin1");
|
|
57
|
+
block.write(octal(content.length, 12), 124, "latin1");
|
|
58
|
+
block.write(octal(0, 12), 136, "latin1");
|
|
59
|
+
block.write(type === "file" ? "0" : "5", 156, "latin1");
|
|
60
|
+
block.write("ustar\u000000", 257, "latin1");
|
|
61
|
+
block.write(prefix, 345, PREFIX_SIZE, "latin1");
|
|
62
|
+
// The checksum is the sum of the header's bytes with its own field as spaces, its last one kept.
|
|
63
|
+
block.write(" ".repeat(8), 148, "latin1");
|
|
64
|
+
block.write(octal(block.reduce((sum, byte) => sum + byte, 0), 7), 148, "latin1");
|
|
65
|
+
return block;
|
|
66
|
+
}
|
|
67
|
+
/** The POSIX tar archive of `entries`, in order: each one's header, then its content, padded to a block. */
|
|
68
|
+
export function tarArchive(entries) {
|
|
69
|
+
return Buffer.concat([
|
|
70
|
+
...entries.flatMap((entry) => [header(entry), entry.content, Buffer.alloc((BLOCK - (entry.content.length % BLOCK)) % BLOCK)]),
|
|
71
|
+
Buffer.alloc(2 * BLOCK),
|
|
72
|
+
]);
|
|
73
|
+
}
|
|
32
74
|
//# sourceMappingURL=tar.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tar.js","sourceRoot":"","sources":["../../../../src/cluster/tar.ts"],"names":[],"mappings":"AAAA,
|
|
1
|
+
{"version":3,"file":"tar.js","sourceRoot":"","sources":["../../../../src/cluster/tar.ts"],"names":[],"mappings":"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"}
|
|
@@ -82,11 +82,13 @@ const list = Command.make("list", {}, () => onCluster(() => Effect.gen(function*
|
|
|
82
82
|
const now = Date.now();
|
|
83
83
|
for (const branch of branches) {
|
|
84
84
|
const old = branch.createdAt === null ? "of no age known" : `${age(new Date(branch.createdAt), now)} old`;
|
|
85
|
+
const made = branch.version === null ? "" : `, made by alasio ${branch.version}`;
|
|
85
86
|
const alasio = branch.ready === null ? "no alasio" : branch.ready ? "its alasio ready" : "its alasio not ready";
|
|
86
87
|
const memory = `${memoryText(branch.requested)} requested${branch.used === null ? "" : `, ${memoryText(branch.used)} used`}`;
|
|
87
|
-
yield* Console.log(`${branch.name}: a branch of ${branch.parent ?? "nothing Neon has"}, ${old}, ${alasio}, ${memory}${branch.neon && branch.neon !== "ready" ? `, Neon's branch ${branch.neon}` : ""}`);
|
|
88
|
+
yield* Console.log(`${branch.name}: a branch of ${branch.parent ?? "nothing Neon has"}, ${old}${made}, ${alasio}, ${memory}${branch.neon && branch.neon !== "ready" ? `, Neon's branch ${branch.neon}` : ""}`);
|
|
88
89
|
}
|
|
89
|
-
}))).pipe(Command.withShortDescription("List the branch environments"), Command.withDescription("Says each branch environment's name, what it is a branch of, its age,
|
|
90
|
+
}))).pipe(Command.withShortDescription("List the branch environments"), Command.withDescription("Says each branch environment's name, what it is a branch of, its age, the release of alasio that made it, " +
|
|
91
|
+
"whether its alasio runs, and the memory its alasio, compute and lake request and use."));
|
|
90
92
|
const remove = Command.make("delete", {
|
|
91
93
|
name,
|
|
92
94
|
force: Flag.Boolean("force").pipe(Flag.withDefault(false), Flag.withDescription("Delete it even while its alasio has a turn running, or when that cannot be read")),
|
|
@@ -111,5 +113,7 @@ export const branch = Command.make("branch").pipe(Command.withSubcommands([creat
|
|
|
111
113
|
"cannot be narrowed: its lake has main's object store identity, as it reads main's files where they are and SeaweedFS's " +
|
|
112
114
|
"write permission deletes too; and its compute has Neon's storage token, the tenant's, as Neon's storage has no " +
|
|
113
115
|
"narrower one. A branch's pods reach main's storage services and nothing else of main's. A branch takes about the " +
|
|
114
|
-
"memory main's alasio, compute and lake take. Branches live until deleted
|
|
116
|
+
"memory main's alasio, compute and lake take. Branches live until deleted, each on the release of alasio that made it: " +
|
|
117
|
+
"alasio upgrade upgrades main alone, and refuses while a branch another release made exists, which would not run on what " +
|
|
118
|
+
"it changes; deleted first, a branch is made again on the upgraded release."));
|
|
115
119
|
//# sourceMappingURL=branch.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../../../src/commands/branch.ts"],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"branch.js","sourceRoot":"","sources":["../../../../src/commands/branch.ts"],"names":[],"mappings":"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"}
|