-
Notifications
You must be signed in to change notification settings - Fork 34
ITEP-83024 [Design] SceneScape Core Deployment Package #671
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
base: main
Are you sure you want to change the base?
Conversation
…-platform/scenescape into design_core_deployment
| ```mermaid | ||
| flowchart TB | ||
| subgraph core [SceneScape Core Application] | ||
| Postgres["PostgreSQL Database"]@{ shape: "cylinder" } | ||
| Mosquitto["Mosquitto Broker"]@{ shape: "lin-cyl" } | ||
| NTP["NTP Server"] | ||
| Manager["Manager"] | ||
| Controller["Controller"] | ||
| Autocalibration["Autocalibration"] | ||
| ClusterAnalytics["Cluster Analytics"] | ||
| Mapping["Mapping"] | ||
| end | ||
|
|
||
| subgraph sensors [Cameras and Sensors pipelines] | ||
| MediaMtx["MediaMTX"] | ||
| DLSPSRetail["DLStreamer Pipeline Server (retail)"] | ||
| DLSPSSQueuing["DLStreamer Pipeline Server (queuing)"] | ||
| Models["Models"] | ||
| end | ||
|
|
||
| subgraph data [Example Database Contents] | ||
| ExampleDB@{ shape: "odd" } | ||
| ExampleDB -->|Read| Manager | ||
| Manager -->|Populate| Postgres | ||
| end | ||
| ``` |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
There is a significant difference between Docker and Kuberenetes deployments:
- for Docker the core SceneScape services and Camera Pipelines (including models) are configured separately and can be deployed independently.
- for Kubernetes it is one of core SceneScape services (manager) that manages the configuration (UI) of Camera Pipelines and deploys them (kubeclient).
This means we will need to plan the implementation of core deployment package, so that it does impact UX negatively for Kubernetes.
For example one consequence of extracting core deployment is that models will no longer be managed via manager UI in Kubernetes (which I like as a general direction - there are other services like model_downloader that we can reuse for this purpose and integrate them with Geti).
Ideally, we add such an external model managing service integration when introducing core deployment package. Alternatively, we let users manage models on their own using pure Kubernetes volume w/o any UI, we just provide some CLI tools to install them into the volume.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
For the first part: compose and helm deployments will still be separate things, so there's no problem in adding kubeclient to the latter.
For second part, I'd need a better understanding of how models are managed to comment.
📝 Description
Adding design doc about extracting SceneScape Core deployment packages for easier installation for general use cases.
✨ Type of Change
Select the type of change your PR introduces:
🧪 Testing Scenarios
Describe how the changes were tested and how reviewers can test them too:
✅ Checklist
Before submitting the PR, ensure the following: