2022-02-09 14:38:36 +00:00
|
|
|
{ config, pkgs, ... } @ args:
|
|
|
|
|
|
|
|
{
|
2023-04-05 12:06:59 +00:00
|
|
|
deuxfleurs.clusterName = "prod";
|
2022-05-04 15:38:54 +00:00
|
|
|
|
2022-08-23 22:31:07 +00:00
|
|
|
# The IP range to use for the Wireguard overlay of this cluster
|
2023-04-05 12:06:59 +00:00
|
|
|
deuxfleurs.clusterPrefix = "10.83.0.0/16";
|
2022-05-04 15:38:54 +00:00
|
|
|
|
2023-04-21 09:29:15 +00:00
|
|
|
deuxfleurs.clusterNodes = {
|
2023-04-05 12:06:59 +00:00
|
|
|
"concombre" = {
|
|
|
|
siteName = "neptune";
|
2022-08-23 22:31:07 +00:00
|
|
|
publicKey = "VvXT0fPDfWsHxumZqVShpS33dJQAdpJ1E79ZbCBJP34=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.1.1";
|
2024-04-20 07:37:24 +00:00
|
|
|
endpoint = "82.67.87.112:33731";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
|
|
|
"courgette" = {
|
|
|
|
siteName = "neptune";
|
2022-08-23 22:31:07 +00:00
|
|
|
publicKey = "goTkBJGmzrGDOAjUcdH9G0JekipqSMoaYQdB6IHnzi0=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.1.2";
|
2024-04-20 07:37:24 +00:00
|
|
|
endpoint = "82.67.87.112:33732";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
|
|
|
"celeri" = {
|
|
|
|
siteName = "neptune";
|
2022-08-23 22:31:07 +00:00
|
|
|
publicKey = "oZDAb8LoLW87ktUHyFFec0VaIar97bqq47mGbdVqJ0U=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.1.3";
|
2024-04-20 07:37:24 +00:00
|
|
|
endpoint = "82.67.87.112:33733";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
|
|
|
"df-ykl" = {
|
|
|
|
siteName = "bespin";
|
2022-10-16 12:34:39 +00:00
|
|
|
publicKey = "bIjxey/VhBgVrLa0FxN/KISOt2XFmQeSh1MPivUq9gg=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.3.1";
|
2024-10-03 21:07:05 +00:00
|
|
|
endpoint = "109.130.116.21:33731";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
|
|
|
"df-ymf" = {
|
|
|
|
siteName = "bespin";
|
2022-10-16 10:08:27 +00:00
|
|
|
publicKey = "pUIKv8UBl586O7DBrHBsb9BgNU7WlYQ2r2RSNkD+JAQ=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.3.2";
|
2024-10-03 21:07:05 +00:00
|
|
|
endpoint = "109.130.116.21:33732";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
|
|
|
"df-ymk" = {
|
|
|
|
siteName = "bespin";
|
2022-10-16 10:08:27 +00:00
|
|
|
publicKey = "VBmpo15iIJP7250NAsF+ryhZc3j+8TZFnE1Djvn5TXI=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.3.3";
|
2024-10-03 21:07:05 +00:00
|
|
|
endpoint = "109.130.116.21:33733";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
|
|
|
"abricot" = {
|
|
|
|
siteName = "scorpio";
|
2023-03-15 16:10:38 +00:00
|
|
|
publicKey = "Sm9cmNZ/BfWVPFflMO+fuyiera4r203b/dKhHTQmBFg=";
|
2023-04-05 12:06:59 +00:00
|
|
|
address = "10.83.4.1";
|
2023-03-15 16:10:38 +00:00
|
|
|
endpoint = "82.65.41.110:33741";
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
2023-06-12 11:41:34 +00:00
|
|
|
"ananas" = {
|
|
|
|
siteName = "scorpio";
|
|
|
|
publicKey = "YC78bXUaAQ02gz0bApenM4phIo/oMPR78QCmyG0tay4=";
|
|
|
|
address = "10.83.4.2";
|
|
|
|
endpoint = "82.65.41.110:33742";
|
|
|
|
};
|
2024-05-15 09:50:49 +00:00
|
|
|
"onion" = {
|
|
|
|
siteName = "dathomir";
|
|
|
|
publicKey = "gpeqalqAUaYlMuebv3glQeZyE64+OpkyIHFhfStJQA4=";
|
|
|
|
address = "10.83.5.1";
|
|
|
|
endpoint = "82.64.238.84:33740";
|
|
|
|
};
|
2024-05-26 16:24:28 +00:00
|
|
|
"oseille" = {
|
|
|
|
siteName = "dathomir";
|
|
|
|
publicKey = "T87GzAQt02i00iOMbEm7McA/VL9OBrG/kCrgoNh5MmY=";
|
|
|
|
address = "10.83.5.2";
|
|
|
|
endpoint = "82.64.238.84:33741";
|
|
|
|
};
|
2024-05-26 15:04:18 +00:00
|
|
|
"io" = {
|
|
|
|
siteName = "dathomir";
|
|
|
|
publicKey = "3+VvWJtABOAd6zUCMROhqGbNtkQRtoIkVmYn0M81jQw=";
|
|
|
|
address = "10.83.5.3";
|
|
|
|
endpoint = "82.64.238.84:33742";
|
|
|
|
};
|
2024-06-27 14:04:23 +00:00
|
|
|
"ortie" = {
|
|
|
|
siteName = "dathomir";
|
|
|
|
publicKey = "tbx2mvt3TN3Xd+ermwwZ6it80VWT5949cKH9BRFgvzE=";
|
|
|
|
address = "10.83.5.4";
|
|
|
|
endpoint = "82.64.238.84:33743";
|
|
|
|
};
|
2024-07-14 15:51:25 +00:00
|
|
|
"pamplemousse" = {
|
|
|
|
siteName = "corrin";
|
|
|
|
publicKey = "6y5GrNXEql12AObuSfOHGxxUKpdlcyapu+juLYOEBhc=";
|
|
|
|
address = "10.83.6.1";
|
|
|
|
endpoint = "45.81.62.36:33731";
|
|
|
|
};
|
2024-11-28 20:26:54 +00:00
|
|
|
"pasteque" = {
|
|
|
|
siteName = "corrin";
|
|
|
|
publicKey = "7vPq0z6JVxTLEebasUlR5Uu4dAFZxfddhjWtIYhCoXw=";
|
|
|
|
address = "10.83.6.2";
|
|
|
|
endpoint = "45.81.62.36:33732";
|
|
|
|
};
|
2023-04-05 12:06:59 +00:00
|
|
|
};
|
2022-05-04 15:38:54 +00:00
|
|
|
|
2024-04-20 08:58:36 +00:00
|
|
|
# Pin Nomad version
|
2024-04-20 10:29:26 +00:00
|
|
|
services.nomad.package = pkgs.nomad_1_6;
|
2024-04-20 08:58:36 +00:00
|
|
|
nixpkgs.config.allowUnfree = true; # Accept nomad's BSL license
|
2024-04-20 08:09:55 +00:00
|
|
|
|
2022-05-04 15:38:54 +00:00
|
|
|
# Bootstrap IPs for Consul cluster,
|
2022-10-09 15:46:59 +00:00
|
|
|
# these are IPs on the Wireguard overlay
|
2022-05-04 15:38:54 +00:00
|
|
|
services.consul.extraConfig.retry_join = [
|
2022-10-18 13:44:15 +00:00
|
|
|
"10.83.3.1" # df-ykl
|
2024-11-28 20:46:00 +00:00
|
|
|
"10.83.4.2" # ananas
|
|
|
|
"10.83.6.1" # pamplemousse
|
2022-02-09 14:38:36 +00:00
|
|
|
];
|
2022-05-04 15:38:54 +00:00
|
|
|
|
2023-04-05 12:06:59 +00:00
|
|
|
deuxfleurs.adminAccounts = {
|
2022-02-09 14:38:36 +00:00
|
|
|
lx = [
|
|
|
|
# Keys for accessing nodes from outside
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJpaBZdYxHqMxhv2RExAOa7nkKhPBOHupMP3mYaZ73w9 lx@lindy"
|
2022-10-09 15:46:59 +00:00
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIIw+IIX8+lZX9RrHAbwi/bncLYStXpI4EmK3AUcqPY2O lx@kusanagi "
|
2022-02-09 14:38:36 +00:00
|
|
|
];
|
2022-05-04 15:38:54 +00:00
|
|
|
quentin = [
|
|
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDT1+H08FdUSvdPpPKdcafq4+JRHvFVjfvG5Id97LAoROmFRUb/ZOMTLdNuD7FqvW0Da5CPxIMr8ZxfrFLtpGyuG7qdI030iIRZPlKpBh37epZHaV+l9F4ZwJQMIBO9cuyLPXgsyvM/s7tDtrdK1k7JTf2EVvoirrjSzBaMhAnhi7//to8zvujDtgDZzy6aby75bAaDetlYPBq2brWehtrf9yDDG9WAMYJqp//scje/WmhbRR6eSdim1HaUcWk5+4ZPt8sQJcy8iWxQ4jtgjqTvMOe5v8ZPkxJNBine/ZKoJsv7FzKem00xEH7opzktaGukyEqH0VwOwKhmBiqsX2yN quentin@dufour.io"
|
|
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBu+KUebaWwlugMC5fGbNhHc6IaQDAC6+1vMc4Ww7nVU1rs2nwI7L5qcWxOwNdhFaorZQZy/fJuCWdFbF61RCKGayBWPLZHGPsfqDuggYNEi1Qil1kpeCECfDQNjyMTK058ZBBhOWNMHBjlLWXUlRJDkRBBECY0vo4jRv22SvSaPUCAnkdJ9rbAp/kqb497PTIb2r1l1/ew8YdhINAlpYQFQezZVfkZdTKxt22n0QCjhupqjfh3gfNnbBX0z/iO+RvAOWRIZsjPFLC+jXl+n7cnu2cq1nvST5eHiYfXXeIgIwmeENLKqp+2Twr7PIdv22PnJkh6iR5kx7eTRxkNZdN quentin@deuxfleurs.fr"
|
|
|
|
];
|
|
|
|
adrien = [
|
2022-11-09 17:35:17 +00:00
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAINvUFN6HmZS5oxxOtmF6ug393m5NYbSbDI4G8pX6H9GZ adrien@pratchett"
|
2022-05-04 15:38:54 +00:00
|
|
|
];
|
|
|
|
maximilien = [
|
2022-10-16 12:34:39 +00:00
|
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDHMMR6zNzz8NQU80wFquhUCeiXJuGphjP+zNouKbn228GyESu8sfNBwnuZq86vblR11Lz8l2rtCM73GfAKg29qmUWUHRKWvRIYWv2vaUJcCdy0bAxIzcvCvjZX0SpnIKxe9y3Rp0LGO5WLYfw0ZFaavwFZP0Z8w1Kj9/zBmL2X2avbhkaYHi/C1yXhbvESYQysmqLa48EX/TS616MBrgR9zbI9AoTQ9NOHnR14Tve/AP/khcZoBJdm4hTttMbNkEc0wonzdylTDew263SPRs/uoqnQIpUtErdPHqU10Yup8HjXjEyFJsSwcZcM5sZOw5JKckKJwmcd0yjO/x/4/Mk5 maximilien@icare"
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIGioTNbjGE3KblbqhnkEWUfGkYZ2p5UAVqPdQJaUBWoo maximilien@athena"
|
2022-05-04 15:38:54 +00:00
|
|
|
];
|
2022-11-09 17:35:17 +00:00
|
|
|
trinity = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIDWGWTRoF5MjQ5bmFdQENQlNdoYtA7Wd61GM0TMHZDki"
|
|
|
|
];
|
2022-11-22 11:09:28 +00:00
|
|
|
baptiste = [
|
|
|
|
"ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQCnGkJZZrHIUp9q0DXmVLLuhCIe7Vu1J3j6dJ1z1BglqX7yOLdFQ6LhHXx65aND/KCOM1815tJSnaAyKWEj9qJ31RVUoRl42yBn54DvQumamJUaXAHqJrXhjwxfUkF9B73ZSUzHGADlQnxcBkmrjC5FkrpC/s4xr0o7/GIBkBdtZhX9YpxBfpH6wEcCruTOlm92E3HvvjpBb/wHsoxL1f2czvWe69021gqWEYRFjqtBwP36NYZnGOJZ0RrlP3wUrGCSHxOKW+2Su+tM6g07KPJn5l1wNJiOcyBQ0/Sv7ptCJ9+rTQNeVBMoXshaucYP/bKJbqH7dONrYDgz59C4+Kax"
|
|
|
|
];
|
2024-01-17 19:07:46 +00:00
|
|
|
aeddis = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAILoFf9fMYwLOpmiXKgn4Rs99YCj94SU1V0gwGXR5N4Md"
|
|
|
|
];
|
|
|
|
boris = [
|
|
|
|
"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBPts/36UvMCFcx3anSMV8bQKGel4c4wCsdhDGWHzZHgg07DxMt+Wk9uv0hWkqLojkUbCl/bI5siftiEv6En0mHw="
|
|
|
|
"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBJaD6flgTLkKimMB1qukiLKLVqsN+gizgajETjTwbscXEP2Fajmqy+90v1eXTDcGivmTyi8wOqkJ0s4D7dWP7Ck="
|
|
|
|
"ecdsa-sha2-nistp256 AAAAE2VjZHNhLXNoYTItbmlzdHAyNTYAAAAIbmlzdHAyNTYAAABBBEIZKA/SIicXq7HPFJfumrMc1iARqA1TQWWuWLrguOlKgFPBVym/IVjtYGAQ/Xtv4wU9Ak0s+t9UKpQ/K38kVe0="
|
|
|
|
];
|
|
|
|
vincent = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIEve02acr522psrPxeElkwIPw2pc6QWtsUVZoaigqwZZ"
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL/h+rxR2o+vN0hUWQPdpO7YY9aaKxO3ZRnUh9QiKBE7"
|
|
|
|
];
|
2024-01-31 18:03:54 +00:00
|
|
|
armael = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJOoPghSM72AVp1zATgQzeLkuoGuP9uUTTAtwliyWoix"
|
|
|
|
];
|
2024-03-16 17:53:12 +00:00
|
|
|
marion = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIKzOhSTEOudBWCHi5wHc6MP0xjJJhuIDZEcx+hP6kz9N"
|
|
|
|
];
|
|
|
|
darkgallium = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIJX0A2P59or83EKhh32o8XumGz0ToTEsoq89hMbMtr7h"
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIB540H9kn+Ocs4Wjc1Y3f3OkHFYEqc5IM/FiCyoVVoh3"
|
|
|
|
];
|
2024-04-18 15:57:24 +00:00
|
|
|
kokakiwi = [
|
|
|
|
"ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIFPTsEgcOtb2bij+Ih8eg8ZqO7d3IMiWykv6deMzlSSS kokakiwi@kira"
|
|
|
|
];
|
2022-02-09 14:38:36 +00:00
|
|
|
};
|
2022-02-09 21:57:52 +00:00
|
|
|
|
|
|
|
# For Garage external communication
|
|
|
|
networking.firewall.allowedTCPPorts = [ 3901 ];
|
2022-12-11 21:37:28 +00:00
|
|
|
|
|
|
|
# All prod nodes were deployed on the same version.
|
|
|
|
# This could be put in individual node .nix files if we deploy
|
|
|
|
# newer nodes on a different system version, OR we can bump this
|
|
|
|
# regularly cluster-wide
|
|
|
|
system.stateVersion = "21.05";
|
2022-02-09 14:38:36 +00:00
|
|
|
}
|