open-nomad/client/allocrunner/taskrunner
Seth Hoenig 2511f48351 consul/connect: add support for bridge networks with connect native tasks
Before, Connect Native Tasks needed one of these to work:

- To be run in host networking mode
- To have the Consul agent configured to listen to a unix socket
- To have the Consul agent configured to listen to a public interface

None of these are a great experience, though running in host networking is
still the best solution for non-Linux hosts. This PR establishes a connection
proxy between the Consul HTTP listener and a unix socket inside the alloc fs,
bypassing the network namespace for any Connect Native task. Similar to and
re-uses a bunch of code from the gRPC listener version for envoy sidecar proxies.

Proxy is established only if the alloc is configured for bridge networking and
there is at least one Connect Native task in the Task Group.

Fixes #8290
2020-07-29 09:26:01 -05:00
..
getter getter: allow the gcs download scheme (#6692) 2019-11-19 09:10:56 -05:00
interfaces client: fix tr lifecycle logic and shutdown delay 2018-11-05 12:32:05 -08:00
restarts fix test 2020-03-21 17:52:57 -04:00
state client: test logmon cleanup 2019-03-04 13:15:15 -08:00
template oss compoments for multi-vault namespaces 2020-07-24 10:14:59 -04:00
testdata executor/linux: make chroot binary paths absolute 2019-04-01 15:45:31 -07:00
artifact_hook.go client: ensure task is cleaned up when terminal 2019-03-01 14:00:23 -08:00
artifact_hook_test.go client: ensure task is cleaned up when terminal 2019-03-01 14:00:23 -08:00
connect_native_hook.go consul/connect: add support for bridge networks with connect native tasks 2020-07-29 09:26:01 -05:00
connect_native_hook_test.go consul/connect: add support for bridge networks with connect native tasks 2020-07-29 09:26:01 -05:00
device_hook.go Store device envs separately and pass to drivers 2018-12-19 14:23:09 -08:00
device_hook_test.go Device hook and devices affect computed node class 2018-11-27 17:25:33 -08:00
dispatch_hook.go client/state: support upgrading from 0.8->0.9 2018-12-19 10:39:27 -08:00
dispatch_hook_test.go use drivers.FSIsolation 2019-01-08 09:11:47 -05:00
driver_handle.go implement client endpoint of nomad exec 2019-05-09 16:49:08 -04:00
envoybootstrap_hook.go consul/connect: add support for running connect native tasks 2020-06-22 14:07:44 -05:00
envoybootstrap_hook_test.go consul/connect: add support for running connect native tasks 2020-06-22 14:07:44 -05:00
errors.go client: artifact errors are retry-able 2019-02-20 07:21:27 -08:00
errors_test.go client: artifact errors are retry-able 2019-02-20 07:21:27 -08:00
lazy_handle.go executor: implement streaming stats API 2019-01-12 12:18:22 -05:00
lifecycle.go tr: Fetch Wait channel before killTask in restart 2019-06-26 15:20:57 +02:00
logmon_hook.go address review comments 2019-12-13 11:21:00 -05:00
logmon_hook_test.go driver: allow disabling log collection 2019-12-08 14:15:03 -05:00
logmon_hook_unix_test.go driver: allow disabling log collection 2019-12-08 14:15:03 -05:00
plugin_supervisor_hook.go csi: use a blocking initial connection with timeout 2020-05-14 15:59:19 -04:00
script_check_hook.go interpolate environment for services in script checks (#6916) 2020-01-09 08:12:54 -05:00
script_check_hook_test.go interpolate environment for services in script checks (#6916) 2020-01-09 08:12:54 -05:00
service_hook.go Run task shutdown_delay regardless of service registration 2020-04-10 11:06:26 -04:00
service_hook_test.go tr/service_hook: reset initialized flag during deregister 2020-04-06 16:05:36 -04:00
sids_hook.go client: PR cleanup - improved logging around kill task in SIDS hook 2020-01-31 19:05:23 -06:00
sids_hook_test.go tests: set consul token for nomad client for testing SIDS TR hook 2020-01-31 19:06:15 -06:00
stats_hook.go stats_hook: log normal shutdown condition as debug, not error (#8028) 2020-05-20 10:28:30 -04:00
stats_hook_test.go executor: implement streaming stats API 2019-01-12 12:18:22 -05:00
task_dir_hook.go client: ensure task is cleaned up when terminal 2019-03-01 14:00:23 -08:00
task_runner.go Task DNS Options (#7661) 2020-06-18 11:01:31 -07:00
task_runner_getters.go oss compoments for multi-vault namespaces 2020-07-24 10:14:59 -04:00
task_runner_hooks.go consul/connect: add support for running connect native tasks 2020-06-22 14:07:44 -05:00
task_runner_test.go tests: restart restartpolicy for all tasks in tests 2020-03-24 21:52:48 -04:00
tasklet.go comments: cleanup some leftover debug comments and such 2020-01-31 19:04:35 -06:00
tasklet_test.go support script checks for task group services (#6197) 2019-09-03 15:09:04 -04:00
template_hook.go oss compoments for multi-vault namespaces 2020-07-24 10:14:59 -04:00
validate_hook.go client: Rename drivers/shared/env => client/taskenv 2018-11-30 12:18:39 +01:00
validate_hook_test.go client: Rename drivers/shared/env => client/taskenv 2018-11-30 12:18:39 +01:00
vault_hook.go emit TaskRestartSignal event on vault restart 2019-02-22 15:56:14 -05:00
vault_hook_test.go client: support graceful shutdowns 2018-11-19 16:39:30 -08:00
volume_hook.go volumes: return better error messages for unsupported task drivers (#8030) 2020-05-21 09:18:02 -04:00
volume_hook_test.go volumes: return better error messages for unsupported task drivers (#8030) 2020-05-21 09:18:02 -04:00