Ceph almost working
This commit is contained in:
@@ -0,0 +1,33 @@
|
|||||||
|
{ config, ... }:
|
||||||
|
|
||||||
|
let
|
||||||
|
publicIp = (builtins.elemAt config.networking.interfaces.enp38s0.ipv4.addresses 0).address;
|
||||||
|
sanIp = (builtins.elemAt config.networking.interfaces.enp39s0.ipv4.addresses 0).address;
|
||||||
|
vip = (builtins.elemAt config.networking.interfaces.enp38s0.ipv4.addresses 1).address;
|
||||||
|
hostname = config.networking.hostName;
|
||||||
|
baseConfig = import ../../ceph/home.nix;
|
||||||
|
in {
|
||||||
|
services.ceph-benaco = baseConfig // {
|
||||||
|
enable = true;
|
||||||
|
monitor = {
|
||||||
|
enable = true;
|
||||||
|
initialKeyring = ../../secrets/home.mon.keyring;
|
||||||
|
nodeName = hostname;
|
||||||
|
bindAddr = publicIp;
|
||||||
|
advertisedPublicAddr = vip;
|
||||||
|
};
|
||||||
|
osdBindAddr = publicIp;
|
||||||
|
osdAdvertisedPublicAddr = publicIp;
|
||||||
|
osds = {
|
||||||
|
osd1 = {
|
||||||
|
enable = true;
|
||||||
|
bootstrapKeyring = ../../secrets/home.osd-bootstrap.keyring;
|
||||||
|
id = 2;
|
||||||
|
uuid = "73424b68-210b-415f-800f-8767babea625";
|
||||||
|
blockDevice = "/dev/disk/by-id/ata-ST12000NM0558_ZHZ5WM4L";
|
||||||
|
blockDeviceUdevRuleMatcher = ''KERNEL=="sdb"'';
|
||||||
|
clusterAddress = sanIp;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
||||||
@@ -1,6 +1,7 @@
|
|||||||
{ config, pkgs, lib, ... }:
|
{ config, pkgs, lib, ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
|
./ceph.nix
|
||||||
./hardware-configuration.nix
|
./hardware-configuration.nix
|
||||||
./git.nix
|
./git.nix
|
||||||
./matrix.nix
|
./matrix.nix
|
||||||
|
|||||||
@@ -445,7 +445,7 @@ in
|
|||||||
|
|
||||||
OSD_SECRET=$(${cfg.package}/bin/ceph-authtool --gen-print-key)
|
OSD_SECRET=$(${cfg.package}/bin/ceph-authtool --gen-print-key)
|
||||||
echo "{\"cephx_secret\": \"$OSD_SECRET\"}" | \
|
echo "{\"cephx_secret\": \"$OSD_SECRET\"}" | \
|
||||||
${cfg.package}/bin/ceph osd new ${osdConfig.uuid} ${toString osdConfig.id} -i - \
|
${cfg.package}/bin/ceph --cluster ${cfg.clusterName} osd new ${osdConfig.uuid} ${toString osdConfig.id} -i - \
|
||||||
-n client.bootstrap-osd -k ${osdConfig.bootstrapKeyring}
|
-n client.bootstrap-osd -k ${osdConfig.bootstrapKeyring}
|
||||||
mkdir -p /var/lib/ceph/osd/${cfg.clusterName}-${toString osdConfig.id}
|
mkdir -p /var/lib/ceph/osd/${cfg.clusterName}-${toString osdConfig.id}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user