Commit graph

593 commits

Author SHA1 Message Date
Diptanu Choudhury 88d383c47f Updated tests and comments 2016-08-04 11:29:36 -07:00
Jay Oster 7df692226a Add config field to specify chroot mapping for exec driver
- Same format as used by the internal chroot mapping
- Map: source_path -> dest_path
- Example HCL:

client {
  chroot_env {
    "/etc" = "/etc"
    "/lib" = "/lib"
    "/opt/projects/foo/bin" = "/usr/bin"
  }
}
2016-08-03 17:17:17 -07:00
Diptanu Choudhury 74caed0c7a Added an endpoint for users to reconcile job summaries 2016-08-03 16:12:47 -07:00
Diptanu Choudhury 41b540fbc8 Allow operators to opt into publishing node and alloc metrics 2016-08-01 19:52:20 -07:00
Kenjiro Nakayama 224ebc0129 Add LevelFilter test 2016-07-27 13:42:24 +09:00
Diptanu Choudhury cc37ec33cf Renamed Job.GetJobSummary to Job.Summary 2016-07-25 17:31:40 -07:00
Diptanu Choudhury 6193529040 Fixed more tests 2016-07-25 17:31:40 -07:00
Diptanu Choudhury 50842b88c7 Fixed some bugs 2016-07-25 17:26:38 -07:00
Diptanu Choudhury a5bb0ca6fc Moved the job endpoint around 2016-07-25 17:26:38 -07:00
Diptanu Choudhury 2ff2acbfc0 Added the job summary related endpoints 2016-07-25 17:26:38 -07:00
Alex Dadgar aa0c347450 remove unused file 2016-07-25 16:24:28 -07:00
Alex Dadgar 5a5d8f4ae3 Merge pull request #1465 from 42wim/ipv6-1318
Fix IPv6 advertise addresses
2016-07-25 16:14:15 -07:00
Wim c96f3ccb28 Use net.JoinHostPort 2016-07-25 23:34:08 +02:00
Diptanu Choudhury 471416ab20 Removing un-wanted dependencies 2016-07-25 14:17:52 -07:00
Wim a04907ad91 Fix IPv6 advertise addresses 2016-07-25 22:52:18 +02:00
Alex Dadgar b8817e4877 better flush and connection closed handling 2016-07-25 11:16:54 -07:00
Alex Dadgar 43d78b6d23 control-c works 2016-07-25 11:16:54 -07:00
Alex Dadgar aee152ee15 small fixes 2016-07-25 11:16:54 -07:00
Alex Dadgar 6e15bdbe36 Add logs command test 2016-07-25 11:16:54 -07:00
Alex Dadgar 1f600252e7 Handle skipping indexes 2016-07-25 11:16:54 -07:00
Alex Dadgar 120e9d14ee log tests 2016-07-25 11:16:54 -07:00
Alex Dadgar 85cc520365 Support non-following logs 2016-07-25 11:16:54 -07:00
Alex Dadgar b55e986c9f Read from correct offset 2016-07-25 11:16:01 -07:00
Alex Dadgar c84964bf6e Fix buffer reuse 2016-07-25 11:16:01 -07:00
Alex Dadgar 0327109300 tests 2016-07-25 11:16:01 -07:00
Alex Dadgar b2df901158 initial api and command 2016-07-25 11:16:01 -07:00
Alex Dadgar 3ea95bb91c initial log api impl 2016-07-25 11:16:01 -07:00
matt maier 7f2af04bcd Change circonus_broker_search_tag to circonus_broker_select_tag to match option in consul 2016-07-22 15:16:14 -04:00
matt maier 02d71eb6d3 Circonus integration for telemetry metrics 2016-07-22 12:33:10 -04:00
Mathias Lafeldt ab94704518
Fix typos in source code 2016-07-18 16:24:46 +02:00
Alex Dadgar d37651995f implement -n for tail 2016-07-13 13:26:09 -06:00
Alex Dadgar 661d100f2f address comments 2016-07-12 17:01:33 -06:00
Alex Dadgar 9059fc42cb Address more comments 2016-07-12 10:45:05 -06:00
Alex Dadgar 7dd14507ca Tests and handle conn close behavior better 2016-07-12 10:18:48 -06:00
Alex Dadgar e9ffadfdc6 initial comments 2016-07-11 10:58:18 -06:00
Alex Dadgar 281c1fbf39 StreamFramer tests 2016-07-10 13:57:20 -04:00
Alex Dadgar 1fe435a130 StreamFramer encapsulates the sending, heartbeating and batching behavior of frames 2016-07-10 13:57:04 -04:00
Alex Dadgar 958e0d6ca3 Only initialize watcher once, fix offsetting, implement tail non-follow 2016-07-10 13:57:04 -04:00
Alex Dadgar e100fc4422 Set up for testing 2016-07-10 13:57:04 -04:00
Alex Dadgar 2f44a0a069 Flush and use correct buffer size 2016-07-10 13:57:04 -04:00
Alex Dadgar 51ae7ace25 initial tail impl 2016-07-10 13:57:04 -04:00
Diptanu Choudhury 48b9684b1e Using net.JoinHostPort instead of handcrafting addrs 2016-07-08 16:45:14 -07:00
Diptanu Choudhury b180223f4b Allowing ports to be overriden in check definitions 2016-07-08 14:14:25 -07:00
Diptanu Choudhury 9c6ce3ff90 Merge pull request #1344 from hashicorp/b-consul-service-name
Fixed parsing of consul agent service names
2016-06-22 15:47:34 -07:00
Alex Dadgar f3bc85c20f use microsecond granularity 2016-06-22 15:20:56 -07:00
Diptanu Choudhury 69e046f63f Fixed parsing of consul agent service names 2016-06-22 13:52:43 -07:00
Alex Dadgar 9406739ba8 remove resolving client rpc addr 2016-06-17 14:55:37 -07:00
Sean Chittenden 9e287858de Merge pull request #1310 from hashicorp/b-logger
Create and pass only one `logger` object around per Agent
2016-06-17 12:16:35 -07:00
Sean Chittenden 46e2d54acf
Provide nomad.Config with a default LogOutput of os.StdErr 2016-06-17 06:44:10 -07:00
Sean Chittenden 9a60999100
Pass a logger arg to NewClient and NewServer 2016-06-16 23:29:23 -07:00
Sean Chittenden c2f96ee6ba
Remove the shutdownCh as an argument, it was already present in the receiver 2016-06-16 23:15:41 -07:00
Sean Chittenden 871a31a8ec
Teach config.ConsulConfig how to construct a consulapi TLS client.
Said differently, centralize the creation of consul's client config
in one place and use it everywhere.
2016-06-16 22:51:06 -07:00
Sean Chittenden 438c1e149b
Fix tests 2016-06-16 22:26:45 -07:00
Sean Chittenden 59c54e9aeb
Fix tests, don't take the address of DefaultConsulCommand() 2016-06-16 21:21:39 -07:00
Sean Chittenden d17af396ca
Create config.DefaultConsulConfig() 2016-06-16 20:41:05 -07:00
Sean Chittenden e58c2a2ed4
Remove client registration of RPC services, only servers have an RPC interface 2016-06-16 18:14:59 -07:00
Sean Chittenden 2a2b35d1bc
Use /v1/agent/servers (vs /v1/agent/self). 2016-06-16 17:40:47 -07:00
Sean Chittenden 26cc057751
Automatically register service checks for HTTP, RPC, and Serf. 2016-06-16 17:34:25 -07:00
Sean Chittenden ec77a1869e
Test for errors 2016-06-16 14:43:46 -07:00
Sean Chittenden af55b74114 Merge pull request #1276 from hashicorp/f-consul-server-autojoin
Teach Nomad servers how to fall back to Consul.
2016-06-16 14:40:45 -07:00
Diptanu Choudhury 14747848f7 Removed the stats block from client configuration 2016-06-16 21:30:29 +01:00
Sean Chittenden b0fecbefc1
Define BootstrapExepct as an int32 so it can be manipulated atomically. 2016-06-16 12:00:15 -07:00
Sean Chittenden f05514335b
Teach Nomad servers how to fall back to Consul. 2016-06-15 12:40:51 -07:00
Diptanu Choudhury 201dd28743 Merge pull request #1284 from hashicorp/add-warn-message
Added a warn message for deprecated consul options
2016-06-15 11:33:24 +02:00
Diptanu Choudhury fd80e6ed0f Added a warn message for deprecated consul options 2016-06-15 02:31:57 +02:00
Alex Dadgar aea21affdb Document consul configuration 2016-06-14 15:21:57 -07:00
Sean Chittenden 6e22b680ce
Disambiguate auto_join from auto_register, rename reg to auto_advertise.
Provide an option that describes the value to the user vs the
operation performed by the software.  Momentarily introducing
`auto_join`
2016-06-14 12:11:38 -07:00
Sean Chittenden 10ce8f27d4
Temporarily disable various syncer checks due to the API changes made earlier today. 2016-06-13 19:52:17 -07:00
Sean Chittenden a54b4e08f8
Drive-by comment correction 2016-06-13 18:14:50 -07:00
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 2e10458367 Removing unwated line of code 2016-06-13 15:37:55 +02:00
Diptanu Choudhury d019d8ef8e implemented reconciliation of unwanted services 2016-06-13 14:52:26 +02:00
Alex Dadgar 753d50f3d4 agent just calls run 2016-06-12 22:30:52 -07: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 e4506ea333 fix test 2016-06-12 16:48:55 -07:00
Alex Dadgar c68d23b7d6 Merge pull request #1264 from hashicorp/b-rename-services
Rename ConsulService back to Service
2016-06-12 16:44:49 -07:00
Diptanu Choudhury 751b2e1bcb Remove initial delay of registering services with consul 2016-06-13 01:42:56 +02:00
Alex Dadgar 8e231fa382 Rename ConsulService back to Service 2016-06-12 16:36:49 -07:00
Alex Dadgar fdda90229f only support latest and remove ring buffer 2016-06-12 09:32:38 -07: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 917766a3df
Prefer %+q over %q in log messages. 2016-06-11 18:17:20 -04:00
Alex Dadgar 5797534d16 Don't require slash for node stats 2016-06-11 13:15:57 -07:00
Sean Chittenden bbd8dfa798
goling(1) compliance pass (e.g. Rpc* -> RPC) 2016-06-10 23:38:28 -04:00
Sean Chittenden bc771d35df
Query for the Nomad service across multiple Consul datacenters. 2016-06-10 23:05:14 -04: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 e69232dd73
Commit miss, bump to 5s 2016-06-10 15:54:39 -04:00
Sean Chittenden 26b1e826d7
golint(1) police 2016-06-10 15:54:39 -04:00
Sean Chittenden c92306f020
Stash client and server registration behind consul.auto_register 2016-06-10 15:54:39 -04:00
Sean Chittenden 68aebff84d
Only return the Client's server addresses, never mix-in server peers 2016-06-10 15:54:39 -04:00
Sean Chittenden 447fe59fd2
Hand wave over the syncer tests atm, these will be fixed shortly. 2016-06-10 15:54:39 -04:00
Sean Chittenden fa7285cb5b
Don't spam the consul if Consul is not available.
Log once when Consul goes away, and log when Consul comes back.
2016-06-10 15:54:39 -04:00
Sean Chittenden a1a0c313de
Skip nil check for agent's consulSyncer is always not nil 2016-06-10 15:54:39 -04:00
Sean Chittenden a2109af862
Properly cover Syncer attributes with the registryLock.
trackedServices, delegateChecks, trackedChecks, and checkRunners
should all be covered.  This lock needs to be reasonably narrow and
can't use defer due to possible recursive locking concerns further
downstream from the call sites.
2016-06-10 15:54:39 -04:00
Sean Chittenden f9b561b52f
On Syncer Shutdown, remove all services that match a Syncer's prefix. 2016-06-10 15:54:39 -04:00
Sean Chittenden 57e084e4df
Sync checks with Consul by comparing the AgentCheckReg w/ ConsulService
The source of truth is the local Nomad Agent.  Any checks are not local that
have a matching prefix are removed.  Changed checks are re-registered
and missing checks are re-added.
2016-06-10 15:54:39 -04:00
Sean Chittenden 197feae679
Sync services with Consul by comparing the AgentServiceReg w/ ConsulService
The source of truth is the local Nomad Agent.  Any services not local that
have a matching prefix are removed.  Changed services are re-registered
and missing services are re-added.
2016-06-10 15:54:39 -04:00
Sean Chittenden 9a223936bb
Generate and sync Consul ServiceIDs consistently 2016-06-10 15:54:39 -04:00
Sean Chittenden bcad11cc2a
Rename runChecks to consulAvailable
Apologies in advance for the variable thrash, the fingerprinter is
no longer used to gate whether or not Consul is available any more.
2016-06-10 15:54:39 -04:00
Sean Chittenden efe00d2ccd
Update Syncer.Run() to call SyncServices(). 2016-06-10 15:54:39 -04:00
Sean Chittenden 83775c5c8b
Add "Service Groups" to the Syncer.
Now the right way to register services with the Syncer is to call
`SetServices(groupName, []*services)`.  This was required to allow
the Syncer to sync either the Client, Server, or Both using a
single Syncer.
2016-06-10 15:54:39 -04:00
Sean Chittenden c54539b860
Initialize Consul for the Nomad Agent in a more uniform way.
Decompose Client and Server registration into `setupClient()` and
`setupServer()`, respectively.
2016-06-10 15:54:39 -04:00
Sean Chittenden 06e5e615a8
Rename command/agent/consul/sync.go to syncer.go 2016-06-10 15:54:39 -04:00
Sean Chittenden d307ca2c28
Begin leveraging the Agent-level consul.Syncer 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 05a2b9528c
Remove Syncer.registerService()
This call is obsolete by a future commit that changes the canonical
source of truth to be consul.AgentServiceRegistration structs, which
means it is not necessary to construct AgentServiceRegistration
objects every time a registration is made, we just reuse the existing
object.
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 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 e24de53ead
Refine Nomad's Consul port handling.
Previously this would immediately default to '127.0.0.1' if the
config was set to `:some-port-number`.  Now it uses the BindAddr
if available.  Also, if the `port` option is set to just a port`
number (e.g. '1234'), attempt to parse the port number by itself
to allow statically configured ports to work, even when no host is
specified.
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 e2a561204a
Fix typo in comment 2016-06-10 15:50:11 -04:00
Sean Chittenden b199743b8a
Add some trace-level logging for /v1/agent/servers when writing
This endpoint shouldn't be hit often, but this could be useful in
logs down the road.
2016-06-10 15:50:11 -04:00
Sean Chittenden 07fa89d2a5
Fix config_parse_test to reflect that consul.addr does not exist.
`consul.address` does, but not `consul.addr`.
2016-06-10 15:50:11 -04:00
Sean Chittenden 7fe1944bc5
Fix tests for client.TestAgent_ServerConfig
Add similar logic in Agent `serverConfig()` to set up the
`serverSerfAddr` the same as `serverHttpAddr` and `serverRpcAddr`.
2016-06-10 15:50:11 -04:00
Sean Chittenden 39fb0f2469
Change the endpoint for /v1/agent/servers and fix tests.
When an agent is running a server, the list of servers includes the
Raft peers.  When the agent is running a client (which is always the
case?), include a list of the servers found in the Client's RpcProxy.
Dedupe and provide a unique list back to the caller.
2016-06-10 15:50:11 -04:00
Sean Chittenden cb80e93a6b
Move client.DefaultConfig() to client/config.DefaultConfig()
Resolves an import cycle in testing and is more appropriate because
the default should reside next to its struct definition.
2016-06-10 15:50:11 -04:00
Sean Chittenden b3fd455b1f
Register the serf service with the Nomad server service.
This will be unused in this PR.
2016-06-10 15:50:11 -04:00
Sean Chittenden 82d537fbd9
Update the nomad_server_service default from nomad-server to just nomad. 2016-06-10 15:50:11 -04:00
Sean Chittenden 7c3838373b
Create a weak decoder to parse time.Duration.
Hat tip to Alex for pointing this out (vs patching mapstructure)
2016-06-10 15:50:11 -04:00
Sean Chittenden 6cd01d7567
Nuke a.consulConfig in favor of a.consul.Config 2016-06-10 15:50:11 -04:00
Sean Chittenden 1fe979a5e4
Remove types.ShutdownChannel and replace with chan struct{} 2016-06-10 15:50:11 -04:00
Sean Chittenden 9fb0104def
Teach Client to reuse an Agent's consulSyncer.
"There can be only one."
2016-06-10 15:50:11 -04:00
Sean Chittenden 47891fb559
Register two services each for clients and servers, http and rpc.
In order to give clients a fighting chance to talk to the right port,
differentiate RPC services from HTTP services by registering two
services with different tags.  This yields
`rpc.nomad-server.service.consul` and
`http.nomad-server.service.consul` which is immensely more useful to
clients attempting to bootstrap their world.
2016-06-10 15:50:11 -04:00
Sean Chittenden ac7881226c
Advertise the server's RPC endpoint, not its HTTP endpoint.
Rename c.serverRpcAddr to serverRpcAddr.  This will be broken out
into in additional set of services in a subsequent commit.
2016-06-10 15:50:11 -04:00
Sean Chittenden 410d85cc78
Rename the package from client/rpc_proxy to client/rpcproxy
Also rename `NewRpcProxy()` to just `New()` to avoid package stutter.
2016-06-10 15:50:11 -04:00
Sean Chittenden 10d1b6ba9b
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 520fcb99de
Rename consulConfig to consulAgentConfig 2016-06-10 15:50:11 -04:00
Sean Chittenden e6c78274c8
Rename client/config/config's ConsulConfig to ConsulAgentConfig
A follow up commit to the previous rename.  More to come.
2016-06-10 15:50:11 -04:00
Sean Chittenden e727fd8c3c
Centralize the creation of a consul/api.Config struct.
While documented, the consul.timeout parameter wasn't ever set
except one-off in the Consul fingerprinter.
2016-06-10 15:50:11 -04:00
Sean Chittenden f695d6d70d
Reconcile consul's address configuration section.
There were conflicting directives previously, both consul.addr and
consul.address were required to achieve the desired behavior.  The
documentation said `consul.address` was the canonical name for the
parameter, so consolidate configuration parameters to `consul.address`.
2016-06-10 15:50:11 -04:00
Sean Chittenden bd779c3719
Reconcile renamed structures during rebase 2016-06-10 15:50:11 -04:00
Sean Chittenden 882364f4d9
An Agent's consulSyncer is always not nil now. 2016-06-10 15:50:11 -04:00
Sean Chittenden 98cea9ba07
Revise Agent.syncAgentServicesWithConsul()'s interface
Reduce down to its lowest common helper function denominator.
2016-06-10 15:50:11 -04:00
Sean Chittenden b5c70f3729
Alpha sort config keys for Consul 2016-06-10 15:50:11 -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 e60580b279
Define a type for the PeriodicCallback handlers and ShutdownChannel 2016-06-10 15:50:11 -04:00
Sean Chittenden 17116fc5a7
Rebalance Nomad client RPCs among different Nomad servers.
Implement client/rpc_proxy.RpcProxy.
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 b509da2d0c
Create a nomad/structs/config to break an import cycle.
Flattening and normalizing the various Consul config structures and
services has led to an import cycle.  Break this by creating a new package
that is intended to be terminal in the import DAG.
2016-06-10 15:48:36 -04:00
Sean Chittenden 840b49a720
Distill config.Config.ConsulConfig down to config.Config.Consul
The enclosed struct provides the necessary context
2016-06-10 15:48:36 -04:00
Sean Chittenden c7a680c28f
Rename consulConfig to consulAgentConfig 2016-06-10 15:48:36 -04:00
Sean Chittenden 73e173673e
Rename client/config/config's ConsulConfig to ConsulAgentConfig
A follow up commit to the previous rename.  More to come.
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
Sean Chittenden e36686a17d
Use consul/lib's RandomStagger
Removes four redundant copies of the method in the process.
2016-06-10 15:48:36 -04:00
Jeff Mitchell b4f25e0b04 Use upstream high-level SCADA provider 2016-06-01 18:25:09 -04:00
Diptanu Choudhury fd1b0dfd49 Fixed a test 2016-05-31 01:58:32 +02:00
Diptanu Choudhury f95b1d00c3 Renamed error message in alloc endpoint 2016-05-28 20:03:52 -07:00
Diptanu Choudhury f0c381e7d7 Added a test for alloc stats api endpoint 2016-05-28 19:59:20 -07:00
Diptanu Choudhury eb5d831099 Added a test for the clients stats endpoint 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 a64062d6a6 Fixed the compilation on linux 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 0b0d0764e4 Changed signature of Allocation Stats Reporter 2016-05-28 19:59:20 -07:00
Diptanu Choudhury c46400597e Making the stats collection interval and number of data points to keep in memory configurable 2016-05-28 19:59:20 -07:00
Diptanu Choudhury 464812ea3b Changed the stats endpoints 2016-05-28 19:59:20 -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 9a96dddc07 Added some docs to resource stats endpoint 2016-05-28 19:42:34 -07:00
Diptanu Choudhury 7569b1af2e Collecting host stats 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 0fb0e0237f Added a client API to display resource usage of an allocation 2016-05-28 19:42:34 -07:00
Diptanu Choudhury bf5b78b77e Added a test for generation of the server addr 2016-05-24 21:29:13 -07:00
Diptanu Choudhury 227477533c Using the bind addr as server's IP if advertise addr and addresses.HTTP is not specified 2016-05-24 17:27:09 -07:00
Alex Dadgar 2a4d5f0ef9 Compress HTTP API responses and have the api client utilize this 2016-05-24 10:26:53 -07:00
Alex Dadgar 120ff47cd1 Merge pull request #1182 from hashicorp/f-json-encoder
Use codegen for json marshalling
2016-05-20 14:30:25 -07:00
Alex Dadgar 636f886e30 Use codegen for json marshalling: 20% faster, 12% less bytes allocated, 85% less allocations 2016-05-18 09:45:46 -07:00
Diptanu Choudhury bf27cc1261 Merge pull request #1174 from hashicorp/f-config-consul-block
Using the auto-register flag
2016-05-18 04:16:38 +02:00
Dara Kong 9b2b39c7d6 Fix "http_api_response_headers" config not working
On startup, the agent starts with either a dev or default config.  Extra
config files are merged into final config.

The HTTPAPIResponseHeaders config was missing from the merge logic
therefore it would always result in empty value (regardlesss of any
config files specified).
2016-05-16 20:57:54 -07:00
Alex Dadgar a5ab96d40e Merge pull request #1168 from hashicorp/f-plan-endpoint
Job.Plan endpoint
2016-05-16 13:15:40 -07:00
Alex Dadgar a231f6f998 Switch to using the harness 2016-05-16 12:49:18 -07:00
Diptanu Choudhury c07770fd4d Using the auto-register flag 2016-05-16 18:23:01 +02:00
Sean Chittenden dc28ab0cb5
Speling police 2016-05-15 09:41:34 -07:00
Diptanu Choudhury 1b3356375d Using advertise addr for the http address 2016-05-14 01:09:05 -07:00
Diptanu Choudhury ecd995b283 Added some docs 2016-05-14 00:36:26 -07:00
Diptanu Choudhury d94e651c6e Merge branches 'master' and 'f-config-consul-block' of github.com:hashicorp/nomad into f-config-consul-block 2016-05-13 13:05:11 -07:00
Diptanu Choudhury df9d256132 Making Nomad register services with consul in dev mode 2016-05-13 10:19:49 -07:00
Alex Dadgar b634486ebd Plan api 2016-05-11 18:51:48 -07:00
Diptanu Choudhury 439d7bf326 Fixed an agent test 2016-05-11 17:26:53 -07:00
Diptanu Choudhury 347cb890d2 Removed allocID and task name from consul service 2016-05-11 16:26:41 -07:00
Diptanu Choudhury 83fed62a0a Implemented registering client and server services 2016-05-11 16:07:02 -07:00
Sean Chittenden 7b8a5dcc15
Fix the unit tests for TestPrettyPrintOff
A different failing test masked that this wasn't even being run.

Pointy Hat: sean- for testing first on Travis in a branch vs verifying locally
2016-05-11 15:48:43 -07:00
Alex Dadgar 81f0286dd8 Merge branch 'master' into f-plan-endpoint 2016-05-11 15:39:36 -07:00
Diptanu Choudhury d9497632ed Added tests for parsing consul client configuration 2016-05-11 15:22:58 -07:00
Diptanu Choudhury 075a1379c0 Added parsing logic for config block 2016-05-11 15:22:58 -07:00
Sean Chittenden 693e1c6ea9
Fix unit tests for TestPrettyPrintBare 2016-05-11 15:20:57 -07:00
Alex Dadgar ccc3caae4a Merge branch 'f-job-diff2' into f-plan-endpoint 2016-05-11 11:25:25 -07:00
Sean Chittenden 36a50e0f15
Update tests for pretty printing that includes a newline.
Add a test verifying that pretty printing can be disabled, too.
2016-05-11 10:55:01 -07:00
Sean Chittenden 2fe9b6e97a
Append a newline when pretty-printing the response
Instead of typing `curl http://foo/v1/nodes?pretty; echo` to inject a
newline into your terminal, now pretty will provide its own newline.
2016-05-10 15:46:20 -07:00
Alex Dadgar ab0b57a9a1 Initial plan endpoint implementation - WIP 2016-05-05 11:21:58 -07:00
Sean Chittenden 09729cf706 When checkpoint emits a log message indicating an agent is out of
date, include the current version along with the available version
according to checkpoint.

