at 21.11-pre 1.5 kB view raw
1import ../make-test-python.nix ({...}: { 2 nodes = { 3 namenode = {pkgs, ...}: { 4 services.hadoop = { 5 package = pkgs.hadoop_3_1; 6 hdfs.namenode.enabled = true; 7 coreSite = { 8 "fs.defaultFS" = "hdfs://namenode:8020"; 9 }; 10 hdfsSite = { 11 "dfs.replication" = 1; 12 "dfs.namenode.rpc-bind-host" = "0.0.0.0"; 13 "dfs.namenode.http-bind-host" = "0.0.0.0"; 14 }; 15 }; 16 networking.firewall.allowedTCPPorts = [ 17 9870 # namenode.http-address 18 8020 # namenode.rpc-address 19 ]; 20 }; 21 datanode = {pkgs, ...}: { 22 services.hadoop = { 23 package = pkgs.hadoop_3_1; 24 hdfs.datanode.enabled = true; 25 coreSite = { 26 "fs.defaultFS" = "hdfs://namenode:8020"; 27 }; 28 }; 29 networking.firewall.allowedTCPPorts = [ 30 9864 # datanode.http.address 31 9866 # datanode.address 32 9867 # datanode.ipc.address 33 ]; 34 }; 35 }; 36 37 testScript = '' 38 start_all() 39 40 namenode.wait_for_unit("hdfs-namenode") 41 namenode.wait_for_unit("network.target") 42 namenode.wait_for_open_port(8020) 43 namenode.wait_for_open_port(9870) 44 45 datanode.wait_for_unit("hdfs-datanode") 46 datanode.wait_for_unit("network.target") 47 datanode.wait_for_open_port(9864) 48 datanode.wait_for_open_port(9866) 49 datanode.wait_for_open_port(9867) 50 51 namenode.succeed("curl -f http://namenode:9870") 52 datanode.succeed("curl -f http://datanode:9864") 53 ''; 54})