-
Notifications
You must be signed in to change notification settings - Fork 2
Configuration
This page describes some of the configuration options of netSLS in more detail.
It is possible to run netSLS on hosts separate from the MaxiNet hosts, thus enabling easier development and better load balancing. Especially SLS may run on a different host than the Network Emulator.
All SLS related configuration files are stored under sls/hadoop/etc/hadoop. The following subsections provide an overview of the parameters most interesting for users of netSLS.
-
Simulation
- yarn.sls.runner.pool.size [Default: 100]
Number of threads for simulating nodes and Application Masters. Note that this parameter does not affect the size of simulation scenarios, but merely the degree of parallelism of the simulation.
- yarn.sls.runner.pool.size [Default: 100]
-
Nodes configuration
This sections configures the resources available on every node. This, in combination with the containers configuration, has direct impact on the number of parallel Hadoop tasks run on every simulated node.- yarn.sls.nm.memory.mb [Default: 10240]
Memory size of the simulated nodes. - yarn.sls.nm.vcores [Default: 10]
Number of CPU cores ot the simulated nodes.
- yarn.sls.nm.memory.mb [Default: 10240]
-
Containers configuration
A container is the minimum unit of allocation in Hadoop. An Application Master requests containers on the nodes to perform computations.- yarn.sls.container.memory.mb [Default: 1024]
Memory size of one container. - yarn.sls.container.vcores [Default: 1]
Number of CPU cores in one container.
- yarn.sls.container.memory.mb [Default: 1024]
-
Network Emulator configuration
- yarn.sls.networkemulator.enabled [Default: true]
Enables or disables the network emulator. If disabled netSLS does no network emulation at all, thus behaving like plain SLS. - yarn.sls.networkemulator.zmq.url [Default: tcp://localhost:5500]
URL of the zmq publisher. The host should be the same as in the RPC url. The port depends on the configuration of netSLS. - yarn.sls.networkemulator.rpc.url [Default: http://localhost:5501]
URL of the netSLS RPC server. The host should be the same as in the ZMQ url. The port depends on the configuration of netSLS.
- yarn.sls.networkemulator.enabled [Default: true]
- yarn.resourcemanager.scheduler.class [Default: org.apache.hadoop.yarn.server.resourcemanager.scheduler.fair.FairScheduler]
Select the job scheduler used by SLS.
These files are used to configure the different job schedulers. Read the documentation on fair scheduler and capacity scheduler for details.
The host running the Network Emulator has three parts the need to be configured appropriately.
This file configures the Network Emulator application itself. The default configuration and
parameter documentation can be found in the file network_emulator/network_emulator.cfg. If there
are no port conflicts on your system, the should be no need to modify this file.
Ensure that the PublisherPort(5500) and RPCServerPort(5501) are matching the ports used in the
sls-runner.xml
The Network Emulator is a MaxiNet application and therefore requires the configuration of the MaxiNet cluster. Copy the MaxiNet.cfg file from any of the MaxiNet hosts (/etc/MaxiNet.cfg) to network_emulator/MaxiNet.cfg.
The Network Emulator needs to run commands on all MaxiNet workers to track the progress of
transmissions. Therefore it requires password-less access to all MaxiNet workers.
For every worker place the following entry in ~/.ssh/config (substitute worker_hostname,
maxinet_user and a.b.c.d appropriately).
Host worker_hostname
User maxinet_user
HostName a.b.c.d
After that copy the ssh key to every MaxiNet worker:
ssh-copy-id worker_hostname