Automation
Author: Ronald Fung
Creation Date: May 9, 2023
Next Modified Date: May 9, 2024
A. Introduction
Automation
gives you complete control during deployment, operations, and decommissioning of enterprise workloads and resources. Process Automation
Process Automation
in Azure Automation
allows you to automate frequent, time-consuming, and error-prone management tasks. This service helps you focus on work that adds business value.
Automation is needed in three broad areas of cloud operations:
Deploy and manage - Deliver repeatable and consistent infrastructure as code.
Response - Create event-based automation to diagnose and resolve issues.
Orchestrate - Orchestrate and integrate your automation with other Azure or third party services and products.
B. How is it used at Seagen
As a biopharma research company using Microsoft Azure, you can use Azure Automation to automate manual, repetitive, and time-consuming tasks. Here are some ways you can use Azure Automation:
Runbook automation: Azure Automation provides runbook automation, which allows you to create and run PowerShell workflows, Python scripts, and graphical runbooks. This can help you automate tasks such as provisioning resources, deploying applications, and managing configurations.
Configuration management: Azure Automation provides configuration management capabilities, which allow you to manage the configuration of your Azure resources. You can define configurations for your virtual machines, web apps, and other resources and ensure that they stay in compliance with your policies and standards.
Scheduled automation: Azure Automation allows you to schedule the execution of your runbooks, scripts, and workflows. This can help you automate tasks such as backups, updates, and maintenance.
Integration with other Azure services: Azure Automation can be integrated with other Azure services such as Azure Monitor, Azure Log Analytics, and Azure Event Grid. This allows you to easily monitor and manage your Azure resources from a single dashboard.
Source control integration: Azure Automation provides source control integration with services such as GitHub and Azure Repos. This allows you to manage your automation scripts and runbooks using source control and track changes over time.
Overall, Azure Automation can help your biopharma research company automate manual, repetitive, and time-consuming tasks. With runbook automation, configuration management, scheduled automation, and integration with other Azure services, Azure Automation can help you improve your operational efficiency and reduce the risk of human error.
C. Features
Azure Automation delivers a cloud-based automation, operating system updates, and configuration service that supports consistent management across your Azure and non-Azure environments. It includes process automation, configuration management, update management, shared capabilities, and heterogeneous features.
There are several Azure services that can deliver the above requirements, where each service includes a set of capabilities and serves a role as a programmable platform to build cloud solutions. For example, Azure Bicep and Resource Manager provide a language to develop repeatable and consistent deployment templates for Azure resources. Azure Automation can process that template to deploy an Azure resource and then process a set of post-deployment configuration tasks.
Automation gives you complete control during deployment, operations, and decommissioning of enterprise workloads and resources.
D. Where implemented
E. How it is tested
Testing Azure Automation involves ensuring that the automation workflows, runbooks, and jobs are functioning correctly, securely, and meeting the needs of all stakeholders involved in the project. Here are some steps to follow to test Azure Automation:
Define the scope and requirements: Define the scope of the project and the requirements of all stakeholders involved in the project. This will help ensure that Azure Automation is designed to meet the needs of all stakeholders.
Develop test cases: Develop test cases that cover all aspects of Azure Automation functionality, including runbook creation, workflow development, and job scheduling. The test cases should be designed to meet the needs of the organization, including scalability and resilience.
Conduct unit testing: Test the individual components of Azure Automation to ensure that they are functioning correctly. This may involve using tools like PowerShell or Azure CLI for automated testing.
Conduct integration testing: Test Azure Automation in an integrated environment to ensure that it works correctly with other systems and applications. This may involve testing Azure Automation with different operating systems, browsers, and devices.
Conduct user acceptance testing: Test Azure Automation with end-users to ensure that it meets their needs and is easy to use. This may involve conducting surveys, interviews, or focus groups to gather feedback from users.
Automate testing: Automate testing of Azure Automation to ensure that it is functioning correctly and meeting the needs of all stakeholders. This may involve using tools like Azure DevOps to set up automated testing pipelines.
Monitor performance: Monitor the performance of Azure Automation in production to ensure that it is meeting the needs of all stakeholders. This may involve setting up monitoring tools, such as Azure Monitor, to track usage and identify performance issues.
Address issues: Address any issues that are identified during testing and make necessary changes to ensure that Azure Automation is functioning correctly and meeting the needs of all stakeholders.
By following these steps, you can ensure that Azure Automation is tested thoroughly and meets the needs of all stakeholders involved in the project. This can help improve the quality of Azure Automation and ensure that it functions correctly in a production environment.
F. 2023 Roadmap
????
G. 2024 Roadmap
????
H. Known Issues
There are several known issues that can impact Azure Automation. Here are some of the most common issues to be aware of:
Runbook authoring issues: Runbook authoring is a critical component of Azure Automation, and issues with runbook authoring can impact the accuracy of automation workflows. It is important to ensure that runbook authoring is working correctly and that all runbooks are properly tested.
Integration issues: Integration issues can arise when integrating Azure Automation with other systems and applications. It is important to ensure that Azure Automation is designed to work seamlessly with other systems and applications to avoid integration issues.
Security issues: Security is a critical concern when it comes to Azure Automation. It is important to ensure that all data is encrypted in transit and at rest, and that access to Azure Automation is restricted to authorized personnel.
Job scheduling issues: Job scheduling is a critical component of Azure Automation, and misconfiguration can cause issues with job scheduling and impact the ability to automate tasks in a timely manner. It is important to ensure that job scheduling is configured correctly and optimized to meet the needs of your environment.
Performance issues: Performance is a critical concern when it comes to Azure Automation. If the system is not properly sized, it can impact performance and availability, causing issues with automation workflows.
Capacity issues: Capacity planning is a critical concern when it comes to Azure Automation. If the system is not properly sized, it can impact performance and availability, causing issues with automation workflows.
Overall, Azure Automation requires careful planning and management to ensure that it is functioning correctly and meeting the needs of all stakeholders involved in the project. By being aware of these known issues and taking steps to address them, you can improve the quality of Azure Automation and ensure the success of your project.
[x] Reviewed by Enterprise Architecture
[x] Reviewed by Application Development
[x] Reviewed by Data Architecture