Commit graph

552 commits

Author SHA1 Message Date
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
Jake Champlin 6d3c76ceb3
Refactor fs subcommands into fs command
Refactors `nomad fs` command to eliminate `fs` subcommands.
Automatically displays the file, if the path specified is a file; lists
the directory if the path is a directory; or displays stat information
if the `-stat` flag is set.

Currently running `nomad fs ls` to find a file, then running the exact
same command with the exception of `cat` instead of `ls` is time
consuming and awkward. This allows operational testing to be greatly
enhanced, and makes our lives so much better.
2016-05-04 23:59:38 -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 8f16473c6e Better error handling 2016-04-22 15:59:56 -07:00
Alex Dadgar 6c6dacd042 Fix missing format variable 2016-04-18 18:53:05 -07:00
Alex Dadgar e8bb0ab864 Merge pull request #1090 from hashicorp/f-inspect-submittable
Make inspect output submittable via HTTP API
2016-04-13 17:18:54 -07:00
Alex Dadgar 7b41cfec7b Merge pull request #1089 from hashicorp/f-validate-driver-on-submit
Validate driver config on job register
2016-04-13 16:54:59 -07:00
Alex Dadgar 538389c056 Make inspect output submittable 2016-04-13 16:53:39 -07:00
Alex Dadgar 3c9e0c9c47 Lower number of submitted jobs 2016-04-13 16:33:30 -07:00
Alex Dadgar 1a8024a59b check for exact match on job for inspect/stop 2016-04-13 16:05:58 -07:00
Alex Dadgar f38ed64938 Validate driver config on job register 2016-04-13 15:55:46 -07:00
Alex Dadgar 273dfaf2c7 Periodic jobs always are evaluated in UTC TZ 2016-04-12 09:47:25 -07:00
Alex Dadgar 60153ed845 Add -self flag to node-drain 2016-04-11 15:20:49 -07:00
Diptanu Choudhury 953127fff7 Merge pull request #1053 from hashicorp/remove-interfaces
removing interfaces from config
2016-04-09 09:18:17 -07:00
Alex Dadgar 42924b9037 Merge pull request #1052 from iverberk/b-fix-panic-on-fs-job-parameter
Fixes a panic when fs commands with a job parameter return zero allocations
2016-04-08 11:27:20 -07:00
Alex Dadgar b6e1057974 Sort the task resources in alloc-status 2016-04-07 14:55:48 -07:00
Ivo Verberk b5beb70fbd Make sure we exit on errors 2016-04-07 22:56:17 +02:00
Diptanu Choudhury 891b201eef removing interfaces from config 2016-04-07 13:25:38 -07:00
Ivo Verberk a7b1842824 Fixes a panic when fs commands with a job parameter return zero allocations 2016-04-07 20:22:09 +02:00
Diptanu Choudhury 102d1065a7 Showing the status of the first job when it's prefixed matched and the user input matched exact 2016-03-30 22:17:41 -07:00
Alex Dadgar 9a1b1f01c8 run -output adds job key 2016-03-29 15:02:14 -07:00
Alex Dadgar 7bee675b6c node-status -self command and docs 2016-03-29 12:36:24 -07:00
Alex Dadgar ec89e77316 Merge pull request #997 from hashicorp/fs-cat-api
Added the /fs/cat/ api
2016-03-28 14:14:47 -07:00
Diptanu Choudhury 9d495a4be4 Added the /fs/cat/ api 2016-03-28 11:06:22 -07:00
Diptanu Choudhury 946ccfc512 Fixes the logic for job-stop confirmation prompt 2016-03-27 19:21:23 -07:00
Diptanu Choudhury b45387c03c Fixes the logic for node drain confirmation prompt 2016-03-27 19:17:29 -07:00
Alex Dadgar f9a48e23f9 nomad run -output emits the JSON representation of the job 2016-03-25 18:24:51 -07:00
Alex Dadgar 25dc8a0dcb Explain restart decision and display in alloc-status 2016-03-25 12:47:14 -07:00
Alex Dadgar 647c20e465 Merge pull request #978 from hashicorp/f-enforce-user
Operator specifiable blacklist for task's using certain users
2016-03-25 12:44:05 -07:00
Alex Dadgar 69d432a5a0 Merge pull request #983 from hashicorp/f-destroy-conf
Confirmation on destructive commands
2016-03-25 10:31:38 -07:00
Alex Dadgar 5d48a2bc71 Confirmation on destructive commands 2016-03-24 14:43:20 -07:00
Pete Shima 73879faa9d Move update servers cli output to the correct commands location 2016-03-24 13:31:23 -07:00
Alex Dadgar 45dfae8f6f Operator specifiable blacklist for task's using certain users 2016-03-24 10:55:14 -07:00
Alex Dadgar 74971e0e90 Merge pull request #965 from hashicorp/f-nomad-fingerprinter
client: add nomad fingerprinter
2016-03-22 17:55:42 -07:00
Alex Dadgar aefa4b9207 add nomad fingerprinter 2016-03-22 17:12:30 -07:00
Alex Dadgar e2c0ca48b8 node-status fix panic 2016-03-22 16:25:25 -07:00
Alex Dadgar 1e67be4c6f Fix indentation of init file 2016-03-21 18:16:57 -07:00
Alex Dadgar f5aa697da8 Merge pull request #952 from hashicorp/f-nomad-inspect
cli: Add nomad inspect command
2016-03-21 13:01:48 -07:00
Alex Dadgar 9cfb4ee633 inspect/stop uses prefix search 2016-03-21 13:00:14 -07:00
Alex Dadgar 90a61172b4 Add nomad inspect command 2016-03-21 12:46:35 -07:00
Diptanu Choudhury 82908d5fa9 Merge pull request #941 from hashicorp/f-interface-name
Use an interface name to find the bind addr for rpc, http and serf components
2016-03-20 23:57:44 -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
Alex Dadgar d8d1447f8c less verbose output and show node's total resources 2016-03-20 17:36:40 -07:00
Alex Dadgar 7b36d7ec55 Reduce verbosity of alloc-status 2016-03-20 16:52:24 -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
Jake Champlin 4f01d2f8bf Allow fs commands to use job-id
Adds `-job` flag argument to `nomad fs` commands to randomly lookup a
job's allocation-id to use in an `fs` command.

