-
Notifications
You must be signed in to change notification settings - Fork 9
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
Review the GSoSD Arrowhead Core Systems 5.0 Draft #54
Comments
OK
Usage of policies is appreciated - do we have resources to implement in v5?
OK
|
Page 1: The title: Abstract: Section 1:
Section 2.3, System-Service Matrix. Section 8, References. |
My comments to the Eclipse arrowhead Generic SoSD v5.0 document. I realise that many of my below comments are related to the above comment. Thus I limit Amy current review to a few sections of the current GSoSD v5.0 draft. Sec 1 Terminology: SOA -> microservice architecture. An introductory explanation of the similarities between SOA and microservice architecture is necessary. The local cloud definition should be more description and precise. Providing the objective and a conceptual description. The necessity for inter-local cloud service exchanges need to described. Sec 2. A more precise definition of a microsystem is needed. The self contained capability need to be defined. See definition in the Arrowhead book. Sec 2.1.1 Information about a microservice address, understood protocols, encodings, data models etc. need to be mandated. Registration time to live need to be defined. Re-registration of services by the producing microsystem before x% of the end registration life need to be mandated. Thus automated cleaning end of life microservice in the ServiceRegistry is a needed property. Monitoring of registered microservice responsiveness: Can be mandated to the the ServiceRegistry or a separate Monitoring syport microsystem, Sec 2.1.2 Cashing strategies for security policies/rules should be more precisely described e.g. X number of usage, usage for a defined time period, but not limited to. Sec 2.1.3 The description seams more like a v2 or maybe a v3 of Eclipse Arrowhead. Again the thinking of v4 need to reflected and any down grading should be allowed bu t not recommended! Sec 2.2 We should continue to have the core microsystem as the basic starting point. Using one or two of the core microsystem need to be treated as special cases and can be described in e.g. appendix. The booth-strapping description should reflect that v4 approach with the capabilities of the on-boarding procedure and associated support systems. Down grading should be allowed. Sec 2.3 The service - system matrix should be replaced by SysML models of the core Microsystems showing actual implemented services and protocols and indicating potential protocols. Sec 3 not considered so far. Sec 4. |
What do you mean by default properties and degrading? Are you saying that Arrowhead 5.0 must be backwards-compatible, or do you mean that we should not provide fewer features than Arrowhead 4.x? If it is the latter, I don't really see a significant risk of that. My own impression is that the features of Arrowhead 4.x are good. It is the way they are realized that can be improved upon quite a lot, in terms of how services are designed, how messages are sent, and so on. I thought that increasing the major version to 5 was meant to signal how backwards-compatibility with 4.x is not going to be a requirement.
Yes, this has been voiced several times already. My impression is that most of us believe this should go into a separate document, however.
We need to settle on an architectural definition of Arrowhead Local Cloud. I believe we can use the Arrowhead 4.x definition more or less as-is. There may be some less major details that need be discussed, such as what to call a local cloud that cannot connect to the Internet at all, and so on.
We have already discussed this quite a lot. I'm not commenting on it here.
This is a good point. We may need some kind of architectural definition of system in this document.
If we decide to include this (which I would fully support), I would likely be apt to mention already in this document.
I agree that this is important, but should it go into the GSoSD? Should there be a Generic SysD for each of the Core/Support systems? (I've made a note about system naming in my summary.)
Same as above.
Same as above.
Same as above.
Same as above.
I believe that monitoring should be handled, at least architecturally, as a separate system concern.
Yes.
Noted.
The GSoSD is not complete and there is no plan, as far as I'm aware, to remove any features. That being said, the Orchestrator does many things today, and I believe we need to make it much more apparent why and when its different modes of operation are useful. My gut feeling is that we may have to separate it into two systems to land at a desirable level of separation of concerns.
From a pedagogical standpoint it is convenient to consider them without each other. We could make it into an architectural requirement for all three of them to be present. We could even talk about things such as "Core Compliance" (all core systems used), "Partial Core Compliance" (at least on core systems used) and so on, in this document.
When writing this, we decided that bootstrapping and on-boarding are two different things, and that the latter should be addressed in the "Support Systems" document together with the On-Boarding Controller et al. Bootstrapping is the process through which a local cloud forms after a cold start, while on-boarding is the process through which an individual system joins a local cloud. What do you mean by "downgrading"?
This is an interesting proposal. Could you be more specific regarding what details you think should be in the model?
I agree that there is room for improvements to this section. I'm not sure it should be in this document at all. Perhaps we can resume this discussion when we know where the section goes? |
This is my summary of all review comments I've found for this document. Some of them come from our internal discussions at Sinetiq and the rest of them are gathered from this GitHub project's issues. @jerkerdelsing @jenseliasson @palvarga @PerOlofsson-Sinetiq @henrikbylund @MatsBJohansson Review SummaryGeneral
Section 1. Overview
Section 2. Systems
Section 2.1. System Descriptions
Section 2.1.1. Service Registry
Section 2.1.2 Authorization System
Section 2.1.3 Orchestration System
Section 2 Local Cloud Bootstrapping
Section 2.3 The System-Service Matrix
Section 3. Use-cases
Section 3.2. Authorization
Section 3.3 Orchestration
Section 3.4 Authorization and Orchestration
Section 4. Control and Data Planes
Section 6. Non-Functional Requirements
Section 7. Unresolved Issues
Section 8. References
|
@jerkerdelsing @jenseliasson @palvarga @PerOlofsson-Sinetiq @henrikbylund @MatsBJohansson As you all can see, this document sparked quite a lot of discussion. I'm of the opinion that before we continue addressing the concerns that have been raised about it, we first agree on a plan for what reference documents this GSoSD should be split up into and complemented with. We could chose to follow ISO 42010. It would require that someone more familiar with the standard guides us through it. @henrikbylund? Another thought is to follow the reasoning on the roadmap meeting where we discussed the Concepts Reference and create the "Assumptions", "Values" and "Practices" documents mentioned there. |
Review Reaction Plan
The following plan has been ratified by the project:
I consider the following to be ratified and to need no further discussion:
|
I disagree with this. The orchestrator can't do any useful things without an existing Service Registry. |
By "be[ing] useful on its own", I'm not saying that the orchestrator has to work without a service registry, just that it should not depend on there being any particular type of service registry. This means that you should be able to use a regular DNS server as service registry, if you wanted to. |
The orchestrator can work with any SR as long as that SR implements the ServiceDiscovery SD and provide that on an interface (which is documented in an IDD) that the orchestrator understands. |
The outcome of this discussion is continuing in #63. I'm closing this issue. |
The Arrowhead community is admonished to read and review the latest GSoSD Arrowhead Core Systems 5.0 draft, available here:
https://github.com/eclipse-arrowhead/roadmap/tree/main/5.0%20Draft/GSoSD.
Please read the document and then create Issues with any comments you may have in this repository. Please start the titles of your issues with
GSoSD Arrowhead Core Systems 5.0:
. Alternatively, you may elect to post your comments in this issue.The text was updated successfully, but these errors were encountered: