The documentation set for this product strives to use bias-free language. For the purposes of this documentation set, bias-free is defined as language that does not imply discrimination based on age, disability, gender, racial identity, ethnic identity, sexual orientation, socioeconomic status, and intersectionality. Exceptions may be present in the documentation due to language that is hardcoded in the user interfaces of the product software, language used based on RFP documentation, or language that is used by a referenced third-party product. Learn more about how Cisco is using Inclusive Language.
Crosswork Workflow Manager: Bringing Automation Engineering and Operations closer together
Planning and applying changes in a large network has become increasingly complex. Many factors come into play. Devices vary in capability, role, and vendor. The automation process must support the customer through the entire process. The customer change management process typically requires validation of base assumptions, such as a network scan to confirm the types and compliance of deployed devices, validation of readiness for the planned changes, and archiving the status of the network before and after the changes. All these are critical to a successful network update, requiring an automation tool that can allow a customer to automate and manage the steps. The objective: automate the process but make it low risk.
Crosswork Workflow Manager (CWM) offers a highly reliable platform for executing and managing workflow activities. The ability to recover workflows for failures is core to the system.
Crosswork Workflow Manager - at a glance
Crosswork Workflow Manager enables customers to build their own automation workflows, with capabilities to integrate to existing Operations Support Systems (OSS) and Business Support Systems (BSS) within their environment. These integrations are achieved through the use of adapters. Cisco® provides a set of baseline adapters. For custom integrations, Cisco provides a Software Development Kit (SDK) to allow customers or partners to build additional adapters to fit their environment, and the CWM XDK (extended development kit) which can generate adapters from Swagger definitions and NSO Yang models.
The system is architected on a Cloud Native infrastructure based on Kubernetes, and therefore the customer can take advantage of open source extensions to bring additional functionality.
Table 1. CWM Platform Features and Benefits
Feature |
Benefit |
Workflow management platform |
Enables execution of thousands of workflows in parallel. Running and completed workflow executions can be tracked from the CWM Job Manager. |
Graphical user interface |
The GUI provides controls for operational control of workflows, visibility to job scheduling and history, and administrative activities. |
Guided Tasks |
CWM can host operator dialogs tailored to each workflow for enabling operator input, notifications, and approvals. Such dialogs can be used to guide decisions within the workflow. |
Workflow Library |
Workflows installed by the customer are archived within the CWM Workflow Library as source code. Never lose any code. The customer can access them from there for execution. |
Workflow Tagging |
For workflows archived within the Workflow Library, customers can label (tag) their workflows with categories meaningful to their organization, allowing for searching, filtering, and sorting using these tags. |
Workflow Scheduling |
Workflows can be initiated upon Operator request, or by API call over the CWM REST interface. The customer can schedule workflows by calendar (date and time), as single events, or on a repeating schedule. |
Job Tagging |
Similar to Workflow Tagging within the Workflow Library, CWM allows the operator to define tags for characterizing workflows that have been scheduled or run as jobs. Therefore, the history of workflow jobs is afforded the same searching, filtering, and sorting capabilities that are available for archived workflows were within the workflow library. |
Swagger-enabled REST APIs for northbound integration |
The product can be controlled through REST APIs. Swagger is used to facilitate coding to those APIs. |
High availability: Platform active/standby |
The Workflow Manager supports an active/standby configuration to allow recovery from a failure of the active system. |
Management: Role-Based Access Control (RBAC) |
Allows the administrator to define security levels differentiating administration, workflow creation, and operation. |
Management: Activity logging |
CWM application logging is made available through imbedded MinIO and Grafana Loki components. Additionally, workflows can be defined to generate their own workflow-specific log entries, therefore opening up capabilities for additionally managing the workflows themselves (see below). |
Management: Performance metrics |
Metrics are made available through imbedded TimescaleDB. |
Table 2. Features for the Workflow Author
Feature |
Benefit |
Workflow Authoring compliant with Serverless Workflow specification |
Customers can build workflows to automate their operational needs. Serverless Workflow specification is used as the domain-specific language for writing such workflows. |
Child Workflows |
Workflows can be structured to reference sub-workflows. In doing so, the workflow author can reuse pre-defined and pre-tested workflows when creating new larger workflows (parent workflows). |
Form designer for Operator Dialogs |
A workflow author can use the CWM graphical design system for creating custom input and notification forms for their workflows. Hosted on the CWM system, these forms are served to the Operator during execution of the workflow job without the need for the customer to host their own external messaging system. |
Adapters |
Adapters are used within a workflow for integrating to other systems. |
Adapter development tools
●
(SDK and XDK)
|
Customers can build adapters to enable integration to their existing OSS systems. A Software Development Kit (SDK) is provided for customers to use for this. Adapters are written in Golang. The Extended Software Development Kit (XDK) is provided for customers wanting to use Swagger framework from integration targets to auto-generate adapter code. The XDK also provides the ability to read NSO Services for auto-generating custom adapters for NSO. |
Management of Secrets |
The workflow author does not need to include passwords or other sensitive login information within their workflows. CWM provides a Secrets manager so that they are defined externally from the workflow and referenced indirectly. |
Event Handling |
CWM supports event handling in the form of Kafka events, AMQP, or HTTP. CWM workflows can be defined to act as Consumers and/or Producers of events. For event consumers, the event may signal a running workflow job or may be used to initiate a workflow job. |
Compensation support |
CWM allows a workflow author to include actions to be executed at various points within their workflows to reverse segments of work which have already completed, for example when a further step encounters an error. Although commonly referred to as ‘rollbacks’, Compensations offer greater flexibility in that the compensation may take the form of other actions rather than a strict rollback and may differ depending on the point within the workflow where the condition was detected. |
Input Schema Validation |
The input data for a job is validated against its input schema definition in the workflow definition. The job will fail with an error for invalid input data. |
System Defined Utilities |
Pre-built utility functions available for general use when writing workflows: GetResourceType, FailJob, NoOp, as defined in the product manuals. |
Management: Generating log entries from within a workflow |
Workflows can be defined to generate their own workflow-specific log entries, therefore opening up capabilities for additionally managing the workflows themselves. |
Table 3. Cisco includes the following pre-built adapters with the CWM product
Adapter |
Benefit |
NSO (Cisco Network Services Orchestrator) |
Enable customers who are also licensing NSO to have their workflows leverage the capabilities of NSO for orchestrating changes to network devices |
REST (Representational State Transfer) |
For use in integrating workflows with any outside system that supports REST APIs |
PostgreSQL |
Workflows can in integrated to external PostgreSQL databases for reading or writing of persistent data as needed for each workflow use case. |
MySQL |
Workflows can in integrated to external MySQL databases for reading or writing of persistent data as needed for each workflow use case. |
SMTP (Simple Mail Transport Protocol) |
Enabling customers to send notifications in the form of emails from workflows |
CLI adapter with SSH (Secure Shell) and TELNET interfaces |
Enabling customers to send command line sequences to devices or other applications from workflows. |
Extended SDK (XDK) |
Advanced function for auto-generation of Adapters. With the XDK the customer can quickly and easily generate Adapter protos for specific applications or activities. The XDK enables building of the following: REST, based on Swagger definitions published for a wide range of applications
● Example: Netbox
● Example: Crosswork Network Automation
NSO Services, read from NSO Yang models NSO Actions, read from NSO Yang models |
Interoperability and compliance
The following table lists minimum interoperability levels.
Table 4. Interoperability
Product family |
Versions supported |
Comment |
NSO (Cisco Network Services Orchestrator) |
V6.0 |
Using NSO adapter provided by Cisco |
REST |
NA |
Using REST adapter provided by Cisco |
Table 5. Compliance
Specification |
Versions supported |
Compliance caveats |
Serverless Workflow Specification |
v0.8 |
Partially compliant. Detailed compliance statement is available upon request. |
Swagger |
v2.0 |
|
Protocol Buffers (Protobuf) |
v3 |
Partially compliant. Detailed compliance statement is available upon request. |
Kafka |
3.3.2 |
CWM can connect with outside Kafka brokers for the purpose of allowing workflows to act as providers or consumers of provisioned within CWM’s Event System. Event structure is compliant with Cloud Events release 1.0.2. |
CWM may be licensed a la carte, or as a combined offer under the Crosswork Automation Suite. CWM licenses are sold as a single Right to Use (or “RTU”) license per server on which CWM is deployed.
Crosswork Workflow Manager licenses are term-based. The duration of the term is selectable from a range of 1 to 5 years.
The customer can choose from two feature tiers:
1. Crosswork Workflow Manager Essentials Licensing provides entitlement for
◦ Workflow Engine with operational controls for managing workflows.
◦ Ability to write custom workflows with support for JSON is included.
◦ Pre-packaged adapters are included.
2. Crosswork Workflow Manager Advantage Licensing entitles use of the Router Automation Kit pre-built workflows for device onboarding, fleet upgrade, and configuration updates.
3. Advantage tier licensing also provides additional entitlement for the CWM Adapter Software Development Kit, enabling customer to build their own custom adapters for integration specific to their needs. The Advantage license tier includes all the functionality of the Essentials tier as well.
An upgrade license is available for customers wanting to enhance their entitlement from Essentials to Advantage.
All licensing is subject to management through Cisco Smart Licensing.
Monitoring your CWM deployment
In addition to the built-in capabilities for monitoring Crosswork Workflow Manager (CWM) locally, the following infrastructure components are included to allow interface to external monitoring:
Table 6. Monitoring
Component |
Version |
Role |
Timescale DB |
2.9.1-pg15 |
Metrics storage |
MinIO |
2022-12-12T19-27-27Z |
Log storage |
Grafana Loki |
2.6.1 |
Log aggregation |
Through the use of the interfaces provided by the above components, customers can integrate to their management systems via Prometheus and Grafana, for visual representation, customization of management views, and alarm generation.
Cisco offers Solution Support for Service Providers for Crosswork Workflow Manager, based on the tier of services purchased, for the term of that license. This support covers the CWM application, and the included interoperability adapters referenced earlier in this document. This support is provided through Cisco TAC. Except as may be provided in Cisco’s Documentation, sample workflows or other code are provided for convenience and informational purposes only, with no support of any kind.
For support on other components, such as, but not limited to, Linux, Hypervisor, or hardware, the customer must obtain entitlement and support licenses from the respective vendors.
The Software is covered by Cisco’s 90-Day Limited Software Warranty.
Cisco Business Critical Services for the Crosswork Workflow Manager
Optionally, a customer may purchase a Cisco CX Business Critical Services contract offering comprehensive services to help customers deploy Crosswork Workflow Manager, implement and customize automation workflows, integrate with existing OSS and BSS systems, and continuously optimize the solution, all to realize and accelerate the customer’s business outcomes.
As part of CX Business Critical Services CX will deliver lifecycle services leveraging pre-built workflow packages and integrations to help customers achieve faster go-to-market and address commonly encountered business needs.
For more information, please visit https://www.cisco.com/go/services.
For more information about Crosswork Workflow Manager, please visit www.cisco.com/go/cwm.
New or revised topic |
Described in |
Date |
Expanded licensing options |
September 14, 2023 |
|
CWM 1.1 features added |
Throughout |
January 28, 2024 |
CWM 1.2 features added |
Throughout |
September 30, 2024 |