This project is mirrored from https://gitee.com/mirrors/nomad.git. Pull mirroring failed .
Repository mirroring has been paused due to too many failed attempts. It can be resumed by a project maintainer.
  1. 13 Oct, 2020 2 commits
    • Seth Hoenig's avatar
      consul/connect: dynamically select envoy sidecar at runtime · bdeb73cd
      Seth Hoenig authored
      As newer versions of Consul are released, the minimum version of Envoy
      it supports as a sidecar proxy also gets bumped. Starting with the upcoming
      Consul v1.9.X series, Envoy v1.11.X will no longer be supported. Current
      versions of Nomad hardcode a version of Envoy v1.11.2 to be used as the
      default implementation of Connect sidecar proxy.
      
      This PR introduces a change such that each Nomad Client will query its
      local Consul for a list of Envoy proxies that it supports (https://github.com/hashicorp/consul/pull/8545)
      and then launch the Connect sidecar proxy task using the latest supported version
      of Envoy. If the `SupportedProxies` API component is not available from
      Consul, Nomad will fallback to the old version of Envoy supported by old
      versions of Consul.
      
      Setting the meta configuration option `meta.connect.sidecar_image` or
      setting the `connect.sidecar_task` stanza will take precedence as is
      the current behavior for sidecar proxies.
      
      Setting the meta configuration option `meta.connect.gateway_image`
      will take precedence as is the current behavior for connect gateways.
      
      `meta.connect.sidecar_image` and `meta.connect.gateway_image` may make
      use of the special `${NOMAD_envoy_version}` variable interpolation, which
      resolves to the newest version of Envoy supported by the Consul agent.
      
      Addresses #8585 #7665
      bdeb73cd
    • Tim Gross's avatar
      405e9d87
  2. 12 Oct, 2020 6 commits
  3. 09 Oct, 2020 5 commits
  4. 08 Oct, 2020 9 commits
    • Tim Gross's avatar
      docs: show distinct_hosts constraint for CSI plugins (#9052) · 0fcca28e
      Tim Gross authored
      CSI plugins with the same plugin ID and type (controller, node, monolith) will
      collide on a host, both in the communication socket and in the dynamic plugin
      registry. Until this can be fixed, leave notice to operators in the
      documentation.
      0fcca28e
    • Seth Hoenig's avatar
      docs: fix linter typos in docs · da344b18
      Seth Hoenig authored
      da344b18
    • Seth Hoenig's avatar
      080b2c44
    • Ryan Oaks's avatar
      Merge pull request #9048 from hashicorp/ro.docs-html-redirect-catchall · b2b9bd7a
      Ryan Oaks authored
      docs: Update redirects to use a broader catch-all for routes ending in .html
      b2b9bd7a
    • Seth Hoenig's avatar
      env_aws: get ec2 cpu perf data from AWS API · 53ab3087
      Seth Hoenig authored
      Previously, Nomad was using a hand-made lookup table for looking
      up EC2 CPU performance characteristics (core count + speed = ticks).
      
      This data was incomplete and incorrect depending on region. The AWS
      API has the correct data but requires API keys to use (i.e. should not
      be queried directly from Nomad).
      
      This change introduces a lookup table generated by a small command line
      tool in Nomad's tools module which uses the Amazon AWS API.
      
      Running the tool requires AWS_* environment variables set.
        $ # in nomad/tools/cpuinfo
        $ go run .
      
      Going forward, Nomad can incorporate regeneration of the lookup table
      somewhere in the CI pipeline so that we remain up-to-date on the latest
      offerings from EC2.
      
      Fixes #7830
      53ab3087
    • Tim Gross's avatar
      csi: loosen ValidateVolumeCapability requirements (#9049) · bf62f46a
      Tim Gross authored
      The CSI specification for `ValidateVolumeCapability` says that we shall
      "reconcile successful capability-validation responses by comparing the
      validated capabilities with those that it had originally requested" but leaves
      the details of that reconcilation unspecified. This API is not implemented in
      Kubernetes, so controller plugins don't have a real-world implementation to
      verify their behavior against.
      
      We have found that CSI plugins in the wild may return "successful" but
      incomplete `VolumeCapability` responses, so we can't require that all
      capabilities we expect have been validated, only that the ones that have been
      validated match. This appears to violate the CSI specification but until
      that's been resolved in upstream we have to loosen our validation
      requirements. The tradeoff is that we're more likely to have runtime errors
      during `NodeStageVolume` instead of at the time of volume registration.
      bf62f46a
    • Ryan Oaks's avatar
    • Tim Gross's avatar
      csi: validate mount options during volume registration (#9044) · 024e27e5
      Tim Gross authored
      Volumes using attachment mode `file-system` use the CSI filesystem API when
      they're mounted, and can be passed mount options. But `block-device` mode
      volumes don't have this option. When RPCs are made to plugins, we are silently
      dropping the mount options we don't expect to see, but this results in a poor
      operator experience when the mount options aren't honored. This changeset
      makes passing mount options to a `block-device` volume a validation error.
      024e27e5
    • Tim Gross's avatar
      docs: CSI mount_options are available only for filesystem vols (#9043) · 9d1efd5c
      Tim Gross authored
      The CSI specification allows only the `file-system` attachment mode to have
      mount options. The `block-device` mode is left "intentionally empty, for now"
      in the protocol. We should be validating against this problem, but our
      documentation also had it backwards.
      
      Also adds missing mount_options on group volume.
      9d1efd5c
  5. 07 Oct, 2020 4 commits
  6. 06 Oct, 2020 14 commits