Inspired by: log output in hashicorp/consul#993
2016-05-04 23:56:37 -07:00
Alex Dadgar 6c6dacd042 Fix missing format variable 2016-04-18 18:53:05 -07:00
Alex Dadgar 3c9e0c9c47 Lower number of submitted jobs 2016-04-13 16:33:30 -07:00
Diptanu Choudhury 891b201eef removing interfaces from config 2016-04-07 13:25:38 -07:00
Diptanu Choudhury 9d495a4be4 Added the /fs/cat/ api 2016-03-28 11:06:22 -07:00
Alex Dadgar aefa4b9207 add nomad fingerprinter 2016-03-22 17:12:30 -07:00
Diptanu Choudhury acd016c7c0 Overriding the device configuration if addresses is present 2016-03-20 23:41:16 -07:00
Diptanu Choudhury 98fd0b889a Added a comment about iteration of ips in a network device 2016-03-20 23:22:16 -07:00
Diptanu Choudhury cfb9ae91a1 Using the interfaces for configuring bind addrs for nomad servers 2016-03-19 00:54:19 -07:00
Diptanu Choudhury 6e6f2940f0 Setting the ip from the network interface to Addresses 2016-03-18 22:26:13 -07:00
Diptanu Choudhury e72faaa1c0 Parsing interfaces from the config file 2016-03-18 22:05:57 -07:00
Diptanu Choudhury 4f689d1a38 Using the interface name to find bind address for network services 2016-03-18 21:44:22 -07:00
Diptanu Choudhury 601008706d Added an interfaces config 2016-03-18 13:50:29 -07:00
Alex Dadgar 719f5d34ed Merge pull request #910 from hashicorp/f-reserved-resources
Reserve Client Resources + Config Validation
2016-03-15 21:09:13 -07:00
Dmitry Smirnov 7c3bb51cfa codespell: minor spelling corrections
Signed-off-by: Dmitry Smirnov <onlyjob@member.fsf.org>
2016-03-16 05:28:31 +11:00
Alex Dadgar 9bfcd47398 Remove unused configs 2016-03-13 19:22:57 -07:00
Alex Dadgar 7d4c19ed99 reserve resources on the node 2016-03-13 19:05:41 -07:00
Alex Dadgar 979a0d07f9 Get rid of individual network resources 2016-03-11 19:02:44 -08:00
Alex Dadgar 363b6fea51 Custom parsing of Nomad config with validation + Reserved resources block (not used yet) 2016-03-11 18:24:58 -08:00
Diptanu Choudhury b18cbaa416 Using unix domain sockets for docker syslog collector 2016-03-09 23:28:26 -08:00
Diptanu Choudhury a5d5919664 Fixed an issue around parsing client max and min ports 2016-03-09 12:25:30 -08:00
Alex Dadgar da984cb4d2 Guard client/ api to ensure the client is running 2016-03-07 11:26:54 -08:00
Alex Dadgar 30482f1cd6 fix test 2016-03-06 18:41:33 -08:00
Alex Dadgar 89e3de7784 agent: Configurable heartbeat 2016-03-04 15:44:12 -08:00
Alex Dadgar 82d8210287 Remove documentation about assigning node-id 2016-03-04 10:36:30 -08:00
Diptanu Choudhury e3d6c4a9dd Adding version information to snapshots 2016-02-24 19:06:30 -08:00
Alex Dadgar cc1b35a90c client: standardize error logging format 2016-02-24 15:57:58 -08:00
Alex Dadgar 143972b6d9 Job GC endpoint 2016-02-20 15:50:41 -08:00
Alex Dadgar 70b07f7ad6 Make the client only reserve 512 ports. 2016-02-20 11:43:02 -08:00
Diptanu Choudhury 72c52e3158 Testing default http port is being set 2016-02-16 17:54:17 -08:00
Diptanu Choudhury f33a010f8d Added a test for testing that http addr is set properly 2016-02-16 13:42:48 -08:00
Diptanu Choudhury 0e7a2d68c1 fixing the logic of addr resolution 2016-02-16 13:13:40 -08:00
Diptanu Choudhury d34a74371a Merge pull request #797 from hashicorp/reserve-ports
Reserving ports for client in every platform
2016-02-12 14:33:13 -08:00
Diptanu Choudhury fe66b8b928 Adding comments 2016-02-12 14:25:32 -08:00
Diptanu Choudhury 772ed1eb7e Reserving ports for client in every platform 2016-02-12 13:21:56 -08:00
Diptanu Choudhury 92103c9091 Merging the value of http advertise addr if user is providing one 2016-02-12 09:40:28 -08:00
Diptanu Choudhury 0016b2f82d Setting the output for default logger to nomad's logoutput 2016-02-11 16:05:31 -08:00
Diptanu Choudhury 4644f8a9d4 Added a test for merge 2016-02-08 16:27:31 -08:00
Diptanu Choudhury e89bcf52b8 Moving code to mount and unmount chroot into allocdir 2016-02-08 14:11:53 -08:00
Diptanu Choudhury e53ebc9e3c Extracted the cgroup info into isolation struct 2016-02-08 13:48:26 -08:00
Diptanu Choudhury 21677468cf Setting defaults for client max and min port 2016-02-08 13:29:53 -08:00
Diptanu Choudhury fa45e0b8ca Using net.IsLoopback to determine if ifc is a loopback device 2016-02-08 07:57:31 -08:00
Diptanu Choudhury d2eeba213c Reserving ports on windows 2016-02-05 15:17:15 -08:00
Alex Dadgar 2d98c0eadd Fix double pull with introduction of AllocModifyIndex 2016-02-01 15:43:59 -08:00
Alex Dadgar f8b99e7da3 Merge pull request #722 from iverberk/f-double-alloc-update
Add new RPC call to fetch a lightweight list of allocation information.
2016-01-30 16:39:09 -08:00
Ivo Verberk 2dd3ff6d81 Add additional API endpoint for requesting client specific node allocations. 2016-01-29 20:01:21 +01:00
Jake Champlin e2f0244776 Update agent_endpoint_test 2016-01-28 23:33:01 -05:00
Diptanu Choudhury 0736f45937 Simplified the logic of detecting addrs 2016-01-27 13:34:01 -08:00
Diptanu Choudhury 69a17e2a29 Added the advertise http option to the client 2016-01-27 12:53:24 -08:00
Diptanu Choudhury e83130934d Using the bindAddr only when user hasn't overrident it 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 1e9c817a52 Added the cli for listing alloc dir 2016-01-27 12:53:23 -08:00
Diptanu Choudhury b86e60b9de Allow users to configure arbitrary headers in config 2016-01-22 11:00:43 -08:00
Alex Dadgar 248b20ae24 Merge pull request #675 from nautsio/f-cli-short-ids
Shorten CLI identifiers
2016-01-19 15:11:41 -08:00
Alex Dadgar 041bcc36c5 Merge pull request #668 from hashicorp/f-force-spawn
Force spawn periodic jobs
2016-01-19 11:37:18 -08:00
Alex Dadgar cffc04fa91 Missing forward slash 2016-01-19 11:18:03 -08:00
Alex Dadgar 5e900b94d0 Move endpoint to be under job 2016-01-19 11:09:36 -08:00
Ivo Verberk 149c55252d Merge branch 'master' into f-cli-short-ids 2016-01-15 09:19:53 +01:00