Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Istio support #4406

Open
verejoel opened this issue Mar 22, 2024 · 1 comment
Open

Istio support #4406

verejoel opened this issue Mar 22, 2024 · 1 comment

Comments

@verejoel
Copy link

I have got parca up and running in agent and server mode on my K8s cluster. We use Istio as a service mesh, which presents a set of unique challenges. The biggest challenge I found so far is setting the correct appProtocol for the parca port.

We basically need to do three things with one port:

  • receive gRPC traffic (appProtocol: grpc)
  • allow metrics scraping (appProtocol: http)
  • allow ingress access (appProtocol: http)

I have not (yet) found a configuration that works for all three use cases! E.g. I can get the agents to ship data via gRPC, but the Prometheus scraper is blocked, or I can scrape metrics, but the agents start to be unable to ship data. There are ways to overcome this, by e.g. excluding the agents from the service mesh and configuring a PeerAuthentication policy, but this is technically not compliant for our productive workloads (where mTLS must be enabled for all workloads).

Therefore, while I recognize the efficiency of using one port for everything, I request a new feature where we could optionally enable a separate port for HTTP metrics scraping and the UI, and a separate port for the gRPC traffic from the agent.

I'll also accept anyone who works out how to configure Istio to play nicely with just the one port :)

Cheers!

@maxbrunet
Copy link
Member

Hey @verejoel, have you tried appProtocol: http2? HTTP2 should work for everything, if not, could you share the errors you are seeing, please?

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants