[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: RE: Differentiating TOSCA from HEAT
Sorry too quick â I used a link to my own cache of the Intent article â here is an official one: With Damien and Chris as authors, I assume everyone is familiar with it, but I donât think we discussed it while I was a member. Peter From: Bruun, Peter Michael (CMS RnD Orchestration)
I definitely think that those 4 concepts are quite different. -
Declarative orchestration This is an
intrinsic feature of a language, stating that the language declares âwhatâ should exist (or not exist). The declarative language should not spell out not âhowâ it is made. It is still declarative if the language has a way to include the
means to make it exist â artifacts, interfaces. -
Cloud-native orchestration This is, as I understood Talâs slides, a
subset of orchestration problems, where the systems under orchestration satisfy a set of cloud-native constraints, that allows the orchestrator to have no concept of sequencing of actions. If just one of the systems does not satisfy those constraints,
then cloud-native orchestration is not sufficient to solve the problem. Tal â please provide a better definition. The assumption is that all systems in the world ought to comply with the cloud-native principles, and those that donât should either be fixed or discarded as outdated technology
alongside the Steam Roller and the Edison Phonograph. -
Intent-based orchestration On this subject we have this:
https://github.hpe.com/hpsd/hpsp/files/18603/Tamburri2019_Article_TOSCA_basedIntentModellingGoal.pdf I agree 100% with this definition of intent: Intent modelling Intent modelling entails modelling infrastructure blueprints by specifying a highest-level goal to be satisfied, regardless of how sub-level intents or goals are satisfied. To me expressing intent is to say âI need Firewallingâ instead of âI need a Firewallâ. Or âI need Load-balancingâ not âI need a Load Balancerâ. There are clearly cases where TOSCA can do this if the intent-decomposition is expressible as substitutions, but I also see intents and realizations of intent where TOSCA would
force the designer to manually perform the decomposition of intent, and so the resulting TOSCA template would be
derived from the original intent, but it would no longer express the original intent as an object in its own right. Notice that a program written in C is similarly
derived from some original intent, but the intent itself is no longer explicitly present in-language. Clearly, C is not an intent-based language, and the fact that you can define and implement a function that expresses an intent doesnât make it so. It
takes more to be Intent based than âbeing able to implement intentâ. So unless we can prove that TOSCA with substitutions can explicitly express all possible intent, then I am not convinced that TOSCA is intent based. Of course a firewalling intent could be implemented as an actual firewall, but I remember when OpenFlow was in fashion, and you can express a simple firewalling or load-balancing
intent as a set of OpenFlow rules. Those rules are not âa Nodeâ, they get deployed on a potentially variable number of switches. So where would I put this in my TOSCA template? You could solve this by pushing intent to Policies â so add in your template a âFirewallingâ Policy, and Firewalling happens. But the implementation of that intent would have
to be hard-coded in the orchestrator, and so the Policy is just a name for a hard-coded functionality, it is not a language for defining the firewalling intent. -
Desired state orchestration This is a property of an orchestrator, where the way it knows what to do is expressed in terms of a desired state of the systems under orchestration. In the case of TOSCA service
creation, the âdesired stateâ can be expressed as the pair of a TOSCA specification and a set of input values. For TOSCA service destruction, I am not sure how we express the desired state of ânow that service should no longer existâ, because I am still not
sure how we identify a previously created service. Basically, without having defined identifiers for deployed services, the concept of âthat serviceâ with TOSCA eludes me. In the Intent paper, referenced above, there is the distinction between Goal and Intent, and I think Goal is the same as âDesired Stateâ. A TOSCA template is not a Goal, but
a Goal can be created by combining a template with a specific input and an âentry pointâ (deploy, undeploy, update/modify, upgrade, â). An Orchestrator that does that can be said to be doing âdesired state orchestrationâ. From: Chris Lauwers [mailto:lauwers@ubicity.com]
Cloud native orchestration I think we should wait for Talâs input. I am no expert in that. I just gave it a shot. Iâd love to get some closure on this. Iâd like to present the following (likely controversial) opinion: for users of Orchestration, the following concepts are equivalent and
mean the same thing: -
Declarative orchestration -
Cloud-native orchestration -
Intent-based orchestration -
Desired state orchestration If you disagree, please let me know why and how these concepts are different. Thanks, Chris |
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]