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

CP/DP Split: write configuration to agent #2999

Conversation

sjberman
Copy link
Collaborator

@sjberman sjberman commented Jan 9, 2025

This commit adds functionality to send nginx configuration to the agent. It also adds support for the single nginx Deployment to be scaled, and send configuration to all replicas. This requires tracking all Subscriptions for a particular deployment, and receiving all responses from those replicas to determine the status to write to the Gateway.

Testing: Created Gateway API resources and saw the configuration applied to the nginx deployment. Scaled nginx and saw those applied as well.

Closes #2842

@github-actions github-actions bot added documentation Improvements or additions to documentation dependencies Pull requests that update a dependency file chore Pull requests for routine tasks helm-chart Relates to helm chart labels Jan 9, 2025
internal/mode/static/handler.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/agent.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/agent.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/agent.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/broadcast/broadcast.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/broadcast/broadcast.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/broadcast/broadcast.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/broadcast/broadcast.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/command.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/broadcast/broadcast.go Outdated Show resolved Hide resolved
@sjberman sjberman force-pushed the chore/agent-nginx-config branch from 40cc29b to 10c6e3e Compare January 23, 2025 00:02
@sjberman sjberman marked this pull request as ready for review January 23, 2025 00:03
internal/mode/static/handler.go Outdated Show resolved Hide resolved
internal/mode/static/handler.go Show resolved Hide resolved
internal/mode/static/nginx/agent/agent.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/agent.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/agent.go Show resolved Hide resolved
internal/mode/static/nginx/agent/command.go Show resolved Hide resolved
internal/mode/static/nginx/agent/command.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/grpc/connections.go Outdated Show resolved Hide resolved
internal/mode/static/nginx/agent/grpc/grpc.go Show resolved Hide resolved
Copy link
Contributor

@bjee19 bjee19 left a comment

Choose a reason for hiding this comment

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

gave my best effort reviewing such complicated work, just one nit remaining, good work!

internal/mode/static/nginx/agent/grpc/connections_test.go Outdated Show resolved Hide resolved
@sjberman sjberman requested a review from kate-osborn January 28, 2025 18:50
This commit adds functionality to send nginx configuration to the agent. It also adds support for the single nginx Deployment to be scaled, and send configuration to all replicas. This requires tracking all Subscriptions for a particular deployment, and receiving all responses from those replicas to determine the status to write to the Gateway.
@sjberman sjberman force-pushed the chore/agent-nginx-config branch from 79993d9 to efd12b5 Compare January 28, 2025 19:38
@sjberman sjberman merged commit 84b4019 into nginx:change/control-data-plane-split Jan 28, 2025
17 checks passed
@sjberman sjberman deleted the chore/agent-nginx-config branch January 28, 2025 19:43
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
chore Pull requests for routine tasks dependencies Pull requests that update a dependency file documentation Improvements or additions to documentation helm-chart Relates to helm chart
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

4 participants