hashicorp / hashicorp/nomad

UNIX Domain Socket support added for connect in parallel to Consul UDS support in v1.10

Open
#10,705 1 comment 9 reactions 0 assignees View on GitHub
stage/accepted theme/consul theme/consul/connect theme/service-discovery/consul type/enhancement
Dominant language
Go
Stars
17k
Forks
2.1k
Avg merge
1d 9h
Merged PRs (30d)
105

Description

### Proposal
Consul 1.10 is releasing UDS support for services and Connect. Support has been included as of 1.10beta2 release. I've been experimenting with manually registering services like MySQL running on a UDS instead of TCP but this would clearly be useful in Nomad as well.

Consul has added the service option `socket_path` as alternative to `port` or `ports`. Ergo it would be a great paring with Consul if Nomad's service descriptor could support that.

Example:
```
service {
name = "count-api"
port = "9001"

connect {
sidecar_service {}
}
}

service {
name = "mysql"
socket_path = "/run/mysqld.sock"

connect {
sidecar_service {}
}
}
```

Contributor guide

No contributing guide indexed for this repository

Research direction

Start with Nomad's service descriptor and the Consul integration described in the proposal, then trace how the existing port and ports options are registered. Compare that path with Consul 1.10's socket_path option and determine the required behavior for connect sidecar services. Done means a service descriptor can express socket_path and Nomad registers it correctly alongside existing TCP options.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
backend, infrastructure
Issue type
Feature
Difficulty
4/5
Estimated time
3-5 days
Activity status
Stale
Clarity
Mostly clear
Newbie friendliness
35/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.