Context: Using Nomad to orchestrate Java applications (Tomcat, using exec), with Consul providing the service mesh.
How do sidecar proxies (specifically Envoy) work without containers? I’d like to run a group of Tomcat servers using Nomad’s exec driver. Following the service mesh idioms I should have a sidecar running with each instance of Tomcat. Is this possible at all, given that Tomcat will not be running inside containers?
I’m very new to Nomad and Consul. Do point me in the right direction if this has been answered elsewhere.
Yes, each service instance must have one dedicated sidecar instance if it has at least one inbound connection or outbound dependency, the sidecar covers multiple inbound and outbound, you never need more than one per service instance.
Even if you use a plethora or sidecars the memory footprint will be lowered by the kernel, so it’s not that high.
You could access sidecars which are not specific to your service, but it would cause a mess keeping record and from security prospective, avoid it.
I’m guessing that the above systemd service definition should be parametrised using a template in order create multiple instances of the same (sidecar) service. Is that correct?