github.com/Ilhicas/nomad@v1.0.4-0.20210304152020-e86851182bc3/website/content/api-docs/ui.mdx (about) 1 --- 2 layout: api 3 page_title: UI 4 sidebar_title: UI 5 description: The /ui namespace is used to access the Nomad web user interface. 6 --- 7 8 # Nomad Web UI 9 10 The Nomad UI is accessible at `/ui`. It is not namespaced by version. A request to `/` will also redirect to `/ui`. 11 12 ## List Jobs 13 14 This page lists all known jobs in a paginated, searchable, and sortable table. 15 16 | Path | Produces | 17 | ---------- | ----------- | 18 | `/ui/jobs` | `text/html` | 19 20 ### Parameters 21 22 - `namespace` `(string: "")` - Specifies the namespace all jobs should be a member 23 of. This is specified as a query string parameter. 24 25 - `sort` `(string: "")` - Specifies the property the list of jobs should be sorted by. 26 This is specified as a query string parameter. 27 28 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 29 or ascending. This is specified as a query string parameter. 30 31 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 32 visible jobs. This is specified as a query string parameter. 33 34 - `page` `(int: 1)` - Specifies the page in the jobs list that should be visible. This 35 is specified as a query string parameter. 36 37 - `type` `(string: "")` - Filters the list of jobs to those with a matching type. 38 39 - `status` `(string: "")` - Filters the list of jobs to those with a matching status. 40 41 - `dc` `(string: "")` - Filters the list of jobs to those allowed in a matching datacenter value. 42 43 - `prefix` `(string: "")` - Filters the list of jobs to those with names that start with a matching prefix. 44 45 ## Job Detail 46 47 This page shows an overview of a specific job. Details include name, status, type, 48 priority, allocation statuses, and task groups. Additionally, if there is a running 49 deployment for the job, it will be shown on the overview. 50 51 This page shows an overview of a specific job. The exact information shown varies 52 based on the type of job. 53 54 - **Service Job** - Includes job metadata (name, status, priority, namespace), allocation 55 statuses, placement failures, active deployment, task groups, and evaluations. 56 57 - **Batch Job** - Includes job metadata, allocation statuses, placement failures, task 58 groups, and evaluations. 59 60 - **System Job** - Includes job metadata, allocation statuses, placement failures, task 61 groups, and evaluations. 62 63 - **Periodic Job** - Includes job metadata, cron information force launch action, children statuses, 64 and children list. 65 66 - **Parameterized Job** - Includes job metadata, children statuses, and children list. 67 68 - **Periodic Child** - Includes job metadata, link to parent job, allocation statuses, placement 69 failures, task groups, and evaluations. 70 71 - **Parameterized Child** - Includes job metadata, link to parent job, allocation statuses, 72 placement failures, task groups, evaluations, and dispatch payload. 73 74 | Path | Produces | 75 | ------------------ | ----------- | 76 | `/ui/jobs/:job_id` | `text/html` | 77 78 ### Parameters 79 80 - `sort` `(string: "")` - Specifies the property the list of task groups should be 81 sorted by. This is specified as a query string parameter. 82 83 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 84 or ascending. This is specified as a query string parameter. 85 86 - `page` `(int: 1)` - Specifies the page in the task groups list that should be visible. This 87 is specified as a query string parameter. 88 89 ### Job Definition 90 91 This page shows the definition of a job as pretty-printed, syntax-highlighted, JSON. 92 93 | Path | Produces | 94 | ----------------------------- | ----------- | 95 | `/ui/jobs/:job_id/definition` | `text/html` | 96 97 ### Job Versions 98 99 This page lists all available versions for a job in a timeline view. Each version in 100 the timeline can be expanded to show a pretty-printed, syntax-highlighted diff between 101 job versions. 102 103 | Path | Produces | 104 | --------------------------- | ----------- | 105 | `/ui/jobs/:job_id/versions` | `text/html` | 106 107 ### Job Deployments 108 109 This page lists all available deployments for a job when the job has deployments. The 110 deployments are listed in a timeline view. Each deployment shows pertinent information 111 such as deployment ID, status, associated version, and submit time. Each deployment can 112 also be expanded to show detail information regarding canary placements, allocation 113 placements, healthy and unhealthy allocations, as well the current description for the 114 status. A table of task groups is also present in the detail view, which shows allocation 115 metrics by task group. Lastly, each expanded deployment lists all associated allocations 116 in a table to drill into for task events. 117 118 | Path | Produces | 119 | ------------------------------ | ----------- | 120 | `/ui/jobs/:job_id/deployments` | `text/html` | 121 122 ### Job Allocations 123 124 This page lists all allocations for a job in a table view. Each allocation includes status indicators (e.g., rescheduled, preempted, unhealthy driver), ID, a link to the task group detail page, the created timestamp, time since last modified, current status, version, a link to the client the allocation is running on, whether or not it has a volume requirement, the current CPU utilization, and the current memory utilization. 125 126 | Path | Produces | 127 | ------------------------------ | ----------- | 128 | `/ui/jobs/:job_id/allocations` | `text/html` | 129 130 ### Parameters 131 132 - `sort` `(string: "")` - Specifies the property the list of allocations should be sorted by. 133 This is specified as a query string parameter. 134 135 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 136 or ascending. This is specified as a query string parameter. 137 138 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 139 visible allocations. This is specified as a query string parameter. 140 141 - `page` `(int: 1)` - Specifies the page in the allocations list that should be visible. This 142 is specified as a query string parameter. 143 144 ### Job Evaluations 145 146 This page lists all evaluations for a job in a table view. Each evaluation includes the evaluation ID, priority, created timestamp, the event that triggered the evaluation, status, and whether or not there are placement failures. 147 148 | Path | Produces | 149 | ------------------------------ | ----------- | 150 | `/ui/jobs/:job_id/evaluations` | `text/html` | 151 152 ### Parameters 153 154 - `sort` `(string: "")` - Specifies the property the list of evaluations should be sorted by. 155 This is specified as a query string parameter. 156 157 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 158 or ascending. This is specified as a query string parameter. 159 160 ## Task Group Detail 161 162 This page shows an overview of a specific task group. Details include the number of tasks, the aggregated amount of reserved CPU, memory, and disk, all associated allocations broken 163 down by status, and a list of allocations. The list of allocations include details such as 164 status, the client the allocation was placed on, and the current CPU and Memory usage of the 165 allocations. 166 167 | Path | Produces | 168 | ----------------------------------- | ----------- | 169 | `/ui/jobs/:job_id/:task_group_name` | `text/html` | 170 171 ### Parameters 172 173 - `sort` `(string: "")` - Specifies the property the list of allocations should be sorted by. 174 This is specified as a query string parameter. 175 176 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 177 or ascending. This is specified as a query string parameter. 178 179 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 180 visible allocations. This is specified as a query string parameter. 181 182 - `page` `(int: 1)` - Specifies the page in the allocations list that should be visible. This 183 is specified as a query string parameter. 184 185 ## Allocation Detail 186 187 This page shows details and events for an allocation. Details include the job the allocation 188 belongs to, the client the allocation is placed on, a list of all tasks, and lists of task 189 events per task. Each task in the task list includes the task name, state, last event, time, 190 and addresses. Each task event in a task history list includes the time, type, and 191 description of the event. 192 193 | Path | Produces | 194 | --------------------------- | ----------- | 195 | `/ui/allocations/:alloc_id` | `text/html` | 196 197 ### Parameters 198 199 - `sort` `(string: "")` - Specifies the property the list of tasks should be sorted by. 200 This is specified as a query string parameter. 201 202 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 203 or ascending. This is specified as a query string parameter. 204 205 ## Allocation File System 206 207 This page will show either a directory listing of a path or the file at a path, depending on whether or not the path is a directory. Specifying no file path will show the root of the allocation file system. The file system is also navigible from the UI. Each entry in the directory listing will include the file size (assuming a file) and the last modified time. 208 209 If the file is text based, the UI will render the text inline and the stream the file contents as it updates. If the file is a well-known image format, the image will be rendered inline. In all other cases, the UI will prompt a download link. 210 211 | Path | Produces | 212 | ----------------------------------------- | ----------- | 213 | `/ui/allocations/:alloc_id/fs/:file_path` | `text/html` | 214 215 ### Parameters 216 217 - `sort` `(string: "")` - Specifies the property the list of files should be sorted by. 218 This is specified as a query string parameter. Only applies to directories. 219 220 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 221 or ascending. This is specified as a query string parameter. Only applies to directories. 222 223 ## Task Detail 224 225 This page shows details and events for a specific task. Details include when the task started 226 and stopped, all static and dynamic addresses, and all recent events. 227 228 | Path | Produces | 229 | -------------------------------------- | ----------- | 230 | `/ui/allocations/:alloc_id/:task_name` | `text/html` | 231 232 ## Task Logs 233 234 This page streams `stdout` and `stderr` logs for a task. By default, `stdout` is tailed, but 235 there are available actions to see the head of the log, pause and play streaming, and switching 236 to `stderr`. 237 238 | Path | Produces | 239 | ------------------------------------------- | ----------- | 240 | `/ui/allocations/:alloc_id/:task_name/logs` | `text/html` | 241 242 ## Task File System 243 244 This page will show either a directory listing of a path or the file at a path, depending on whether or not the path is a directory. Specifying no file path will show the root of the task file system (which is within the allocation file system). The file system is also navigible from the UI. Each entry in the directory listing will include the file size (assuming a file) and the last modified time. 245 246 If the file is text based, the UI will render the text inline and the stream the file contents as it updates. If the file is a well-known image format, the image will be rendered inline. In all other cases, the UI will prompt a download link. 247 248 | Path | Produces | 249 | ----------------------------------------- | ----------- | 250 | `/ui/allocations/:alloc_id/fs/:file_path` | `text/html` | 251 252 ### Parameters 253 254 - `sort` `(string: "")` - Specifies the property the list of files should be sorted by. 255 This is specified as a query string parameter. Only applies to directories. 256 257 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 258 or ascending. This is specified as a query string parameter. Only applies to directories. 259 260 ## Exec Job 261 262 This page will show a side bar navigation to traverse the job's task groups and tasks. The majority of this page is a latent terminal window. Using the side bar navigation will transition to the exec task page which establishes a `nomad exec` connection. 263 264 This page is meant to be rendered in a popup window. 265 266 | Path | Produces | 267 | ------------------ | ----------- | 268 | `/ui/exec/:job_id` | `text/html` | 269 270 ### Parameters 271 272 - `allocation` `(string: "")` - An allocation ID that specifies which allocation to exec into. 273 274 ## Exec Task Group 275 276 This page will show a side bar navigation to traverse the job's task groups and tasks with the selected task group already open. The majority of this page is a latent terminal window. Using the side bar navigation will transition to the exec task page which establishes a `nomad exec` connection. 277 278 This page is meant to be rendered in a popup window. 279 280 | Path | Produces | 281 | ------------------------------ | ----------- | 282 | `/ui/exec/:job_id/:task_group` | `text/html` | 283 284 ### Parameters 285 286 - `allocation` `(string: "")` - An allocation ID that specifies which allocation to exec into. 287 288 ## Exec Task 289 290 This page will show a side bar navigation to traverse the job's task group's tasks. The majority of this page is a terminal window. The terminal window will be prepopulated with a `nomad exec` command. The specific command used to establish an interactive connection can be modified (e.g., changing `/bin/bash` to `/bin/sh`). Upon submitting the command, a websocket connection is opened to facilitate bidirectional communication between this terminal window and the task running on a Nomad client. 291 292 This page is meant to be rendered in a popup window. 293 294 | Path | Produces | 295 | ------------------------------ | ----------- | 296 | `/ui/exec/:job_id/:task_group` | `text/html` | 297 298 ### Parameters 299 300 - `allocation` `(string: "")` - An allocation ID that specifies which allocation to exec into. When not specified, an allocation for the specified task group is chosen at random. 301 302 ## Clients List 303 304 This page lists all clients in the Nomad cluster in a sortable, searchable, paginated 305 table. 306 307 | Path | Produces | 308 | ------------- | ----------- | 309 | `/ui/clients` | `text/html` | 310 311 ### Parameters 312 313 - `sort` `(string: "")` - Specifies the property the list of clients should be sorted by. 314 This is specified as a query string parameter. 315 316 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 317 or ascending. This is specified as a query string parameter. 318 319 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 320 visible clients . This is specified as a query string parameter. 321 322 - `page` `(int: 1)` - Specifies the page in the clients list that should be visible. This 323 is specified as a query string parameter. 324 325 - `class` `(string: "")` - Filters the list of clients to those with a matching node class. 326 327 - `state` `(string: "")` - Filters the list of clients to those with a matching state. Options include `initializing`, `ready`, `down`, `ineligible`, and `draining`. 328 329 - `dc` `(string: "")` - Filters the list of clients to those in the specified datacenter. 330 331 - `volume` `(string: "")` - Filters the list of clients to those with a matching host volume (by name). 332 333 ## Client Detail 334 335 This page shows the details of a client, including the client name, status, full ID, 336 address, port, datacenter, allocations, and attributes. 337 338 | Path | Produces | 339 | ------------------------ | ----------- | 340 | `/ui/clients/:client_id` | `text/html` | 341 342 ### Parameters 343 344 - `sort` `(string: "")` - Specifies the property the list of allocations should be sorted by. 345 This is specified as a query string parameter. 346 347 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 348 or ascending. This is specified as a query string parameter. 349 350 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 351 visible allocations. This is specified as a query string parameter. 352 353 - `page` `(int: 1)` - Specifies the page in the allocations list that should be visible. This 354 is specified as a query string parameter. 355 356 ## Client Monitor 357 358 This page streams log messages from a client's agent. It is the equivalent to the `nomad monitor` command with `-node-id` set to the client specified in the URL. 359 360 | Path | Produces | 361 | -------------------------------- | ----------- | 362 | `/ui/clients/:client_id/monitor` | `text/html` | 363 364 ### Parameters 365 366 - `level` `(string: "info")` - Specifies the log level to monitor at. Possible values, in order of verbosity, include `trace`, `debug`, `info`, `warn`, and `error`. 367 368 ## Servers List 369 370 This page lists all servers in the Nomad cluster in a sortable table. Details for each 371 server include the server status, address, port, datacenter, and whether or not it is 372 the leader. 373 374 | Path | Produces | 375 | ------------- | ----------- | 376 | `/ui/servers` | `text/html` | 377 378 ### Parameters 379 380 - `sort` `(string: "")` - Specifies the property the list of server agents should be sorted by. 381 This is specified as a query string parameter. 382 383 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 384 or ascending. This is specified as a query string parameter. 385 386 - `page` `(int: 1)` - Specifies the page in the server agents list that should be visible. This 387 is specified as a query string parameter. 388 389 ## Server Detail 390 391 This page lists all tags associated with a server. 392 393 | Path | Produces | 394 | ------------------------ | ----------- | 395 | `/ui/servers/:server_id` | `text/html` | 396 397 ## Server Monitor 398 399 This page streams log messages from a server's agent. It is the equivalent to the `nomad monitor` command with `-server-id` set to the server specified in the URL. 400 401 | Path | Produces | 402 | -------------------------------- | ----------- | 403 | `/ui/servers/:server_id/monitor` | `text/html` | 404 405 ### Parameters 406 407 - `level` `(string: "info")` - Specifies the log level to monitor at. Possible values, in order of verbosity, include `trace`, `debug`, `info`, `warn`, and `error`. 408 409 ## CSI Volumes 410 411 This page lists all CSI volumes registered with the Nomad cluster by namespace. Each volume includes the volume name, health, controller plugin health, node plugin health, provider, and number of attached allocations. 412 413 | Path | Produces | 414 | ----------------- | ----------- | 415 | `/ui/csi/volumes` | `text/html` | 416 417 ### Parameters 418 419 - `namespace` `(string: "")` - Specifies the namespace all volumes should be a member 420 of. This is specified as a query string parameter. 421 422 - `sort` `(string: "")` - Specifies the property the list of volumes should be sorted by. 423 This is specified as a query string parameter. 424 425 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 426 or ascending. This is specified as a query string parameter. 427 428 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 429 visible volumes. This is specified as a query string parameter. 430 431 - `page` `(int: 1)` - Specifies the page in the volumes list that should be visible. This 432 is specified as a query string parameter. 433 434 ## CSI Volume 435 436 This page shows information for a CSI volume. This includes whether or not the volume is available for scheduling, the CSI provider, the external ID, and the namespace. This page also includes a table of constraints (access mode and attachment mode), and tables for all attached allocations in `read` mode and `read/write` mode. 437 438 | Path | Produces | 439 | ---------------------------- | ----------- | 440 | `/ui/csi/volumes/:volume_id` | `text/html` | 441 442 ## CSI Plugins 443 444 This page lists all CSI plugins registered with the Nomad cluster. Each plugin includes the plugin ID, controller plugin health, node plugin health, and CSI provider. 445 446 | Path | Produces | 447 | ----------------- | ----------- | 448 | `/ui/csi/plugins` | `text/html` | 449 450 ### Parameters 451 452 - `sort` `(string: "")` - Specifies the property the list of plugins should be sorted by. 453 This is specified as a query string parameter. 454 455 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 456 or ascending. This is specified as a query string parameter. 457 458 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 459 visible plugins. This is specified as a query string parameter. 460 461 - `page` `(int: 1)` - Specifies the page in the plugins list that should be visible. This 462 is specified as a query string parameter. 463 464 ## CSI Plugin 465 466 This page shows information for a CSI plugin. This includes the proportion of healthy controller allocations, the proportion of healthy node allocations, a table of some controller allocations, and a table of some node allocations. Some of this information may be intentionally omitted based on the type of CSI plugin. 467 468 | Path | Produces | 469 | ---------------------------- | ----------- | 470 | `/ui/csi/plugins/:plugin_id` | `text/html` | 471 472 ## CSI Plugin Allocations 473 474 This page lists all allocations for a CSI plugin. Each allocation includes the standard allocation information (including status indicators, ID, created timestamp, time since last modified, a link to the client the allocation is running on, a link to the job the allocation is for, the job version, volume requirements, current CPU utilization, and current memory utilization) as well as whether or not the allocation is healthy as defined by CSI. 475 476 | Path | Produces | 477 | ----------------- | ----------- | 478 | `/ui/csi/plugins` | `text/html` | 479 480 ### Parameters 481 482 - `sort` `(string: "")` - Specifies the property the list of allocations should be sorted by. 483 This is specified as a query string parameter. 484 485 - `desc` `(boolean: false)` - Specifies whether or not the sort direction is descending 486 or ascending. This is specified as a query string parameter. 487 488 - `search` `(string: "")` - Specifies a regular expression used to filter the list of 489 visible allocations. This is specified as a query string parameter. 490 491 - `page` `(int: 1)` - Specifies the page in the allocations list that should be visible. This 492 is specified as a query string parameter. 493 494 - `healthy` `(boolean: unset)` - Filters the list of allocations to only those with a matching health value. Value must be `true`, `false`, or unset. 495 496 - `type` `(string: "")` - Filters the list of allocations to only those with a matching plugin type. Value must be `controller`, `node`, or unset. 497 498 ## Optimize 499 500 ~> **Enterprise Only!** This feature depends on functionality only present in Nomad Autoscaler Enterprise. 501 502 This page lists all recommendations surfaced by [dynamic application sizing](/docs/autoscaling#dynamic-application-sizing). This page will automatically redirect to the recommendation summary route for the first recommendation sorted by relevance. 503 504 Each recommendation in the list will contain information including the job and task group the recommendation is for, the time the recommendation was surfaced, the number of allocations impacted, the difference in CPU the recommendation suggests, the difference in memory the recommendation suggests, and the aggregate change in CPU and memory given the number of allocations impacted. 505 506 | Path | Produces | 507 | -------------- | ----------- | 508 | `/ui/optimize` | `text/html` | 509 510 ### Parameters 511 512 - `namespace` `(string: "")` - Specifies the namespace all recommendations should be a member of. This is specified as a query string parameter. 513 514 - `all-namespaces` `(boolean: false)` - Overrides the namespace parameter and returns all recommendations for all namespaces the active ACL token is authorized for. 515 516 - `search` `(string: "")` - Specifies a regular expression used to filter the list of visible recommendations. This is specified as a query string parameter. 517 518 - `type` `(string: "")` - Filters the list of recommendations to only those for jobs with a matching type. 519 520 - `status` `(string: "")` - Filters the list of recommendations to only those for jobs with a matching status. 521 522 - `dc` `(string: "")` - Filters the list of recommendations to only those for jobs allowed in a matching datacenter value. 523 524 - `prefix` `(string: "")` - Filters the list of recommendations to only those for jobs with names that start with a matching prefix. 525 526 ## Recommendation Summary 527 528 This page includes the same list of recommendations as the optimize route as well as the recommendation card for the job and task group specified in the URL. The recommendation card includes a list of all tasks for the task group as well as toggles for each recommendation available (potentially CPU and memory for each task). The card also shows before, after, and delta values for each recommendation. The before and after values are also presented in a chart that overlays the mean, p99, and max utilization values of the task a recommendation is for. 529 530 | Path | Produces | 531 | --------------------------------------- | ----------- | 532 | `/ui/optimize/:job_id/:task_group_name` | `text/html` | 533 534 ### Parameters 535 536 - `namespace` `(string: "")` - Specifies the namespace of the job the recommendation is for. 537 538 ## Topology Visualization 539 540 This page includes a visualization of all starting and running allocations grouped by client and by datacenter. 541 542 | Path | Produces | 543 | -------------- | ----------- | 544 | `/ui/topology` | `text/html` | 545 546 ## ACL Tokens 547 548 This page lets you enter an ACL token (both accessor ID and secret ID) to use with the UI. 549 If the cluster does not have ACLs enabled, this page is unnecessary. If the cluster has an 550 anonymous policy that grants cluster-wide read access, this page is unnecessary. If the 551 anonymous policy only grants partial read access, then providing an ACL Token will 552 authenticate all future requests to allow read access to additional resources. 553 554 | Path | Produces | 555 | --------------------- | ----------- | 556 | `/ui/settings/tokens` | `text/html` |