Control-M is continuously enhanced to better serve the needs of developers, business users as well as operations. Additional enhancements benefiting these groups were made in March 2019, with Control-M 19, and this article will focus on just three major features sets, among the many features delivered with this version. Let’s review them.
1. Enhanced Control-M Automation API
For customers embedding Control-M workflows in their CI/CD pipeline, Control-M Automation API continues to evolve to give them all the control and ownership they need to accelerate application delivery.
If you are part of the development team, your mandate is delivering better applications faster. Because very often business applications are made by workflows (dependent jobs and tasks that must execute in a specific order), we assume you are taking advantage of Control-M Jobs-as-Code. If so, you are embedding the orchestration of those workflows as a code artifact, as early as possible in the SDLC, and shift-left building and testing activities. But if you think about the overall SDLC process, you don’t want to just build, run and test application workflows, you also want to be able to configure the environment where those workflows are going to run.
What Control-M 19 provides on top of Jobs-as-Code capabilities is the ability to configure and secure a Control-M environment through Control-M Automation API. In a self-service and fully automated fashion, you can define authorizations for roles, users, and LDAP groups, and manage "run as" users. With that, you get more ownership over all the processes involved with the development of your applications.
- Automatic onboarding – if you are the administrator of your development team, and a new developer joins your team, you don’t need to wait to get him onboard. You can automatically and dynamically onboard the new developer to Control-M, assigning proper role or authorizations to control access to Control-M resources through Automation API.
- Manage jobs on any machine – you can manage “run as” users, so you and your developers get immediately authorized to manage and run specific jobs (e.g. Windows jobs) and orchestrate your application workflow on any machine.
When it’s time to push your application from development to production environment, either you are a developer or a DevOps engineer, you may want to automate the deployment process. Control-M Automation API deploy descriptor not only allows you to automatically move application workflows across staging environments, but you can also change application workflows properties and make them comply with the Control-M destination environment they are going to be moved into.
Control-M 19.1 enhances the deploy descriptor including any job type (built through Application Integrator) in the deployment mechanism, thus expanding the automated deployment to more application workflows.
In addition to configuration and deployment, Control-M 19 exposes provisioning services to developers, for them to consume Control-M in a dynamic way and be able to only run what they need, at the pace they need and when they need it. Now they can provision a full Control-M stack, including certain plug-ins, and perform HA related operations.
This capability is even more relevant when developers build their applications in containers, like Docker, Kubernetes, Mesos. Containers are ephemeral, meaning they can be generated, stopped, destroyed and rebuilt at high speed. The new way they introduce to deploy applications does not require a dedicated Control-M environment, but rather it requires Control-M infrastructure – as well as other objects needed for the application to run – to be immediately instantiated, as opposed to go through tickets and change management cycles.
If we think that workflows are an integral part of applications – that allow applications to immediately run and deliver value once the container is deployed – we can understand the importance to make Control-M part of the containerized approach.
Provisioning of Control-M stack enables two use cases that we call “ephemeral” and “rehydration”, inheriting names that were first used by one of our customers.
- Ephemeral – provisioning of a full Control-M stack on a server or container, for dynamic application workflow orchestration
- Rehydration – provisioning of a full Control-M stack on a server or container, replacing an older version. In this scenario our customer, who has a mandate of periodic refresh of all containers, instead of upgrading Control-M, replaces the old container with a new one, which includes a newer Control-M version.
2. Enhanced Self Service
If you are a business user, you likely want to get immediate answers related to your business application workflows, and you want to get those answers on your own. Control-M Self Service is what you need to obtain visibility, control, and responsiveness in a context you can easily understand.
Starting from Control-M 19, business users will be able to use viewpoints as part of self-service. Viewpoints further enhance the visibility, control, and comprehension, by focusing on relevant and frequently accessed information. Users can define private viewpoints by filtering on specific users, exceptions, or other workflow properties. Viewpoints can either be used ad-hoc or saved for ongoing use or used on historical data. They can be organized in hierarchy view and a new tree view:
- Hierarchy view – supports an easy understanding of how workflows are linked to the business they serve and allow zooming in and out depending on the level of details you want to see. This view helps to immediately understand what’s the impact of workflows failure on the business.
- New tree view – supports an easy understanding of dependencies between jobs and jobs status, so it’s more relevant in case you want to navigate forward and see how your job failure will impact future jobs or navigate backward and see which job first failed that determined your current job failure.
3. Enhanced Control-M Workload Change Manager
If you are part of the operations team, you are challenged for more strict control and governance on the production environment. What makes your job more challenging is the increasing agility in your organization, demanding for more developers to work in a decentralized environment and more development ownership.
How to ensure all developers to adhere to operational standards when they code and maintain their application workflows through Control-M Automation API? How to reduce failures and avoid developers and operations rework?
To help you with this challenge, Control-M Workload Change Manager has been enhanced with more automated control and enforcement through site standards. With Control-M 19 you can define more powerful and flexible site standards, and guide developers to follow them when building and releasing workflows.
This includes the following major enhancements:
- New job attributes – site standards can now be applied to all Control-M job attributes but application attributes
- Conditional site standards – you can apply restrictions on a certain job attribute conditioned on another job attribute value. For example, it’s very common to use naming convention for applications, to make them memorable or searchable. Suppose you want to align all application artifacts to the same naming convention, including application workflows and jobs. You can use conditional site standards to enforce job naming convention for jobs belonging to a specific application.
- Must have rules – you can force users to define certain values for multi-option attributes such as conditions, resources, notifications, variables, and more. For example, SQL query jobs have a database resource prerequisite. Must have rules allow you to force users to link those jobs to the database quantitative resource, so to prevent them running – and failing - if that resource is unavailable or consumed.
Control-M has evolved and continues to evolve to solve the challenges of digital business. While infrastructure, data and application change as required by the digitalization, Control-M supports those changes and simplifies the adoption of technologies and processes the digital change requires. With its adaptive approach, Control-M helps developers, operations and business users to deliver innovation at the speed the business requires.