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

[Part of #177] Feature: refector nginx deployment #195

Conversation

mwallschlaeger
Copy link
Contributor

Description

if ingress is enabled, this change will let /geoserver and /catalogue/csw (.Values.pycsw.endpoint) be an individual path inside the kubernetes.ingress object in geonode-k8s. This change will improve performance of traffic towards geoserver and pycsw as this traffic does not traverse geonode-nginx container anymore,

@AlexGacon external cors (.Values.nginx.external_cors.enabled) must now be set as ingress.annotations

this PR is not a full fix of issue #177 more like a partial fix so far.

Type of Change

Please select the relevant option:

  • Bug fix
  • New feature
  • Documentation update
  • Refactoring
  • Other (please describe)

Related Issue

If there is an existing issue related to this pull request, please reference it here.

ref #177

Checklist

Please ensure that your pull request meets the following requirements:

  • The pull request is limited to one type (docs, feature, bug fix, etc.)
  • The pull request is as small as possible. Consider opening multiple pull requests instead of one large one.
  • The feature or bug fix has been discussed and documented in an issue beforehand.

Additional Notes

Any additional information or context regarding the pull request can be provided here.

Thank you for creating this pull request

@mwallschlaeger mwallschlaeger added enhancement New feature or request feature new required feature refectoring refectoring Discussion labels Jun 29, 2024
@mwallschlaeger mwallschlaeger added this to the Release 1.2.2 milestone Jun 29, 2024
@mwallschlaeger mwallschlaeger self-assigned this Jun 29, 2024
location /geoserver {
client_max_body_size {{ .Values.nginx.maxClientBodySize }};

{{- if .Values.nginx.external_cors.enabled }}
Copy link
Contributor

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

You may consider removing CORS config at nginx completely, just in favor of configuring CORS via django-cors-headers.

Copy link
Contributor Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

@AlexGacon any opinion on that from your side?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

It could be a solution, even if it implies having custom code on the geonode side if required (but since we now support GeoNode projects, it sounds possible)

@mwallschlaeger
Copy link
Contributor Author

@AlexGacon I would like to add this PR to the next release. Any opinions on this? If you have an alternate nginx conf this might breaks your system right?

@AlexGacon
Copy link
Collaborator

@mwallschlaeger yes indeed it would break the current setup of one of my customer. We will try the solution suggested by @ridoo : my only fear is that we replace a mechanism relying on a maintained and proven solution by a mechanism relying on a solution whose maintenance is less proven.

@mwallschlaeger
Copy link
Contributor Author

@AlexGacon yes thats why I"m afraid of merging this into the main branch. But potentially this changes will improve the performance of geonode-k8s and make the chart more the k8s way. Which gives us more flexibility with the configuration of the endpoints without manipulating nginx configs anymore.

I will try to benchmark perfomance impact of this change and will comback with results on this, later this week.

@mwallschlaeger mwallschlaeger merged commit daff4b9 into main Oct 17, 2024
3 checks passed
@mwallschlaeger mwallschlaeger deleted the issue_#177_Feature_refector_nginx_deployment_pycsw_geoserver branch October 17, 2024 07:15
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Discussion enhancement New feature or request feature new required feature refectoring refectoring
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants