Skip to content

Conversation

liavweiss
Copy link

@liavweiss liavweiss commented Jul 1, 2025

closes: #324

In this PR I have created the manifest workload for the backend component.
Added 2 targets to the Makefile deploy and undeploy.

How to deploy the backed component:

cd workspaces/backend
make docker-build
make docker-push
make deploy
kubectl port-forward svc/nbv2-backend 4000:4000 -n backend-system

How to undeploy the backed component:

cd workspaces/backend
make undeploy

@andyatmiami, regarding this PR, I want to consult with you:

  1. I used type: NodePort in the service.yaml mainly because we dont have yet an nginx-ingress
    I can change it to be type: ClusterIP if needed
  2. Im not sure about the image/container names, do you think we need to chnage it to be just a backend or we can leave it as it is nbv2-backend?

@github-project-automation github-project-automation bot moved this to Needs Triage in Kubeflow Notebooks Jul 1, 2025
@google-oss-prow google-oss-prow bot added area/backend area - related to backend components area/v2 area - version - kubeflow notebooks v2 labels Jul 1, 2025
kind: Service
metadata:
name: nbv2-backend
namespace: backend-system
Copy link
Contributor

Choose a reason for hiding this comment

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

app.kubernetes.io/component: backend
app.kubernetes.io/managed-by: kustomize
name: nbv2-backend
namespace: backend-system
Copy link
Contributor

Choose a reason for hiding this comment

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

Copy link
Contributor

@andyatmiami andyatmiami left a comment

Choose a reason for hiding this comment

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

w.r.t the "directory structure" for these files - I would propose the following:

	workspaces/
	├── backend/
		├── api/
		├── cmd/
		├── internal/
		├── manifests/
		│   ├── kustomize/
		│   │   ├── base/
		│   │   ├── overlays/			# (not needed - including as merely an example of future-proofing)
		│   │   │   ├── dev/
		│   │   │   ├── staging/
		│   │   │   └── prod/
		│   │   └── options/            # (not needed - including as merely an example of future-proofing)
		│   └── helm/                   # (not needed - including as merely an example of future-proofing)
		├── openapi/
		├── Dockerfile
		├── Makefile
		├── README.md
		├── ...

I feel this aligns more (loosely) with "industry standards" and/or expectations.

livenessProbe:
httpGet:
path: /api/v1/healthcheck
port: 4000
Copy link
Contributor

Choose a reason for hiding this comment

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

@liavweiss liavweiss force-pushed the backend_deploy/#234 branch 2 times, most recently from 5135cf3 to 6d78b09 Compare July 17, 2025 12:53
@liavweiss liavweiss force-pushed the backend_deploy/#234 branch 2 times, most recently from cc9adad to 69a6f97 Compare August 4, 2025 11:53
@liavweiss
Copy link
Author

@andyatmiami, I have made all the changes, and the PR is ready for a final review.

@andyatmiami
Copy link
Contributor

/lgtm

verified these changes with help of a script I have been working on to deploy Central Dashboard in kind ... can confirm backend component is successfully deployed and services frontend requests to perform supported behavior.

@liavweiss liavweiss force-pushed the backend_deploy/#234 branch from 69a6f97 to 52a38f8 Compare August 20, 2025 10:21
@google-oss-prow google-oss-prow bot removed the lgtm label Aug 20, 2025
@andyatmiami
Copy link
Contributor

/lgtm

re-verified the end-to-end of running kubeflow/notebooks frontend and backend components off the commit in this PR and confirmed traffic properly routed.

@google-oss-prow google-oss-prow bot added the lgtm label Aug 21, 2025
@andyatmiami
Copy link
Contributor

/ok-to-test

@thesuperzapper thesuperzapper changed the title feat(ws): Define k8s workload manifest for backend component #324 feat(ws): add manifests for backend Aug 21, 2025
@thesuperzapper
Copy link
Member

Thanks @liavweiss and @andyatmiami, looks good to go for now.

Next step is automated e2e testing.

/lgtm
/approve

Copy link

[APPROVALNOTIFIER] This PR is APPROVED

This pull-request has been approved by: thesuperzapper

The full list of commands accepted by this bot can be found here.

The pull request process is described here

Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@google-oss-prow google-oss-prow bot merged commit 5a93916 into kubeflow:notebooks-v2 Aug 21, 2025
13 checks passed
@github-project-automation github-project-automation bot moved this from Needs Triage to Done in Kubeflow Notebooks Aug 21, 2025
@liavweiss liavweiss deleted the backend_deploy/#234 branch August 28, 2025 12:22
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
approved area/backend area - related to backend components area/v2 area - version - kubeflow notebooks v2 lgtm ok-to-test size/L
Projects
Status: Done
Development

Successfully merging this pull request may close these issues.

3 participants