-
Notifications
You must be signed in to change notification settings - Fork 515
feat(gpu): Add robust proxy support for driver installation #1361
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
Merged
cjac
merged 1 commit into
GoogleCloudDataproc:main
from
LLC-Technologies-Collier:proxy-support-2025
Oct 11, 2025
Merged
feat(gpu): Add robust proxy support for driver installation #1361
cjac
merged 1 commit into
GoogleCloudDataproc:main
from
LLC-Technologies-Collier:proxy-support-2025
Oct 11, 2025
Conversation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Contributor
Author
|
/gcbrun |
f80a3fe to
7390639
Compare
Contributor
Author
|
/gcbrun |
7390639 to
97ebf9d
Compare
Contributor
Author
|
/gcbrun |
a8c249d to
4b10ff1
Compare
Contributor
Author
|
/gcbrun |
1 similar comment
Contributor
Author
|
/gcbrun |
4b10ff1 to
f793009
Compare
Contributor
Author
|
/gcbrun |
f793009 to
c4e1237
Compare
Contributor
Author
|
/gcbrun |
c4e1237 to
b819581
Compare
Contributor
Author
|
I've tried to make the build a bit more reliable. |
Contributor
Author
|
/gcbrun |
b819581 to
09329ea
Compare
Contributor
Author
|
/gcbrun |
dilipgodhia
approved these changes
Oct 11, 2025
This PR introduces comprehensive HTTP/S proxy support for the GPU driver installation script, enabling its use in environments with restricted internet egress, such as those using Secure Web Proxy. The `set_proxy` function, controlled by the `http-proxy` and new `http-proxy-pem-uri` metadata attributes, now configures APT, GPG, Java, pip, and Conda to route traffic through the specified proxy. If a PEM certificate URI is provided, the certificate is installed into the OS, Conda, and Java trust stores. The script now correctly handles the proxy scheme (HTTP vs HTTPS) based on the presence of the `http-proxy-pem-uri` metadata. This change was validated in a development environment where all internet access was routed through an explicit proxy. Additional changes: - `README.md` updated to document the new `http-proxy-pem-uri` metadata option and clarify `http-proxy` usage. - GCS caching for the NVIDIA driver is checked earlier to avoid unnecessary HEAD requests to the NVIDIA CDN. - `configure_dkms_certs` is now more idempotent. - Spark RAPIDS versions and repository URL aligned with `spark-rapids/spark-rapids.sh` as part of a move towards a unified GPU/RAPIDS installation script. - Switched to using `/sys/bus/pci/devices/*/uevent` for GPU detection to remove dependency on pciutils - Moved `set_proxy` call earlier in `prepare_to_install`. - Refactored `no_proxy` and `nvcc_gencode` list generation. fix(ci): Add retry logic to kubectl logs in presubmit - Wrapped `kubectl logs` command in `run-presubmit-on-k8s.sh` with a retry loop to handle transient "No agent available" errors from GKE.
09329ea to
fe3f54a
Compare
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
This PR significantly enhances support for installing GPU drivers
in environments requiring an HTTP/S proxy for internet access.
The
set_proxyfunction now comprehensively configures APT, DNF,GPG, conda and Java to use the proxy defined in instance metadata.
If a proxy certificate is provided via
http-proxy-pem-uri, it'sadded to the OS and Java trust stores, and tooling is configured
to use HTTPS for the proxy. This enables driver downloads and
package manager operations in locked-down VPCs where all egress
is via an SWP or other proxy.
Additional changes:
configure_dkms_certsis now more idempotent, skipping keygeneration if files exist.
Spark RAPIDS versions and repository URL aligned with
spark-rapids/spark-rapids.shto work towards a singleGPU/RAPIDS installation script.
This work was validated in a development environment where all
internet egress was forced through a proxy.