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

[v2.0.0.rc.1] NO_PROXY environment variable not handled any more #18584

Closed
btheu opened this issue Sep 18, 2024 · 3 comments
Closed

[v2.0.0.rc.1] NO_PROXY environment variable not handled any more #18584

btheu opened this issue Sep 18, 2024 · 3 comments
Labels
type/bug Something isn't working
Milestone

Comments

@btheu
Copy link

btheu commented Sep 18, 2024

Describe the bug

Standalone RW v2.0.0.rc.1 cant start from docker-compose.yml when env vars HTTP_PROXY and NO_PROXY are setup.

Previous version v1.10.1 is starting well.

Error message/log

`Failed to connect to meta server http://127.0.0.1:5690/`

To Reproduce

You need to be behind a company proxy, in docker compose add environment variables:

HTTP_PROXY="http://mycompanyproxy:3128"
NO_PROXY="localhost,127.0.0.1"

Expected behavior

Like RW v1.10.1, I expect RW 2.0.0.rc.1 fully started and accepting SQL queries.

How did you deploy RisingWave?

Via docker-compose derivative from risingwave lab one :

https://github.com/risingwavelabs/risingwave/blob/main/docker/docker-compose.yml

The version of RisingWave

v2.0.0.rc.1

risingwavelabs/risingwave:nightly-20240917

https://hub.docker.com/layers/risingwavelabs/risingwave/nightly-20240917/images/sha256-465c403878fe51210cfa83fd87c2c205795c6a9b9601cc62f0abd89b5a131938?context=explore

Additional context

That's mean NO_PROXY="localhost,127.0.0.1" env var is ignored in a way that http call are going through the HTTP_PROXY even for localhost http call.

@btheu btheu added the type/bug Something isn't working label Sep 18, 2024
@github-actions github-actions bot added this to the release-2.1 milestone Sep 18, 2024
@BugenZhao
Copy link
Member

We use tonic library for gRPCs between nodes in a cluster, where I don't think env vars like HTTP_PROXY or NO_PROXY are taken into consideration... 🤔

@BugenZhao
Copy link
Member

BugenZhao commented Sep 19, 2024

We use tonic library for gRPCs between nodes in a cluster, where I don't think env vars like HTTP_PROXY or NO_PROXY are taken into consideration... 🤔

I've double-checked and confirmed that the issue is due to the meta service being unable to connect to MinIO.

We switched to OpenDAL as the S3 backend (in #18011), which uses reqwest for HTTP requests and respects environment variables like HTTP_PROXY and NO_PROXY. The previous aws-sdk implementation did not.

That is to say...

  • In previous versions, env vars like HTTP_PROXY and NO_PROXY were not read and handled for both gRPCs between nodes and S3 accesses.
  • In the latest version, they are handled by S3 accesses. But in your case, you should add minio-0 to the list as well.

Feel free to let us know if there are further questions.

@btheu
Copy link
Author

btheu commented Sep 19, 2024

Indeed adding minio-0 in NO_PROXY fixed the issue.

Thanks

@BugenZhao BugenZhao closed this as not planned Won't fix, can't repro, duplicate, stale Sep 20, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
type/bug Something isn't working
Projects
None yet
Development

No branches or pull requests

2 participants