Commit Graph

14885 Commits

Author SHA1 Message Date
Lang Martin
27f735d225 CHANGELOG 2019-05-07 09:24:42 -04:00
Danielle
f4a3d73d6b Merge pull request #5656 from jweissig/patch-7
Fixed Typo
2019-05-07 14:12:44 +02:00
Justin Weissig
25848c4be7 Fixed Typo
Fixed typo: schedular/scheduler.
2019-05-07 05:11:36 -07:00
Michael Schurter
9ef81dbe7f Merge pull request #5647 from hashicorp/e2e-tf
E2E Test Terraform/Packer Improvements
2019-05-06 15:42:52 -07:00
Michael Schurter
06e36982bd docs: fix default restart values 2019-05-06 14:52:44 -07:00
Preetha Appan
2462c3cf47 Update changelog 2019-05-06 15:44:04 -05:00
Preetha
237d8ca2ec Merge pull request #5628 from hashicorp/f-preemption-config
Add config to disable preemption for batch/service jobs
2019-05-06 15:40:35 -05:00
Michael Lange
63e5aea4d8 Merge pull request #5620 from Mongey/cm-color-ui
Converts ANSI terminal codes to HTML in logs
2019-05-06 13:01:44 -07:00
Preetha Appan
5f88d0f408 Remove unnecessary locking and serverlist syncing in heartbeats
This removes an unnecessary shared lock between discovery and heartbeating
which was causing heartbeats to be missed upon retries when a single server
fails. Also made a drive by fix to call the periodic server shuffler goroutine.
2019-05-06 14:44:55 -05:00
Mahmood Ali
9b3ff8fe0e Merge pull request #5646 from hashicorp/some-ugorji-fixes
Codegen codec helpers for all nomad structs
2019-05-06 13:23:12 -04:00
Lang Martin
84306b0bfb Merge pull request #5601 from hashicorp/b-config-parse-direct-hcl
config parse direct hcl
2019-05-06 12:05:19 -04:00
Lang Martin
c75357c7c5 Merge pull request #5631 from hashicorp/b-system-sched-constraint-errors
fix system sched constraint errors
2019-05-06 11:53:40 -04:00
Mahmood Ali
d686fddb75 Merge pull request #5653 from hashicorp/b-s3-virtualbucket-style
docs: update s3 urls to use virtual bucket style
2019-05-06 11:40:48 -04:00
Mahmood Ali
8290f44a55 Merge pull request #5651 from hashicorp/f-peers-json-info
Update peers info with new raft config details
2019-05-06 11:40:35 -04:00
Mahmood Ali
5035db0c49 docs: update s3 urls to use virtual bucket style
In response to https://forums.aws.amazon.com/ann.jspa?annID=6776
2019-05-06 10:39:51 -04:00
Charlie Voiselle
68cf7506ae Merge pull request #5652 from jweissig/patch-6
Fix Typo
2019-05-05 15:15:31 -04:00
Justin Weissig
52989fb3da Fix Typo
Fixed Typo: Behing/Behind.
2019-05-05 05:42:40 -07:00
Preetha Appan
1500cf0e1f update changelog 2019-05-03 17:07:27 -05:00
Preetha
e85d31efc3 Merge pull request #5645 from hashicorp/b-deploy-health
Update deployment health on failed allocations only if health is unset
2019-05-03 17:04:18 -05:00
Mahmood Ali
d13c988dc9 Update peers info with new raft config details 2019-05-03 16:55:53 -04:00
Mahmood Ali
0e21642b62 Merge pull request #5629 from hbasappa/peersjon
Add support in nomad for supporting raft 3 protocol peers.json
2019-05-03 15:19:54 -04:00
Preetha Appan
a9d45c5048 Rename to match system scheduler config.
Also added docs
2019-05-03 14:06:12 -05:00
Michael Schurter
5c43a16b03 Fix comment
Co-Authored-By: preetapan <preetha@hashicorp.com>
2019-05-03 10:01:30 -05:00
Michael Schurter
96d69022df Remove unnecessary boolean clause
Co-Authored-By: preetapan <preetha@hashicorp.com>
2019-05-03 10:00:17 -05:00
Michael Schurter
452d9ab26c e2e: explain these scripts are for packer
It took me way too long to figure out these weren't used by TF.
2019-05-03 07:55:28 -07:00
Michael Schurter
d477ca50ff e2e: let the unindex clients do anything...
...and be debugable!
2019-05-03 07:54:55 -07:00
Michael Schurter
ac8d50f937 e2e: ssh instructions + remove redundant naming 2019-05-03 07:54:34 -07:00
Michael Schurter
10dfbb391e e2e: update deps and install nomad in packer
Nomad on the packer image will be overwritten by the sha specified in
the TF var, but including a base version on the packer image makes the
image valid for independent use.
2019-05-03 07:53:08 -07:00
Michael Schurter
782016fc78 e2e: enable systemd units so they start on boot 2019-05-03 07:52:03 -07:00
Preetha Appan
b4ecb448b3 Update deployment health on failed allocations only if health is unset
This fixes a confusing UX where a previously successful deployment's
healthy/unhealthy count would get updated if any allocations failed after
the deployment was already marked as successful.
2019-05-02 22:59:56 -05:00
Conor Mongey
aa4c1288f3 Return a htmlSafe string rather than use triple curlies 2019-05-02 21:47:24 +01:00
Conor Mongey
d2323e0cb8 Converts ANSI terminal codes to HTML in logs 2019-05-02 21:47:23 +01:00
Mahmood Ali
01c267b92b Merge pull request #5641 from hashicorp/b-task-networks-ports
client: handle 0.8 server network resources
2019-05-02 13:45:07 -04:00
Mahmood Ali
a988ae8576 Merge pull request #5640 from hashicorp/b-fix-omitempty
Update hashicorp/go-msgpack/codec
2019-05-02 12:12:56 -04:00
Hemanth Basappa
8d87ae3fdf Add support in nomad for supporting raft 3 protocol peers.json 2019-05-02 09:11:23 -07:00
Mahmood Ali
4a16a317ee client: handle 0.8 server network resources
Fixes https://github.com/hashicorp/nomad/issues/5587

When a nomad 0.9 client is handling an alloc generated by a nomad 0.8
server, we should check the alloc.TaskResources for networking details
rather than task.Resources.

We check alloc.TaskResources for networking for other tasks in the task
group [1], so it's a bit odd that we used the task.Resources struct
here.  TaskRunner also uses `alloc.TaskResources`[2].

The task.Resources struct in 0.8 was sparsly populated, resulting to
storing of 0 in port mapping env vars:

```
vagrant@nomad-server-01:~$ nomad version
Nomad v0.8.7 (21a2d93eecf018ad2209a5eab6aae6c359267933+CHANGES)
vagrant@nomad-server-01:~$ nomad server members
Name                    Address      Port  Status  Leader  Protocol  Build  Datacenter  Region
nomad-server-01.global  10.199.0.11  4648  alive   true    2         0.8.7  dc1         global
vagrant@nomad-server-01:~$ nomad alloc status -json 5b34649b | jq '.Job.TaskGroups[0].Tasks[0].Resources.Networks'
[
  {
    "CIDR": "",
    "Device": "",
    "DynamicPorts": [
      {
        "Label": "db",
        "Value": 0
      }
    ],
    "IP": "",
    "MBits": 10,
    "ReservedPorts": null
  }
]
vagrant@nomad-server-01:~$ nomad alloc status -json 5b34649b | jq '.TaskResources'
{
  "redis": {
    "CPU": 500,
    "DiskMB": 0,
    "IOPS": 0,
    "MemoryMB": 256,
    "Networks": [
      {
        "CIDR": "",
        "Device": "eth1",
        "DynamicPorts": [
          {
            "Label": "db",
            "Value": 21722
          }
        ],
        "IP": "10.199.0.21",
        "MBits": 10,
        "ReservedPorts": null
      }
    ]
  }
}
```

Also, updated the test values to mimic how Nomad 0.8 structs are
represented, and made its result match the non compact values in
`TestEnvironment_AsList`.

[1] 24e9040b18/client/taskenv/env.go (L624-L639)
[2] https://github.com/hashicorp/nomad/blob/master/client/allocrunner/taskrunner/task_runner.go#L287-L303
2019-05-02 12:08:38 -04:00
Mahmood Ali
24e9040b18 fix HashiStack eBay resource link 2019-05-02 11:19:44 -04:00
Mahmood Ali
229960796a Update hashicorp/go-msgpack/codec
To pick up the fix in https://github.com/hashicorp/go-msgpack/pull/8 .
2019-05-02 10:59:09 -04:00
Danielle Lancashire
14c231aeb9 consul: Do not deregister external checks
This commit causes sync to skip deregistering checks that are not
managed by nomad, such as service maintenance mode checks.  This is
handled in the same way as service registrations - by doing a Nomad
specific prefix match.
2019-05-02 16:54:18 +02:00
Danielle Lancashire
195529efd4 consul: Use a stable identifier for services
The current implementation of Service Registration uses a hash of the
nomad-internal state of a service to register it with Consul, this means that
any update to the service invalidates this name and we then deregister, and
recreate the service in Consul.

While this behaviour slightly simplifies reasoning about service registration,
this becomes problematic when we add consul health checks to a service. When
the service is re-registered, so are the checks, which default to failing for
at least one check period.

This commit migrates us to using a stable identifier based on the
allocation, task, and service identifiers, and uses the difference
between the remote and local state to decide when to push updates.

It uses the existing hashing mechanic to decide when UpdateTask should
regenerate service registrations for providing to Sync, but this should
be removable as part of a future refactor.

It additionally introduces the _nomad-check- prefix for check
definitions, to allow for future allowing of consul features like
maintenance mode.
2019-05-02 16:54:18 +02:00
Yishan Lin
da8f67639f Merge pull request #5636 from hashicorp/yishan/website-revised-resources-page
Yishan/website revised resources page
2019-05-01 18:45:47 -07:00
Yishan Lin
3c6373d5c3 Cleaned spacing for syntax consistency. 2019-05-01 18:37:34 -07:00
Yishan Lin
eb69732283 Fixed broken link to Nomad website in README 2019-05-01 11:46:03 -07:00
Yishan Lin
63e069e712 Moved "Webinars" section below "Who Uses Nomad" 2019-05-01 11:29:22 -07:00
Mahmood Ali
a02b742a09 use ugorji/go/codec version that's in vendor.json 2019-05-01 12:47:14 -04:00
Mahmood Ali
693de41ff2 codegen codecs for nomad structs
`ls *[!_test].go` was ignoring any file that ends with `s.go` (or any of
the letter inside `[]`), including `structs.go`!
2019-05-01 12:42:55 -04:00
Lang Martin
b1228536e8 system_sched & test cleanup comments 2019-05-01 12:25:26 -04:00
Lang Martin
d1308420b2 system_sched_test extend the test to check ineligible nodes 2019-05-01 12:25:26 -04:00
Lang Martin
8cc8fc6200 system_sched when a node is filtered, don't mark failure 2019-05-01 12:25:26 -04:00
Lang Martin
178092591b system_sched_test create partially constrained job 2019-05-01 12:25:26 -04:00