Can be used when debugging a job, where a specific allocation ID is not
a strict requirement.
2016-03-18 15:05:35 -04:00
Diptanu Choudhury a3991ad866 Merge pull request #936 from hashicorp/always-prefix-match
Always defaulting to prefix match
2016-03-17 17:26:52 -07:00
Diptanu Choudhury 7ed107d04e Always defaulting to prefix match 2016-03-17 17:25:38 -07:00
Alex Dadgar bf74e2f790 display server leaders per region 2016-03-17 16:04:09 -07:00
Diptanu Choudhury cbca7addb4 Fixes example.init 2016-03-15 21:21:49 -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
Alex Dadgar 4288d3b7d7 Add artifact to init 2016-03-15 20:28:33 -07:00
Alex Dadgar 9f878a16bf Download artifacts and remove old code for drivers 2016-03-15 13:28:57 -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 7276bd5e84 Merge pull request #907 from hashicorp/f-task-resources
Showing Task Resources in alloc status
2016-03-11 15:14:49 -08:00
Diptanu Choudhury b07c23fd5e Showing Task Resources in alloc status 2016-03-11 14:28:51 -08:00
Diptanu Choudhury 4589798ade Simplified the logic of limit 2016-03-10 19:02:39 -08:00
Diptanu Choudhury c96e909e43 Merge pull request #902 from hashicorp/f-fs-error
Improved the error related to fs commands
2016-03-10 14:08:33 -08:00
Diptanu Choudhury a9904c9187 Improved the error related to fs commands 2016-03-10 14:07:33 -08:00
Diptanu Choudhury 512d0c317a Merge pull request #897 from hashicorp/syslog-addr
Using unix domain sockets for docker syslog collector
2016-03-10 11:49:21 -08:00
Ivo Verberk 318352cc0f Validate config keys 2016-03-10 19:16:35 +01: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
Jake Champlin 3852aa4ae4 Cleanup style, and make cleaner 2016-03-07 09:58:35 -05:00
Jake Champlin edd60b4fb1 Print resource usage w/ alloc-status + node-status
When alloc-status is called, in it's long form only, print the resource
utilization for that single allocation.

When node-status is called, in it's long form only, print the TOTAL
resource utilization that is occurring on that single node.

Nomad Alloc Status:

