CREATING AND MANAGING EXECUTION OF WORKFLOW PORTIONS USING CHAOS ACTION SETS
Techniques described herein relate to a method for deploying workflows. The method may include receiving, by a platform controller of a domain, a workflow portion and workflow constraints from a service controller of a federated controller, provisioning, by the platform controller, a set of devices in the domain, executing the workflow portion in the domain using the set of devices, applying a chaos action set on the set of devices, generating results of the chaos action set, and providing the results of the chaos action set to the service controller.
1 . A method for deploying workflows, the method comprising:
receiving, by a platform controller of a domain, a workflow portion and workflow constraints from a service controller of a federated controller;
provisioning, by the platform controller, a set of devices in the domain;
executing the workflow portion in the domain using the set of devices;
applying a chaos action set on the set of devices;
generating results of the chaos action set; and
providing the results of the chaos action set to the service controller.
2 . The method of claim 1 , further comprising:
prior to receiving the workflow portion:
receiving, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;
decomposing, by the service controller, the workflow into a plurality of workflow portions, wherein the workflow portion is one of the plurality of workflow portions;
performing, by the service controller, a search in a capabilities and constraints data construct to identify the domain in which to perform the workflow portion of the plurality of workflow portions; and
providing, by the service controller, the workflow portion and workflow constraints to the platform controller.
3 . The method of claim 2 , wherein the capabilities and constraints data construct comprises a distributed graph.
4 . The method of claim 2 , wherein the capabilities and constraints data construct is a database, and the search is performed using database queries.
5 . The method of claim 1 , further comprising:
after providing the results of the chaos action set to the service controller:
receiving, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;
decomposing, by the service controller, the workflow into a plurality of workflow portions, wherein the workflow portion is not one of the plurality of workflow portions;
performing, by the service controller, a search in a capabilities and constraints data construct to identify the domain in which to perform a second workflow portion of the plurality of workflow portions;
making a determination based on the results of the chaos action set that the domain is not capable of performing the second workflow portion;
performing a second search in the capabilities and constraints data construct to identify a second domain in which to perform the second workflow; and
based on the second search, providing, by the service controller, the second workflow portion and workflow constraints to a second platform controller of the second domain.
6 . The method of claim 1 , wherein the chaos action set comprises at least one of: removing a portion of available memory in the set of devices, applying additional processing, limiting a portion of the networking capabilities of the domain.
7 . The method of claim 1 , wherein a portion of the workflow constraints are obtained from a service level objective (SLO) corresponding to the workflow.
8 . A non-transitory computer readable medium comprising computer readable program code, which when executed by a computer processor enables the computer processor to perform a method for deploying workflows, the method comprising:
receiving, by a platform controller of a domain, a workflow portion and workflow constraints from a service controller of a federated controller;
provisioning, by the platform controller, a set of devices in the domain;
executing the workflow portion in the domain using the set of devices;
applying chaos action set on the set of devices; and
generating results of the chaos action set; and
providing the results of the chaos action set to the service controller.
9 . The non-transitory computer readable medium of claim 8 , the method further comprising:
prior to receiving the workflow portion:
receiving, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;
decomposing, by the service controller, the workflow into a plurality of workflow portions, wherein the workflow portion is one of the plurality of workflow portions;
performing, by the service controller, a search in a capabilities and constraints data construct to identify the domain in which to perform the workflow portion of the plurality of workflow portions; and
providing, by the service controller, the workflow portion and workflow constraints to the platform controller.
10 . The non-transitory computer readable medium of claim 9 , wherein the capabilities and constraints data construct comprises a distributed graph.
11 . The non-transitory computer readable medium of claim 9 , wherein the capabilities and constraints data construct is a database, and the search is performed using database queries.
12 . The non-transitory computer readable medium of claim 8 , the method further comprising:
after to providing the results of the chaos action set to the service controller:
receiving, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;
decomposing, by the service controller, the workflow into a plurality of workflow portions, wherein the workflow portion is not one of the plurality of workflow portions;
performing, by the service controller, a search in a capabilities and constraints data construct to identify the domain in which to perform a second workflow portion of the plurality of workflow portions;
making a determination based on the results of the chaos action set that the domain is not capable of performing the second workflow portion;
performing a second search in the capabilities and constraints data construct to identify a second domain in which to perform the second workflow; and
based on the second search, providing, by the service controller, the second workflow portion and workflow constraints to a second platform controller of the second domain.
13 . The non-transitory computer readable medium of claim 8 , wherein the chaos action set comprises at least one of: removing a portion of available memory in the set of devices, applying additional processing, limiting a portion of the networking capabilities of the domain.
14 . The non-transitory computer readable medium of claim 8 , wherein a portion of the workflow constraints are obtained from a service level objective (SLO) corresponding to the workflow.
15 . A system for deploying workflows, the system comprising:
a federated controller for a device ecosystem, the federated controller comprising a plurality of service controllers;
the platform controller, comprising circuitry, and configured to:
receive a workflow portion and workflow constraints from a service controller of the federated controller;
provision, by the platform controller, a set of devices in the domain to the workflow portion;
execute the workflow portion in the domain using the set of devices;
apply a chaos action set on the set of devices
generate results of the chaos action set; and
provide the results of the chaos action set to the service controller;
the service controller of the federated controller, comprising a processor and memory, and configured to:
provide the workflow portion and workflow constraints to the platform controller.
16 . The system of claim 15 , wherein the service controller is further programmed to:
prior to receiving the workflow portion:
receive, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;
decompose, by the service controller, the workflow into a plurality of workflow portions, wherein the workflow portion is one of the plurality of workflow portions;
perform a search in a capabilities and constraints data construct to identify a domain in which to perform a workflow portion of the plurality of workflow portions; and
provide the workflow portion and workflow constraints to the platform controller.
17 . The system of claim 16 , wherein the capabilities and constraints data construct comprises a distributed graph.
18 . The system of claim 16 , wherein the capabilities and constraints data construct is a database, and the search is performed using database queries.
19 . The system of claim 15 , wherein the service controller is further programmed to:
after providing the results of the chaos action set to the service controller:
receive, at a service controller of a federated controller, a request to deploy a workflow in a device ecosystem;
decompose, by the service controller, the workflow into a plurality of workflow portions, wherein the workflow portion is not one of the plurality of workflow portions;
perform, by the service controller, a search in a capabilities and constraints data construct to identify the domain in which to perform a second workflow portion of the plurality of workflow portions;
make a determination based on the results of the chaos action set that the domain is not capable of performing the second workflow portion;
perform a second search in the capabilities and constraints data construct to identify a second domain in which to perform the second workflow; and
based on the second search, provide, by the service controller, the second workflow portion and workflow constraints to a second platform controller of the second domain.
20 . The system of claim 15 , wherein the chaos action set comprises at least one of: removing a portion of available memory in the set of devices, applying additional processing, limiting a portion of the networking capabilities of the domain.