Commit Graph

761 Commits

Author SHA1 Message Date
Sean Chittenden
aff951ca4e Always create a consul.Syncer. Use a default Consul Config if necessary. 2016-06-10 15:55:27 -04:00
Sean Chittenden
d810590db9 Create a consulContext using a client's consul config.
This is wrong and should be the Agent's Consul Config.  This is a
step in the right direction, so committing to mark the necessary
future change.
2016-06-10 15:54:39 -04:00
Sean Chittenden
d1ab21f2f7 Generate and sync Consul ServiceIDs consistently 2016-06-10 15:54:39 -04:00
Sean Chittenden
3052e7477a 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
54838b9eba Rename structs.Task's Service attribute to ConsulService 2016-06-10 15:54:39 -04:00
Sean Chittenden
57c2c819e8 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
e858928d68 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
74e691cab1 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
1352f7f0e6 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
6b8a9b435c Update the nomad_server_service default from nomad-server to just nomad. 2016-06-10 15:50:11 -04:00
Sean Chittenden
1fa43a09dd 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
16b4e5c9be Rebalance Nomad client RPCs among different Nomad servers.
Implement client/rpc_proxy.RpcProxy.
2016-06-10 15:50:11 -04:00
Sean Chittenden
6fae3db12e Rename ConsulConfig to ConsulAgentConfig 2016-06-10 15:50:11 -04:00
Sean Chittenden
d268dcb85d 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
ffcd2332d4 Rebalance Nomad client RPCs among different Nomad servers.
Implement client/rpc_proxy.RpcProxy.
2016-06-10 15:50:11 -04:00
Sean Chittenden
7c6ad53d89 Rename NewConsulService to NewSyncer 2016-06-10 15:49:37 -04:00
Sean Chittenden
f280c59633 Rename client/consul/sync.PeriodicSync to Run 2016-06-10 15:49:37 -04:00
Sean Chittenden
d84d71847c 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
8e256471a9 Rename ConsulConfig to ConsulAgentConfig 2016-06-10 15:48:36 -04:00
Sean Chittenden
0e1bdad2a0 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
2be78d2ba8 fix types 2016-06-10 11:52:15 -07:00
Alex Dadgar
a8b1d31812 use time.Second instead of our own const 2016-06-10 11:38:59 -07:00
Alex Dadgar
693c8f9e42 Alloc-status only shows measured statistics and fixes to CPU calculations 2016-06-10 10:38:29 -07:00
Diptanu Choudhury
d594d95012 Fixed merge conflicts 2016-06-10 04:47:34 +01:00
Diptanu Choudhury
06e90cb6c0 Using named variables 2016-06-10 04:45:16 +01:00
Diptanu Choudhury
8d52390aca Fixed calculation of cpu usage percent in user and sys mode for pids 2016-06-10 04:06:32 +01:00
Alex Dadgar
17af581d93 Annotate what is measured 2016-06-09 19:45:41 -07:00
Diptanu Choudhury
8c931a12ee Returning an error if stats collection hasn't started yet for a new docker container 2016-06-06 18:52:54 -07:00
Alex Dadgar
757bc66321 fix wait result being nil and some panics in the cli 2016-05-31 23:09:05 +00:00
Diptanu Choudhury
c760d5910f Renamed error message in alloc endpoint 2016-05-28 20:03:52 -07:00
Diptanu Choudhury
993675dd4e Added a test for docker 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
15e79c3783 Changing the api of the stats endpoints 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
f16191c297 comments 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
f765e82a11 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
03c9d94a2b Making the call to Stats on a go-routine 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
b51b08b39e Added a test to validate we are collecting stats 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
c99733e8c7 Fixed the compilation on linux 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
2c5233814a simplified the stats method in basic executor 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
f59ad3da53 Fixed the logic of scanpids 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
3a2cce2419 Simplified the docker stats collection 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
584c1e34fb Incorporated review comments for executor 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
6132ccc230 Added pidstats in task resource usage struct 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
3192e318e9 Renamed CpuUsage to CpuStats 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
458b7014e4 Added a test for calculating cpu stats 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
3dc28bd871 Stopping stats collection of tasks which has been destroyed 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
16f298fb95 Fixed the percentage calculation for cgroups 2016-05-28 19:59:20 -07:00
Diptanu Choudhury
df68129e5a Added some docs 2016-05-28 19:59:03 -07:00
Diptanu Choudhury
b7158be541 Added locks to RingBuf 2016-05-28 19:59:03 -07:00
Diptanu Choudhury
98068678f1 Implemented nomad cpu percentage calculator 2016-05-28 19:59:03 -07:00
Diptanu Choudhury
30cbfe1f71 Implemented cpu stats 2016-05-28 19:51:22 -07:00