```
% nomad alloc-status 195d3bf2
ID              = 195d3bf2
Eval ID         = c917e3ee
Name            = example.cache[1]
Node ID         = 1b2520a7
Job ID          = example
Client Status   = running
Evaluated Nodes = 1
Filtered Nodes  = 0
Exhausted Nodes = 0
Allocation Time = 17.73µs
Failures        = 0

==> Task "redis" is "running"
Recent Events:
Time                   Type      Description
04/03/16 21:20:45 EST  Started   Task started by client
04/03/16 21:20:42 EST  Received  Task received by client

==> Status
Allocation "195d3bf2" status "running" (0/1 nodes filtered)
  * Score "1b2520a7-6714-e78d-a8f7-68467dda6db7.binpack" = 1.209464
  * Score "1b2520a7-6714-e78d-a8f7-68467dda6db7.job-anti-affinity" = -10.000000

==> Resources
CPU  MemoryMB  DiskMB  IOPS
500  256       300     0
```

Nomad Node Status:

```
% nomad node-status 57b3a55a
ID         = 57b3a55a
Name       = biscuits
Class      = <none>
DC         = dc1
Drain      = false
Status     = ready
Attributes = arch:amd64, cpu.frequency:3753.458875, cpu.modelname:Intel(R) Core(TM) i7-4770K CPU @ 3.50GHz, cpu.numcores:8, cpu.totalcompute:30027.671000, driver.docker:1, driver.docker.version:1.10.2, driver.exec:1, driver.raw_exec:1, hostname:biscuits, kernel.name:linux, kernel.version:4.4.0-9-generic, memory.totalbytes:25208934400, os.name:ubuntu, os.version:16.04, unique.cgroup.mountpoint:/sys/fs/cgroup, unique.network.ip-address:127.0.0.1, unique.storage.bytesfree:219781419008, unique.storage.bytestotal:246059892736, unique.storage.volume:/dev/sdb3

==> Allocations
ID        Eval ID   Job ID   Task Group  Desired Status  Client Status
2c236883  aa11aca8  example  cache       run             running
32f6e3d6  aa11aca8  example  cache       run             running

==> Resource Utilization
CPU   MemoryMB  DiskMB  IOPS
1000  512       600     0
```
2016-03-07 09:58:35 -05: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
Jake Champlin ce27b1e8ea Add -allocs to help output 2016-03-03 14:46:24 -05:00
Jake Champlin 4e6737651a Only fetch running allocs, use args, add docs
Only fetch running allocations, not total allocated ids, add
documentation, and cleanup things.
2016-03-03 14:09:07 -05:00
Jake Champlin c4a3f5047b Include number of allocations in node-status
We recently ran into an issue on a small percentage of nomad-clients
where the nomad-client was running successfully, but due to a race
condition, could not correctly bind to the docker socket. This caused
all of our nomad jobs to be allocated to a single nomad-client instead
of being spread evenly across our clients. The only way to discover this
was to run `nomad node-status <node>` and count each job allocation per
node.

This can lead to a fairly long debugging process if there are several
nomad-clients. Including the number of allocations for each node in the
`node-status` command would save a large amount of debug time.

```
jake@biscuits [12:08:41] [~]
-> % nomad node-status
ID        Datacenter  Name      Class   Drain  Status  Allocations
2b0aabc5  dc1         biscuits  <none>  false  ready   0
```

