open-nomad/client/allocrunner
Seth Hoenig 4d71f22a11 consul/connect: add support for running connect native tasks
This PR adds the capability of running Connect Native Tasks on Nomad,
particularly when TLS and ACLs are enabled on Consul.

The `connect` stanza now includes a `native` parameter, which can be
set to the name of task that backs the Connect Native Consul service.

There is a new Client configuration parameter for the `consul` stanza
called `share_ssl`. Like `allow_unauthenticated` the default value is
true, but recommended to be disabled in production environments. When
enabled, the Nomad Client's Consul TLS information is shared with
Connect Native tasks through the normal Consul environment variables.
This does NOT include auth or token information.

If Consul ACLs are enabled, Service Identity Tokens are automatically
and injected into the Connect Native task through the CONSUL_HTTP_TOKEN
environment variable.

Any of the automatically set environment variables can be overridden by
the Connect Native task using the `env` stanza.

Fixes #6083
2020-06-22 14:07:44 -05:00
..
interfaces allow only positive shutdown delay 2019-12-16 11:38:30 -05:00
state stale allocation data leads to incorrect (and even negative) metrics (#5637) 2019-05-07 15:54:36 -04:00
taskrunner consul/connect: add support for running connect native tasks 2020-06-22 14:07:44 -05:00
alloc_runner.go allocrunner: Push state from hooks to taskrunners 2020-03-23 13:58:30 -04:00
alloc_runner_hooks.go volumes: return better error messages for unsupported task drivers (#8030) 2020-05-21 09:18:02 -04:00
alloc_runner_test.go tests: update AR task restart policy 2020-03-24 17:00:42 -04:00
alloc_runner_unix_test.go tests: restart restartpolicy for all tasks in tests 2020-03-24 21:52:48 -04:00
allocdir_hook.go client: cleanup and document context uses 2019-03-12 15:03:54 -07:00
config.go client: Pass an RPC Client to AllocRunners 2020-03-23 13:58:30 -04:00
consulsock_hook.go consul/connect: add support for running connect native tasks 2020-06-22 14:07:44 -05:00
consulsock_hook_test.go connect: add unix socket to proxy grpc for envoy (#6232) 2019-09-03 08:43:38 -07:00
csi_hook.go volumes: return better error messages for unsupported task drivers (#8030) 2020-05-21 09:18:02 -04:00
groupservice_hook.go ensure shutdown delay can be removed 2020-04-06 11:33:04 -04:00
groupservice_hook_test.go ensure shutdown delay can be removed 2020-04-06 11:33:04 -04:00
health_hook.go add default update stanza and max_parallel=0 disables deployments (#6191) 2019-09-02 10:30:09 -07:00
health_hook_test.go health: fail health if any task is pending 2020-03-22 11:13:41 -04:00
migrate_hook.go client: cleanup and document context uses 2019-03-12 15:03:54 -07:00
network_hook.go driver/networking: don't recreate existing network namespaces 2019-09-25 14:58:17 -04:00
network_hook_test.go driver/networking: don't recreate existing network namespaces 2019-09-25 14:58:17 -04:00
network_manager_linux.go CNI Implementation (#7518) 2020-06-18 11:05:29 -07:00
network_manager_linux_test.go ar: rearrange network hook to support building on windows 2019-07-31 01:03:19 -04:00
network_manager_nonlinux.go ar: refactor network bridge config to use go-cni lib (#6255) 2019-09-04 16:33:25 -04:00
networking.go ar: refactor network bridge config to use go-cni lib (#6255) 2019-09-04 16:33:25 -04:00
networking_bridge_linux.go CNI Implementation (#7518) 2020-06-18 11:05:29 -07:00
networking_cni.go multi-interface network support 2020-06-19 09:42:10 -04:00
task_hook_coordinator.go address review feedback 2020-03-21 17:52:58 -04:00
task_hook_coordinator_test.go refactor TaskHookCoordinator tests to use mock package and add failed init and sidecar test cases 2020-03-21 17:52:56 -04:00
testing.go client: enable nomad client to request and set SI tokens for tasks 2020-01-31 19:03:38 -06:00
upstream_allocs_hook.go client: cleanup and document context uses 2019-03-12 15:03:54 -07:00
util.go allocrunnerv2 -> allocrunner 2018-10-16 16:56:56 -07:00