You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
A way to re-render templates for a single allocation, probably using the API.
Use-cases
Cases that use HashiCorp Vault with the kv2 secret engine while still needing quick updates. The current interval at which consul-template re-renders those Vault kv2 secrets is too low. (My specific use-case is adding new certificates (which are stored in the Vault) to haproxy.)
We can set up a service that listens for update-messages (e.g. listening on RabbitMQ or AWS SNS) and then at some point notify Nomad somehow to re-render the templates for some allocation (or for the "current" allocation, since I'd be deploying it as a sidecar).
The end-goal would be to have the Nomad templates re-rendered on-demand.
Attempted Solutions
The current "workaround" is waiting up to 5 minutes for consul-template (as compiled with Nomad) to automatically re-fetch those values. This delays the deployment of new certificates (e.g. for new domains) by up to 5 minutes, without knowing exactly when the instances are updated and ready-to-go.
Another workaround would be to use Vault kv1 instead of Vault kv2, there we can configure some lease duration to speed things up.
Another workaround is using a haproxy-specific Runtime API to dynamically update the certificates, but I'd much rather stick to using Nomad templates for simplicity sake.
The text was updated successfully, but these errors were encountered:
Hi @EtienneBruines! The current behavior is a limitation of the Vault API, which doesn't support the same kind of blocking queries that Consul (or Nomad) does. So consul-template has to poll the Vault endpoint. There's definitely some related problems here with #10920 where the idea is to coordinate updates across a job. I'll mark this idea for roadmapping.
Proposal
A way to re-render templates for a single allocation, probably using the API.
Use-cases
Cases that use HashiCorp Vault with the kv2 secret engine while still needing quick updates. The current interval at which consul-template re-renders those Vault kv2 secrets is too low. (My specific use-case is adding new certificates (which are stored in the Vault) to haproxy.)
We can set up a service that listens for update-messages (e.g. listening on RabbitMQ or AWS SNS) and then at some point notify Nomad somehow to re-render the templates for some allocation (or for the "current" allocation, since I'd be deploying it as a sidecar).
The end-goal would be to have the Nomad templates re-rendered on-demand.
Attempted Solutions
The current "workaround" is waiting up to 5 minutes for consul-template (as compiled with Nomad) to automatically re-fetch those values. This delays the deployment of new certificates (e.g. for new domains) by up to 5 minutes, without knowing exactly when the instances are updated and ready-to-go.
Another workaround would be to use Vault kv1 instead of Vault kv2, there we can configure some lease duration to speed things up.
Another workaround is using a haproxy-specific Runtime API to dynamically update the certificates, but I'd much rather stick to using Nomad templates for simplicity sake.
The text was updated successfully, but these errors were encountered: