| | 159 | |
| | 160 | After the installation you should be able to access the MaDDash web interface through https://central-ma-ip/maddash-webui. |
| | 161 | |
| | 162 | [[Image(https://ws.learn.ac.lk/raw-attachment/wiki/Nmm2022/Agenda/perfSONARuse/ps32.png)]] |
| | 163 | |
| | 164 | Step 4: Next we have to create a pSConfig template for feeding measurement tasks to the perfSONAR nodes. Sample templates can be found at /usr/share/doc/perfsonar/psconfig/ on the central measurement archive server. skeleton.json is basic sample configuration file to start with. Below is the configuration file that we are going to use in this installation. |
| | 165 | |
| | 166 | {{{ |
| | 167 | { |
| | 168 | "_meta":{ |
| | 169 | "display-name": "LEARN Measurements" |
| | 170 | }, |
| | 171 | |
| | 172 | "archives": { |
| | 173 | "example_esmond_archive": { |
| | 174 | "archiver": "esmond", |
| | 175 | "data": { |
| | 176 | "measurement-agent": "{% scheduled_by_address %}", |
| | 177 | "url": "https://192.248.4.62/esmond/perfsonar/archive/" |
| | 178 | } |
| | 179 | } |
| | 180 | }, |
| | 181 | |
| | 182 | "addresses": { |
| | 183 | "LEARN": { "address": "192.248.3.220" }, |
| | 184 | "NSRC": { "address": "perfsonar.nsrc.org" }, |
| | 185 | "LEARN2": { "address": "192.248.4.57" } |
| | 186 | }, |
| | 187 | |
| | 188 | "groups": { |
| | 189 | "example_group_mesh": { |
| | 190 | "type": "mesh", |
| | 191 | "addresses": [ |
| | 192 | { "name": "LEARN" }, |
| | 193 | { "name": "NSRC" }, |
| | 194 | { "name": "LEARN2" } |
| | 195 | ] |
| | 196 | |
| | 197 | } |
| | 198 | }, |
| | 199 | |
| | 200 | "tests": { |
| | 201 | "example_test_throughput": { |
| | 202 | "type": "throughput", |
| | 203 | "spec": { |
| | 204 | "source": "{% address[0] %}", |
| | 205 | "dest": "{% address[1] %}", |
| | 206 | "duration": "PT30S" |
| | 207 | } |
| | 208 | }, |
| | 209 | "example_test_latencybg": { |
| | 210 | "type": "latencybg", |
| | 211 | "spec": { |
| | 212 | "source": "{% address[0] %}", |
| | 213 | "dest": "{% address[1] %}", |
| | 214 | "flip": "{% flip %}" |
| | 215 | } |
| | 216 | }, |
| | 217 | "example_test_trace": { |
| | 218 | "type": "trace", |
| | 219 | "spec": { |
| | 220 | "source": "{% address[0] %}", |
| | 221 | "dest": "{% address[1] %}" |
| | 222 | } |
| | 223 | } |
| | 224 | }, |
| | 225 | |
| | 226 | "schedules": { |
| | 227 | "example_schedule_PT4H": { |
| | 228 | "repeat": "PT4H", |
| | 229 | "sliprand": true, |
| | 230 | "slip": "PT4H" |
| | 231 | }, |
| | 232 | "example_schedule_PT10M": { |
| | 233 | "repeat": "PT10M", |
| | 234 | "sliprand": true, |
| | 235 | "slip": "PT10M" |
| | 236 | } |
| | 237 | }, |
| | 238 | |
| | 239 | "tasks": { |
| | 240 | "example_task_throughput": { |
| | 241 | "group": "example_group_mesh", |
| | 242 | "test": "example_test_throughput", |
| | 243 | "schedule": "example_schedule_PT4H", |
| | 244 | "archives": [ "example_esmond_archive" ], |
| | 245 | "_meta": { |
| | 246 | "display-name": "Example Throughput Tests" |
| | 247 | } |
| | 248 | }, |
| | 249 | "example_task_latencybg": { |
| | 250 | "group": "example_group_mesh", |
| | 251 | "test": "example_test_latencybg", |
| | 252 | "archives": [ "example_esmond_archive" ], |
| | 253 | "_meta": { |
| | 254 | "display-name": "Example Loss Tests" |
| | 255 | } |
| | 256 | }, |
| | 257 | "example_task_trace": { |
| | 258 | "group": "example_group_mesh", |
| | 259 | "test": "example_test_trace", |
| | 260 | "schedule": "example_schedule_PT10M", |
| | 261 | "archives": [ "example_esmond_archive" ], |
| | 262 | "_meta": { |
| | 263 | "display-name": "Example Traceroute Tests" |
| | 264 | } |
| | 265 | } |
| | 266 | } |
| | 267 | } |
| | 268 | }}} |