Alex Dadgar
4b04e503f3
address comments
2016-06-13 17:32:18 -07:00
Alex Dadgar
8bbf4a55e5
Fix IDs and domain scoping
2016-06-13 16:30:58 -07:00
Diptanu Choudhury
d019d8ef8e
implemented reconciliation of unwanted services
2016-06-13 14:52:26 +02:00
Alex Dadgar
232654cdee
register checks
2016-06-12 21:28:56 -07:00
Alex Dadgar
a82c2bb058
Do not reconcile in client and cleanup executor a bit
2016-06-12 18:22:07 -07:00
Alex Dadgar
8e231fa382
Rename ConsulService back to Service
2016-06-12 16:36:49 -07:00
Alex Dadgar
2628827b7c
Merge pull request #1262 from hashicorp/remove-artifact-check
...
Removing artifact check for java and qemu drivers
2016-06-12 11:21:18 -07:00
Diptanu Choudhury
beb362e202
Setting a flag to indicate whether fs isolation is indeed happening
2016-06-12 15:43:24 +02:00
Diptanu Choudhury
641cf50682
Not converting the abs path relative to task dir for drivers which enforce FS isolation only in linux
2016-06-12 13:54:30 +02:00
Alex Dadgar
e952540f6f
Allocation resources returned in a struct
2016-06-11 21:04:10 -07:00
Sean Chittenden
2f036231e5
Merge pull request #1201 from hashicorp/f-dyn-server-list
...
Dynamic Server Lists/Client Bootstrapping via consul.
2016-06-11 18:58:25 -04:00
Sean Chittenden
445783889b
Remove default values and use nil for the executor. Much better.
2016-06-11 17:52:09 -04:00
Sean Chittenden
f891fa0ec8
Perform a nil-check for Executor's consulServices.
...
Executors can `Shutdown()` before calling `SyncServices()`.
2016-06-10 23:43:54 -04:00
Diptanu Choudhury
59540c3e93
Extracted a method for getting clock speed
2016-06-11 02:07:28 +02:00
Diptanu Choudhury
f94f89b6d7
Pruning out pids which are no longer present
2016-06-11 01:40:52 +02:00
Diptanu Choudhury
0a9a3918d6
Not reset-ing the list of pids if they don't change
2016-06-11 01:19:50 +02:00
Diptanu Choudhury
c38a6fb3c5
Implementing the total ticks per task for the docker driver
2016-06-10 23:33:25 +02:00
Diptanu Choudhury
2d3798b076
Calculating the cpu ticks in nomad client
2016-06-10 22:22:32 +02:00
Sean Chittenden
d99467ef5e
Always create a consul.Syncer. Use a default Consul Config if necessary.
2016-06-10 15:55:27 -04:00
Sean Chittenden
f6a0459ae5
Always create a consul.Syncer. Use a default Consul Config if necessary.
2016-06-10 15:55:27 -04:00
Sean Chittenden
9a223936bb
Generate and sync Consul ServiceIDs consistently
2016-06-10 15:54:39 -04:00
Sean Chittenden
3892a0433e
Move the start of the UniversalExecutor's consulSyncer to initialize once
...
This should be handled via a sync.Once primative, but I don't want to
unpack that atm.
2016-06-10 15:54:39 -04:00
Sean Chittenden
7956eb0c80
Rename structs.Task's Service
attribute to ConsulService
2016-06-10 15:54:39 -04:00
Sean Chittenden
8c813630e6
Move package client/consul/sync to command/agent/consul.
...
This has been done to allow the Server and Client to reuse the same
Syncer because the Agent may be running Client, Server, or both
simultaneously and we only want one Syncer object alive in the agent.
2016-06-10 15:54:39 -04:00
Sean Chittenden
d6ef97911b
Rename Syncer.SetServiceIdentifier to SetServiceRegPrefix()
...
This attribute isn't actually an identifier because it can represent
a collection of services. Rename `serviceIdentifier` to
`serviceRegPrefix which more accurately conveys the intention of this
Syncer attribute.
While here, also rename `SetServiceIdentifier()` to `SetServiceRegPrefix()`
and `GenerateServiceIdentifier()` to `GenerateServicePrefix()`.
2016-06-10 15:54:39 -04:00
Sean Chittenden
6b126ce488
Change the API signature of Syncer.SyncServices().
...
SyncServices() immediately attempts to sync whatever information
the process has with Consul. Previously this method would take an
argument of the exclusive list of services that should exist,
however this is not condusive to having a Nomad Client and Nomad
Server share the same consul.Syncer.
2016-06-10 15:54:39 -04:00
Sean Chittenden
555f4fe135
Change client/consul.NewSyncer() to accept a shutdown channel
...
In addition to the API changing, consul.Syncer can now be signaled
to shutdown via the Shutdown() method, which will call the Run()'ing
sync task to exit gracefully.
2016-06-10 15:54:39 -04:00
Sean Chittenden
d1442dc317
Reduce all forms of ConsulConfig down to a single struct
...
nomad/structs/config/consul.go's ConsulConfig is the canonical definition
for all things Consul now.
2016-06-10 15:50:11 -04:00
Sean Chittenden
88f3422d7c
Rename NewConsulService to NewSyncer
2016-06-10 15:49:37 -04:00
Sean Chittenden
b9789e0cf7
Rename client/consul/sync.PeriodicSync to Run
2016-06-10 15:49:37 -04:00
Sean Chittenden
768aab015d
Rename client/consul/sync.ConsulService to client/consul/sync.Syncer
...
Syncer describes the responsibility and actions of the type.
2016-06-10 15:49:37 -04:00
Sean Chittenden
bfa4711df5
Rename ConsulConfig to ConsulAgentConfig
2016-06-10 15:48:36 -04:00
Sean Chittenden
e97652bbfb
Rename consul.ConsulConfig to consul.AgentConfig
...
There were two `ConsulConfig` structs running around, one of them
needed to go away. Rely on the package's path to provide context
for the type of AgentConfig.
2016-06-10 15:48:36 -04:00
Alex Dadgar
26c9110e82
fix types
2016-06-10 11:52:15 -07:00
Alex Dadgar
a3d41f2312
use time.Second instead of our own const
2016-06-10 11:38:59 -07:00
Alex Dadgar
3cf74e7fd8
Alloc-status only shows measured statistics and fixes to CPU calculations
2016-06-10 10:38:29 -07:00
Diptanu Choudhury
287e0eff22
Fixed merge conflicts
2016-06-10 04:47:34 +01:00
Diptanu Choudhury
a69307cff2
Using named variables
2016-06-10 04:45:16 +01:00
Diptanu Choudhury
9056be6d86
Fixed calculation of cpu usage percent in user and sys mode for pids
2016-06-10 04:06:32 +01:00
Alex Dadgar
98d7547014
Annotate what is measured
2016-06-09 19:45:41 -07:00
Alex Dadgar
4e15611339
fix wait result being nil and some panics in the cli
2016-05-31 23:09:05 +00:00
Diptanu Choudhury
11d1dd113b
Added a test for docker
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
c0dc6cfbf2
Changing the api of the stats endpoints
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
a0c279f3b2
comments
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
4c85f02072
Stopping the metrics collector timers using defer and starting to collect host stats right away
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
c8f5527158
Added a test to validate we are collecting stats
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
a64062d6a6
Fixed the compilation on linux
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
2ff43788a0
simplified the stats method in basic executor
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
097bab52a9
Fixed the logic of scanpids
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
98016ec066
Incorporated review comments for executor
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
313c61b9db
Added pidstats in task resource usage struct
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
cfd3016747
Renamed CpuUsage to CpuStats
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
77357ccf80
Added a test for calculating cpu stats
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
193bbc10f8
Fixed the percentage calculation for cgroups
2016-05-28 19:59:20 -07:00
Diptanu Choudhury
7744a41358
Added some docs
2016-05-28 19:59:03 -07:00
Diptanu Choudhury
b884253d39
Added locks to RingBuf
2016-05-28 19:59:03 -07:00
Diptanu Choudhury
22c3f6fee0
Implemented nomad cpu percentage calculator
2016-05-28 19:59:03 -07:00
Diptanu Choudhury
e37a108b4c
Implemented cpu stats
2016-05-28 19:51:22 -07:00
Diptanu Choudhury
9790516a22
Added the PidStats method on the executor
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
63166d0e46
Adding a query param to return time series of stats
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
c347b27e6a
Implemented stats for raw_exec
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
91d2cf319e
Added some documentation
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
f3d0aecafe
Reporting time series of stats
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
13825f434e
Added the nomad stats command
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
2b86bb3396
Added cpu stats
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
0fb0e0237f
Added a client API to display resource usage of an allocation
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
6c1b60ff07
Add the Stats api to driverhandle
2016-05-28 19:42:34 -07:00
Diptanu Choudhury
2e2e2e500e
Using a helper method to create service identifiers
2016-05-14 00:43:25 -07:00
Diptanu Choudhury
347cb890d2
Removed allocID and task name from consul service
2016-05-11 16:26:41 -07:00
Diptanu Choudhury
2f8a3532ad
Refactored the signature of NewConsulService
2016-05-11 15:22:58 -07:00
Sean Chittenden
cb9b4eca83
Merge pull request #1156 from hashicorp/f-x-sys-unix
...
Use x/sys/unix vs syscall package where appropriate
2016-05-09 11:56:00 -07:00
capone212
cc246b30d9
Added java
2016-05-09 17:27:01 +03:00
capone212
503f552477
Reverted blank line
2016-05-09 17:23:38 +03:00
capone212
99e7581742
Fixed CR defect
2016-05-09 17:22:01 +03:00
capone212
875df91e0b
Added consul script check support for raw_exec driver
2016-05-09 13:35:19 +03:00
Sean Chittenden
d9ba6d8bff
Re-sort functions back to the same ordering as master
2016-05-08 11:46:20 -07:00
Sean Chittenden
b249aaf8bb
Remove stray debugging fmt.Printf
2016-05-08 11:43:43 -07:00
Sean Chittenden
2cba09843c
Revert making UniversalExecutor.wait() platform specific
2016-05-08 11:17:27 -07:00
Sean Chittenden
e8fbfc7976
Revert making UniversalExecutor.wait() platform specific
2016-05-08 00:13:28 -07:00
Sean Chittenden
19c64fb94c
Fix executor builds on Windows
2016-05-07 12:07:27 -07:00
Sean Chittenden
d10623aaea
Implement a Windows-specific UniversalExecutor wait()
2016-05-07 12:00:44 -07:00
Sean Chittenden
f79b872ed2
Windows needs a stub chroot command
2016-05-07 11:59:55 -07:00
Sean Chittenden
a78a9b3531
Build checks per-platform
2016-05-07 11:18:13 -07:00
Sean Chittenden
09f7d5e595
Prefer golang.org/x/sys/unix
where appropriate
...
Favor the `unix` package on *NIX platforms vs the now frozen `syscall` package.
2016-05-07 11:01:45 -07:00
Sean Chittenden
1314227863
Explicitly enumaret the build targets in _unix
...
`!windows` was being used as the synonym for `darwin dragonfly freebsd linux netbsd openbsd solaris`. While I don't imagine `android` will be a prime target for Nomad in the near term, favor explicit build targets.
List of build targets generated by Go 1.7's dist command: `go tool dist list | sort | cut -d '/' -f 1 | sort | uniq`
2016-05-07 10:42:01 -07:00
Sean Chittenden
cfd76aaf15
Rename from posix to unix to parallel x/sys/unix
...
Use the `_unix` file suffix to denote *NIX-like semantics in order to parallel the designation given by the package `golang.org/x/sys/unix`.
2016-05-07 10:33:43 -07:00
Diptanu Choudhury
3a6ee08a32
Added some docs
2016-05-05 11:52:22 -07:00
Diptanu Choudhury
9a8ad773b3
Added logs to indicate when checks timeout
2016-05-05 10:01:38 -07:00
Alex Dadgar
c66370bf40
Add debug message on Wait() error
2016-04-19 15:54:21 -07:00
Alex Dadgar
ca94d25cb4
Freeze the cgroup and cleanup around Shutdown
2016-04-19 13:48:02 -07:00
Alex Dadgar
736ef76cc1
Put the executor into the cgroup to avoid a fork race
2016-04-18 17:59:08 -07:00
Alex Dadgar
dba8712b45
remove systemd cgroup manager
2016-04-15 14:55:30 -07:00
Diptanu Choudhury
bfcb5015a1
Adding a test to check whether constraints are applied and cgroups are removed
2016-04-02 12:39:34 -07:00
Diptanu Choudhury
34d9e8aa8e
Setting the cg path after application of pid
2016-04-02 12:37:19 -07:00
Diptanu Choudhury
6778f29513
Setting the cgroup config after applying pid
2016-04-02 12:37:19 -07:00
Diptanu Choudhury
d9afcc1293
Using the paths of cgroups to reconstruct the manager
2016-04-02 12:37:19 -07:00
Diptanu Choudhury
d8b1303790
Adding 128 to exit code when a child was terminated by a signal
2016-04-02 02:05:56 -07:00
Diptanu Choudhury
e47ead97da
Capturing signals from wait
2016-04-01 14:31:19 -07:00
Alex Dadgar
2e88933eb1
Merge pull request #1009 from hashicorp/b-more-chroot
...
Chroot all of /usr/
2016-03-30 11:33:53 -07:00
Diptanu Choudhury
f517eb16de
Added version to executor
2016-03-29 22:24:22 -07:00