```
jake@biscuits [12:08:55] [~]
-> % nomad node-status
ID        Datacenter  Name      Class   Drain  Status  Allocations
2b0aabc5  dc1         biscuits  <none>  false  ready   1
```
2016-03-03 12:19:56 -05:00
Alex Dadgar 61972c9ddc Refactor task runner to include driver starting into restart policy and add recoverable errors 2016-02-28 16:56:05 -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
Alex Dadgar d1011c9668 Fixes 2016-02-19 15:49:32 -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
Alex Dadgar c000dce72b Add human readable output to fs 2016-02-12 15:36:52 -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 c84a000416 Fixed some more tests 2016-02-11 22:33:41 -08:00
Diptanu Choudhury c6e395fa0e Fixed tests 2016-02-11 17:34:46 -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 d2fa769514 Added the log config to init example 2016-02-11 12:21:19 -08:00
Diptanu Choudhury 9e994cb8d0 Fixed some tests 2016-02-11 10:42:56 -08:00
Diptanu Choudhury 1e4c42f29d Starting the syslog collector along with a docker container 2016-02-09 18:24:30 -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 4527410e33 Fixed merged conflict 2016-02-07 17:58:31 -05:00
Alex Dadgar d2d59905a2 Shorted eval id and only print waiting if time > 0 2016-02-06 16:09:39 -08:00
Diptanu Choudhury d2eeba213c Reserving ports on windows 2016-02-05 15:17:15 -08:00
Alex Dadgar 76a11b4613 Display fs in nomad help and list the subcommands when called 2016-02-05 11:01:29 -08:00
Diptanu Choudhury ff714703e6 Fixing merge conflicts 2016-02-04 22:55:38 -08:00
Diptanu Choudhury 30d5bba131 Not syncing stdout and stderr of pluging with client 2016-02-04 17:36:31 -08:00
Alex Dadgar 5018f5dd1e Only interpret vars wrapped in braces 2016-02-04 17:26:46 -08:00
Diptanu Choudhury f95b973c2c Moved packages around 2016-02-04 17:00:41 -08:00
Diptanu Choudhury 57453086a7 Fixed the executor command 2016-02-04 17:00:37 -08:00
Diptanu Choudhury 4ed85d0ab2 Using a plugin to create the executor 2016-02-04 17:00:37 -08:00
Alex Dadgar 6f20d3f435 Restart on-success shouldn't be user specifiable 2016-02-02 17:35:06 -08:00
Alex Dadgar 4748bfd869 Tests 2016-02-02 13:50:30 -08:00
Alex Dadgar 54aebfd329 Merge pull request #731 from hashicorp/f-reduce-client-alloc-pulls
Client only pulls update allocations from server
2016-02-02 13:26:36 -08:00
Diptanu Choudhury a7906020dd Updated the time stamp style 2016-02-01 17:41:47 -08:00
Alex Dadgar 2d98c0eadd Fix double pull with introduction of AllocModifyIndex 2016-02-01 15:43:59 -08:00
Ranjib Dey 38d1685fff fix typo in fs-* command usage text 2016-01-31 11:11:06 -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 9e85ce3cc1 Not wrapping the stat errors 2016-01-27 22:08:06 -08:00
Diptanu Choudhury a3140cff3f Changing an error message 2016-01-27 21:43:52 -08:00
Diptanu Choudhury 17b6db4465 Moving to subcommands for fs commands 2016-01-27 16:29:29 -08:00
Diptanu Choudhury 7878899cc4 Changed to fs-ls 2016-01-27 14:58:55 -08:00
Diptanu Choudhury f4e891b0c1 Formatting time to RFC822 2016-01-27 14:56:17 -08:00
Diptanu Choudhury 980bc19d10 Added more information about files 2016-01-27 14:20:10 -08:00
Diptanu Choudhury 0736f45937 Simplified the logic of detecting addrs 2016-01-27 13:34:01 -08:00
Diptanu Choudhury 4f28050d65 Removing the short option flag 2016-01-27 13:26:12 -08:00
Diptanu Choudhury cfea32067f Limiting the alloc and eval ids based on short/verbose flags 2016-01-27 12:56:38 -08:00
Diptanu Choudhury 82b2e24ff6 Added the short and verbose options 2016-01-27 12:53:25 -08:00
Diptanu Choudhury 2351f70590 Changed some comments, cli instructions etc 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 4a1d4ff69a Changed the api of the ReadAt API 2016-01-27 12:53:24 -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 26d9554d02 Added some comments 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 2956f71519 Implemented prefix matching 2016-01-27 12:53:24 -08:00
Diptanu Choudhury 68c2164088 Added the cli for fs-cat 2016-01-27 12:53:23 -08:00
Diptanu Choudhury a70e5dbdc7 Added an impl for stating a file 2016-01-27 12:53:23 -08:00
Diptanu Choudhury edd3194a16 Added some comments 2016-01-27 12:53:23 -08:00
Diptanu Choudhury 1e9c817a52 Added the cli for listing alloc dir 2016-01-27 12:53:23 -08:00
Alex Dadgar 4332263048 standardize on <> for required flags 2016-01-27 12:00:31 -08:00
Alex Dadgar 837ca9ab86 limit length of string, taking into account its length 2016-01-27 10:42:10 -08:00