Commit Graph

66 Commits

Author SHA1 Message Date
Michael Schurter
8caa1c5b0d Bump to 0.9.1-dev 2019-04-09 09:01:48 -07:00
Nomad Release bot
18dd59056e Generate files for 0.9.0 release 2019-04-09 01:56:00 +00:00
Michael Schurter
b51e9e09fc Remove 0.9.0-rc2 generated files 2019-04-03 07:41:09 -07:00
Nomad Release bot
6a838b8c3b Generate files for 0.9.0-rc2 release 2019-04-03 01:54:29 +00:00
Michael Schurter
a77f769f1e Bump to dev post-0.9.0-rc1 release 2019-03-22 08:26:30 -07:00
Nomad Release bot
7c00ab4f3f Generate files for 0.9.0-rc1 release 2019-03-21 19:06:13 +00:00
Michael Schurter
8ea6718ceb Remove generated files for 0.9.0-beta3 2019-02-26 10:34:08 -08:00
Michael Schurter
b849d84f2f Generate files for 0.9.0-beta3 release 2019-02-26 09:44:49 -08:00
Michael Schurter
ff63b1aefe Remove 0.9.0-beta2 generated files 2019-02-01 08:28:44 -08:00
Alex Dadgar
29a5d242e6 Generate files for 0.9.0-beta2 2019-01-30 13:31:50 -08:00
Alex Dadgar
7d7b922cf0 remove generated structs 2019-01-30 12:38:34 -08:00
Alex Dadgar
ecec3d38de Nomad 0.9.0-beta1 generated code 2019-01-30 10:49:44 -08:00
Mahmood Ali
b5c20aa50b Track Basic Memory Usage as reported by cgroups
Track current memory usage, `memory.usage_in_bytes`, in addition to
`memory.max_memory_usage_in_bytes` and friends.  This number is closer
what Docker reports.

Related to https://github.com/hashicorp/nomad/issues/5165 .
2019-01-14 18:47:52 -05:00
Mahmood Ali
c0162fab35 move cstructs.DeviceNetwork to drivers pkg 2019-01-08 09:11:47 -05:00
Mahmood Ali
694e3010c2 use drivers.FSIsolation 2019-01-08 09:11:47 -05:00
Alex Dadgar
144866a87b Mock driver has recovery, stats 2019-01-07 14:49:40 -08:00
Danielle Tomlinson
da48a7eab3 client: Move fingerprint structs to pkg
This removes a cyclical dependency when importing client/structs from
dependencies of the plugin_loader, specifically, drivers. Due to
client/config also depending on the plugin_loader.

It also better reflects the ownership of fingerprint structs, as they
are fairly internal to the fingerprint manager.
2018-12-01 17:10:39 +01:00
Danielle Tomlinson
756325bcbd client: Merge driver/shared/structs and client/structs 2018-11-30 10:56:45 +01:00
Michael Schurter
518d03d7cd fix mispelings 2018-11-27 16:33:55 -08:00
Michael Schurter
748448970b client: comment on importance of chan ops ordering 2018-11-27 14:11:32 -08:00
Mahmood Ali
9e1d51659b Update client/structs/broadcaster.go
Co-Authored-By: schmichael <michael.schurter@gmail.com>
2018-11-27 14:06:08 -08:00
Michael Schurter
ff7df70f32 client: fix send-after-close in broadcaster 2018-11-27 14:06:08 -08:00
Michael Schurter
6d49163b12 client: emit last sent alloc to new listeners
Fixes a deadlock where the allocwatcher would block forever waiting for
an update from a terminal alloc.

Made the broadcaster easier to debug as well.
2018-11-27 14:06:08 -08:00
Mahmood Ali
58cbafe913 Populate alloc stats API with device stats
This change makes few compromises:

* Looks up the devices associated with tasks at look up time.  Given
that `nomad alloc status` is called rarely generally (compared to stats
telemetry and general job reporting), it seems fine.  However, the
lookup overhead grows bounded by number of `tasks x total-host-devices`,
which can be significant.

* `client.Client` performs the task devices->statistics lookup.  It
passes self to alloc/task runners so they can look up the device statistics
allocated to them.
  * Currently alloc/task runners are responsible for constructing the
entire RPC response for stats
  * The alternatives for making task runners device statistics aware
don't seem appealing (e.g. having task runners contain reference to hostStats)

* On the alloc aggregation resource usage, I did a naive merging of task device statistics.
  * Personally, I question the value of such aggregation, compared to
costs of struct duplication and bloating the response - but opted to be
consistent in the API.
  * With naive concatination, device instances from a single device group used by separate tasks in the alloc, would be aggregated in two separate device group statistics.
2018-11-16 10:26:32 -05:00
Michael Schurter
2b5d840eaa arv2: implement alloc health watching
Also remove initial alloc from broadcaster as it just caused useless
extra processing.
2018-10-16 16:53:30 -07:00
Michael Schurter
12171cdc28 make AllocBroadcaster easier to use
And test thoroughly.
2018-10-16 16:53:30 -07:00
Michael Schurter
c95155d45c implement stopping, destroying, and disk migration
* Stopping an alloc is implemented via Updates but update hooks are
  *not* run.
* Destroying an alloc is a best effort cleanup.
* AllocRunner destroy hooks implemented.
* Disk migration and blocking on a previous allocation exiting moved to
  its own package to avoid cycles. Now only depends on alloc broadcaster
  instead of also using a waitch.
* AllocBroadcaster now only drops stale allocations and always keeps the
  latest version.
* Made AllocDir safe for concurrent use

Lots of internal contexts that are currently unused. Unsure if they
should be used or removed.
2018-10-16 16:53:30 -07:00
Alex Dadgar
49c2d4f775 Scheduler uses allocated resources 2018-10-02 17:08:25 -07:00
Alex Dadgar
b310a54aa6 Node resources on client 2018-09-29 17:23:41 -07:00
Alex Dadgar
bc48fc33b5 remove structs + bump version 2018-06-11 13:52:19 -07:00
Alex Dadgar
dbee1d7d05 bump version + generated files 2018-06-11 13:39:42 -07:00
Alex Dadgar
ab5ee4be9e remove generated structs 2018-06-01 16:11:28 -07:00
Alex Dadgar
97ad9dfc92 bump version/lint/generated files 2018-06-01 15:23:10 -07:00
Alex Dadgar
c8f1c98fd7 version bump and remove generated 2018-04-27 11:10:00 -07:00
Alex Dadgar
df9e8e2f27 generated files 2018-04-27 10:45:40 -07:00
Alex Dadgar
3fd1f48136 Remove generated and version bump 2018-04-26 16:49:19 -07:00
Alex Dadgar
9a4295aa9c generated files 2018-04-26 16:28:58 -07:00
Alex Dadgar
1468985035 Remove generated structs 2018-04-12 16:35:31 -07:00
Alex Dadgar
8a80a5f7c5 Version bump and generated files 2018-04-12 16:21:50 -07:00
Alex Dadgar
1a66631eff remove generated files 2018-03-30 16:52:49 -07:00
Alex Dadgar
702a3be41e Generated files 2018-03-30 16:14:40 -07:00
Chelsea Holland Komlo
8aefd294e1 Code review feedback 2018-03-21 15:15:26 -04:00
Chelsea Holland Komlo
1570972cb3 add concept of health checks to fingerprinters and nodes
fix up feedback from code review

add driver info for all drivers to node
2018-03-21 15:15:25 -04:00
Alex Dadgar
349485028c Server side impl + touch ups 2018-02-15 13:59:02 -08:00
Alex Dadgar
ce37deebf4 client implementation of alloc gc and stats 2018-02-15 13:59:02 -08:00
Alex Dadgar
3cbd7e8376 vet 2018-02-15 13:59:02 -08:00
Alex Dadgar
d77b36698c HTTP and tests 2018-02-15 13:59:02 -08:00
Alex Dadgar
69dc065366 Client implementation of stream 2018-02-15 13:59:02 -08:00
Alex Dadgar
3c689ba97f Client Stat/List impl 2018-02-15 13:59:02 -08:00
Alex Dadgar
5e7a1a44a2 Logs over RPC w/ lots to touch up 2018-02-15 13:59:01 -08:00