mirror of
https://github.com/gensokyo-zone/infrastructure.git
synced 2026-02-09 04:19:19 -08:00
chore(nfs): goliath
This commit is contained in:
parent
db8981cad0
commit
681e25cd9c
4 changed files with 37 additions and 3 deletions
|
|
@ -14,6 +14,7 @@
|
||||||
systems = "${nfsRoot}/kyuuto/systems";
|
systems = "${nfsRoot}/kyuuto/systems";
|
||||||
gengetsu = "${nfsRoot.systems}/gengetsu";
|
gengetsu = "${nfsRoot.systems}/gengetsu";
|
||||||
mugetsu = "${nfsRoot.systems}/mugetsu";
|
mugetsu = "${nfsRoot.systems}/mugetsu";
|
||||||
|
goliath = "${nfsRoot.systems}/goliath";
|
||||||
};
|
};
|
||||||
in {
|
in {
|
||||||
services.nfs = {
|
services.nfs = {
|
||||||
|
|
@ -82,6 +83,24 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
"${nfsRoot.goliath}/root" = {
|
||||||
|
flags = flagSets.common ++ ["fsid=172"] ++ ["async"];
|
||||||
|
clients = {
|
||||||
|
goliath = {
|
||||||
|
machine = flagSets.goliathClients;
|
||||||
|
flags = flagSets.metal;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
"${nfsRoot.goliath}/boot" = {
|
||||||
|
flags = flagSets.common ++ ["fsid=173"] ++ ["async"];
|
||||||
|
clients = {
|
||||||
|
goliath = {
|
||||||
|
machine = flagSets.goliathClients;
|
||||||
|
flags = flagSets.metal;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
@ -130,5 +149,15 @@ in {
|
||||||
what = "${kyuuto.dataDir}/systems/mugetsu/fs/boot";
|
what = "${kyuuto.dataDir}/systems/mugetsu/fs/boot";
|
||||||
where = "${nfsRoot.mugetsu}/boot";
|
where = "${nfsRoot.mugetsu}/boot";
|
||||||
}
|
}
|
||||||
|
{
|
||||||
|
inherit type options wantedBy before;
|
||||||
|
what = "${kyuuto.dataDir}/systems/goliath/fs/root";
|
||||||
|
where = "${nfsRoot.goliath}/root";
|
||||||
|
}
|
||||||
|
{
|
||||||
|
inherit type options wantedBy before;
|
||||||
|
what = "${kyuuto.dataDir}/systems/goliath/fs/boot";
|
||||||
|
where = "${nfsRoot.goliath}/boot";
|
||||||
|
}
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
|
||||||
|
|
@ -66,6 +66,7 @@ in {
|
||||||
if addrs != [] then addrs
|
if addrs != [] then addrs
|
||||||
else lib.warn "${name} NFS: falling back to all LAN" cidrForNetwork.allLan.all;
|
else lib.warn "${name} NFS: falling back to all LAN" cidrForNetwork.allLan.all;
|
||||||
in allowed;
|
in allowed;
|
||||||
|
mkC4130Client = name: mkMetalClient name ++ mkMetalClient "idrac-${name}";
|
||||||
in {
|
in {
|
||||||
common = [
|
common = [
|
||||||
"no_subtree_check"
|
"no_subtree_check"
|
||||||
|
|
@ -103,8 +104,9 @@ in {
|
||||||
tailClients = optionals config.services.tailscale.enable cidrForNetwork.tail.all;
|
tailClients = optionals config.services.tailscale.enable cidrForNetwork.tail.all;
|
||||||
localClients = cidrForNetwork.allLan.all ++ flagSets.tailClients;
|
localClients = cidrForNetwork.allLan.all ++ flagSets.tailClients;
|
||||||
allClients = flagSets.clientGroups ++ flagSets.trustedClients ++ flagSets.localClients;
|
allClients = flagSets.clientGroups ++ flagSets.trustedClients ++ flagSets.localClients;
|
||||||
gengetsuClients = mkMetalClient "gengetsu";
|
gengetsuClients = mkC4130Client "gengetsu";
|
||||||
mugetsuClients = mkMetalClient "mugetsu";
|
mugetsuClients = mkC4130Client "mugetsu";
|
||||||
|
goliathClients = flagSets.gengetsuClients ++ flagSets.mugetsuClients;
|
||||||
};
|
};
|
||||||
root = {
|
root = {
|
||||||
path = "/srv/fs";
|
path = "/srv/fs";
|
||||||
|
|
|
||||||
|
|
@ -7,6 +7,9 @@
|
||||||
"/mnt/kyuuto-data/systems/gengetsu/fs/boot mnt/kyuuto-data/systems/gengetsu/fs/boot none bind,optional,create=dir",
|
"/mnt/kyuuto-data/systems/gengetsu/fs/boot mnt/kyuuto-data/systems/gengetsu/fs/boot none bind,optional,create=dir",
|
||||||
"/mnt/kyuuto-data/systems/mugetsu/fs/root mnt/kyuuto-data/systems/mugetsu/fs/root none bind,optional,create=dir",
|
"/mnt/kyuuto-data/systems/mugetsu/fs/root mnt/kyuuto-data/systems/mugetsu/fs/root none bind,optional,create=dir",
|
||||||
"/mnt/kyuuto-data/systems/mugetsu/fs/boot mnt/kyuuto-data/systems/mugetsu/fs/boot none bind,optional,create=dir",
|
"/mnt/kyuuto-data/systems/mugetsu/fs/boot mnt/kyuuto-data/systems/mugetsu/fs/boot none bind,optional,create=dir",
|
||||||
|
"/mnt/kyuuto-data/systems/goliath mnt/kyuuto-data/systems/goliath none bind,optional,create=dir",
|
||||||
|
"/mnt/kyuuto-data/systems/goliath/fs/root mnt/kyuuto-data/systems/goliath/fs/root none bind,optional,create=dir",
|
||||||
|
"/mnt/kyuuto-data/systems/goliath/fs/boot mnt/kyuuto-data/systems/goliath/fs/boot none bind,optional,create=dir",
|
||||||
"/dev/net/tun dev/net/tun none bind,optional,create=file"
|
"/dev/net/tun dev/net/tun none bind,optional,create=file"
|
||||||
],
|
],
|
||||||
"lxc.cgroup2.devices.allow": [
|
"lxc.cgroup2.devices.allow": [
|
||||||
|
|
|
||||||
|
|
@ -203,7 +203,7 @@ chmod 0775 /mnt/kyuuto-data/minecraft/simplebackups
|
||||||
|
|
||||||
mkkyuuto data/systems 0 0 0775
|
mkkyuuto data/systems 0 0 0775
|
||||||
nfsystemroot=/mnt/kyuuto-data/systems
|
nfsystemroot=/mnt/kyuuto-data/systems
|
||||||
for nfsystem in gengetsu mugetsu; do
|
for nfsystem in gengetsu mugetsu goliath; do
|
||||||
mkkyuuto data/systems/$nfsystem 0 0 0750
|
mkkyuuto data/systems/$nfsystem 0 0 0750
|
||||||
|
|
||||||
if [[ ! -d $nfsystemroot/$nfsystem/fs ]]; then
|
if [[ ! -d $nfsystemroot/$nfsystem/fs ]]; then
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue