Comments (4)
@Artonus I think you had some notes and ideas to approach the switch over from the coding and design perspective. Can you upload them here? I think we can attach documentation or useful links to the issue ticket. Thanks!
from middleware.
Attached is the image presenting the conceptual idea behind the switchover
- Each Middleware deployed in the Edge or Cloud has its Orchestrator responsible only for the deployment in its local k8s environment.
- To decide which Middleware to connect to, ActionServer will ask Central API and will test the connectivity to choose the best one based on some parameters.
- When the current Edge is unavailable, Action Server will request switchover (or when robot changes its location and new Edge is closer than the previous one)
- Task planning will decide the placement of the resource and will send the request to other Middleware instances to deploy specific resource.
from middleware.
The Edge switchover should be handled in multiple steps:
- Provide a MessageBus to send the requests to other instances of the Middleware
- Working on a single location, change the connectivity between the TaskPlanner and Orchestrator to use MessageBus
- Send the deployment requests to the single (local) Edge
- Plan for work in a different location and send the request to the new Edge to deploy the desired resources
- Define a way in which the Robot will request the switchover (possible connection with #51)
- Specify a path in the Middleware to request the change to the specified location
- Send the requests to deploy the desired resources from one Edge to another Edge through MessageBus
- Upon receiving the confirmation that the request has been successfully processed and the service has been redeployed to a new location, delete the service from the current site (the action plan of the Robot should be updated automatically with the new address)
- Inform the Robot that the switchover process has been completed and that it can use the new services
from middleware.
Reopening as it has to be continued in the release v0.3
from middleware.
Related Issues (20)
- Middleware - Relay NetApp configuration HOT 1
- Semantic map: translation from ROS 1 to ROS 2 HOT 3
- Semantic map: Create ros node that publises colors depending on rsrp and rsr1 values from influxdb HOT 1
- Remove redundant code generation references
- Middleware - ROS1 communication support
- Non-ROS Reference Net-App tutorial
- Resource and task planning for cloud base robotics based on 5G Era middleware
- ROS wiki update
- RedisGraphDotNet.Client dependency HOT 1
- Inter NetApp Relay HOT 1
- Middleware tag build workflows
- The policies are predefined in the system. No Policies deletion or adding new policies can be executed
- Policies should only have a small set of properties to be configurable by the end-user (preferably administrator)
- CentralApi manages the online status of `Clouds` and `Edges`
- CentralApi keeps the information about the connectivity between the robot and the Location on the graph
- Middleware locations will send the heartbeat to the CentralApi to keep the `Online` Status
- Each Cloud, Edge and Robot will need to have its own API Key
- API calls to the CentralApi will have to be authenticated with the API keys.
- (Proposal) merge the semantic definition of `Cloud` and `Edge` together into a new `Location` entity
- Redis Graph End of Life HOT 1
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from middleware.