at 18.09-beta 1.6 kB view raw
1import ../make-test.nix ({...}: { 2 nodes = { 3 resourcemanager = {pkgs, ...}: { 4 services.hadoop.package = pkgs.hadoop_3_1; 5 services.hadoop.yarn.resourcemanager.enabled = true; 6 services.hadoop.yarnSite = { 7 "yarn.resourcemanager.scheduler.class" = "org.apache.hadoop.yarn.server.resourcemanager.scheduler.fifo.FifoScheduler"; 8 }; 9 networking.firewall.allowedTCPPorts = [ 10 8088 # resourcemanager.webapp.address 11 8031 # resourcemanager.resource-tracker.address 12 ]; 13 }; 14 nodemanager = {pkgs, ...}: { 15 services.hadoop.package = pkgs.hadoop_3_1; 16 services.hadoop.yarn.nodemanager.enabled = true; 17 services.hadoop.yarnSite = { 18 "yarn.resourcemanager.hostname" = "resourcemanager"; 19 "yarn.nodemanager.log-dirs" = "/tmp/userlogs"; 20 "yarn.nodemanager.address" = "0.0.0.0:8041"; 21 }; 22 networking.firewall.allowedTCPPorts = [ 23 8042 # nodemanager.webapp.address 24 8041 # nodemanager.address 25 ]; 26 }; 27 28 }; 29 30 testScript = '' 31 startAll; 32 33 $resourcemanager->waitForUnit("yarn-resourcemanager"); 34 $resourcemanager->waitForUnit("network.target"); 35 $resourcemanager->waitForOpenPort(8031); 36 $resourcemanager->waitForOpenPort(8088); 37 38 $nodemanager->waitForUnit("yarn-nodemanager"); 39 $nodemanager->waitForUnit("network.target"); 40 $nodemanager->waitForOpenPort(8042); 41 $nodemanager->waitForOpenPort(8041); 42 43 $resourcemanager->succeed("curl http://localhost:8088"); 44 $nodemanager->succeed("curl http://localhost:8042"); 45 ''; 46})