Azure Container Service

  • Author: Ronald Fung

  • Creation Date: May 12, 2023

  • Next Modified Date: May 12, 2024


A. Introduction

Azure Container Service (ACS) is a cloud-based container management platform that allows users to deploy, manage, and scale containerized applications using popular open-source tools such as Kubernetes, Docker Swarm, and Mesosphere DC/OS. With ACS, users can easily create and manage container clusters on Microsoft Azure, eliminating the need for complex infrastructure management and reducing deployment times for containerized applications. ACS provides a flexible and scalable platform for running containerized applications in production environments, making it an ideal choice for organizations looking to modernize their application development and deployment processes.


B. How is it used at Seagen

As a biopharma research company using Microsoft Azure, you can use Azure Container Service (ACS) to deploy, manage, and scale containerized applications using popular open-source tools such as Kubernetes, Docker Swarm, and Mesosphere DC/OS. Here are some ways you can use ACS:

  1. Streamline application development: ACS allows you to easily deploy and manage containerized applications, helping to streamline your application development and deployment processes. With ACS, you can create and manage container clusters on Microsoft Azure, reducing the need for complex infrastructure management and accelerating your time-to-market.

  2. Improve application scalability: ACS provides automatic scaling capabilities that allow you to scale your container clusters up or down based on demand. This helps to ensure that resources are used efficiently and costs are kept under control.

  3. Ensure high availability: ACS provides high availability and failover capabilities that ensure that your containerized applications are always available. This includes automatic recovery from node failures and the ability to deploy containers across multiple availability zones.

  4. Secure your applications: ACS provides robust security and compliance features, including network isolation, encryption, and role-based access control. This helps to ensure that your containerized applications are secure and compliant with industry and regulatory standards.

  5. Monitor application performance: ACS provides comprehensive monitoring and logging capabilities that allow you to monitor the performance and health of your container clusters. This includes support for popular monitoring and logging tools such as Prometheus and Grafana.

  6. Integrate with other Azure services: ACS can be integrated with other Azure services such as Azure Virtual Machines, Azure Storage, and Azure Networking. This allows you to deploy and manage containerized applications across multiple Azure services and applications, improving your overall agility and efficiency.

Overall, ACS can help your biopharma research company streamline your application development and deployment processes, improve your application scalability and availability, and ensure that your containerized applications are secure and compliant with industry and regulatory standards.


C. Features

Azure Container Service (ACS) offers a range of features that make it a powerful and flexible platform for container management. Here are some of the key features of ACS:

  1. Support for multiple orchestrators: ACS supports multiple container orchestrators, including Kubernetes, Docker Swarm, and Mesosphere DC/OS. This allows users to choose the orchestrator that best fits their needs and easily switch between them as their requirements change.

  2. Integration with Azure services: ACS integrates with other Azure services such as Azure Virtual Machines, Azure Storage, and Azure Networking. This allows users to easily deploy and manage containerized applications across multiple Azure services and applications.

  3. Automatic scaling: ACS provides automatic scaling capabilities that allow users to scale their container clusters up or down based on demand. This helps to ensure that resources are used efficiently and costs are kept under control.

  4. High availability: ACS provides high availability and failover capabilities that ensure that containerized applications are always available. This includes automatic recovery from node failures and the ability to deploy containers across multiple availability zones.

  5. Security and compliance: ACS provides robust security and compliance features, including network isolation, encryption, and role-based access control. This helps to ensure that containerized applications are secure and compliant with industry and regulatory standards.

  6. Monitoring and logging: ACS provides comprehensive monitoring and logging capabilities that allow users to monitor the performance and health of their container clusters. This includes support for popular monitoring and logging tools such as Prometheus and Grafana.

Overall, ACS provides a powerful and flexible platform for container management that can help organizations streamline their application development and deployment processes and improve their overall agility and efficiency.


D. Where implemented

LeanIX


E. How it is tested

Testing Azure Container Service involves ensuring that the container service is functioning correctly, securely, and meeting the needs of all stakeholders involved in the project. Here are some steps to follow to test Azure Container Service:

  1. 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 Container Service is designed to meet the needs of all stakeholders.

  2. Develop test cases: Develop test cases that cover all aspects of Azure Container Service functionality, including container deployment, orchestration, management, and security. The test cases should be designed to meet the needs of the organization, including scalability and resilience.

  3. Conduct unit testing: Test the individual components of Azure Container Service to ensure that they are functioning correctly. This may involve using tools like Docker Compose for automated testing.

  4. Conduct integration testing: Test Azure Container Service in an integrated environment to ensure that it works correctly with other systems and applications. This may involve testing Azure Container Service with different operating systems, browsers, and devices.

  5. Conduct user acceptance testing: Test Azure Container Service 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.

  6. Automate testing: Automate testing of Azure Container Service 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.

  7. Monitor performance: Monitor the performance of Azure Container Service 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.

  8. Address issues: Address any issues that are identified during testing and make necessary changes to ensure that Azure Container Service is functioning correctly and meeting the needs of all stakeholders.

By following these steps, you can ensure that Azure Container Service is tested thoroughly and meets the needs of all stakeholders involved in the project. This can help improve the quality of Azure Container Service and ensure that it functions correctly in a production environment.


F. 2023 Roadmap

May 2023

Support for up to 30 shards for clustered Azure Cache for Redis instances

Azure Cache for Redis now supports clustered caches with upto 30 shards which means your applications can store more data and scale better with your workloads.

For more information, see Configure clustering for Azure Cache for Redis instance.

March 2023

In-place scale up and scale out for the Enterprise tiers (preview)

The Enterprise and Enterprise Flash tiers now support the ability to scale cache instances up and out without requiring downtime or data loss. Scale up and scale out actions can both occur in the same operation.

For more information, see Scale an Azure Cache for Redis instance

Support for RedisJSON in active geo-replicated caches (preview)

Cache instances using active geo-replication now support the RedisJSON module.

For more information, see Configure active geo-replication.

Flush operation for active geo-replicated caches (preview)

Caches using active geo-replication now include a built-in flush operation that can be initiated at the control plane level. Use the flush operation with your cache instead of the FLUSH ALL and FLUSH DB operations, which are blocked by design for active geo-replicated caches.

For more information, see Flush operation

Customer managed key (CMK) disk encryption (preview)

Redis data that is saved on disk can now be encrypted using customer managed keys (CMK) in the Enterprise and Enterprise Flash tiers. Using CMK adds another layer of control to the default disk encryption.

For more information, see Enable disk encryption

Connection event audit logs (preview)

Enterprise and Enterprise Flash tier caches can now log all connection, disconnection, and authentication events through diagnostic settings. Logging this information helps in security audits. You can also monitor who has access to your cache resource.

For more information, see Enabling connection audit logs


G. 2024 Roadmap

????


H. Known Issues

There are several known issues that can impact Azure Container Service. Here are some of the most common issues to be aware of:

  1. Configuration issues: Configuration issues can arise when setting up Azure Container Service. It is important to ensure that all configurations are set up correctly to avoid issues with deployment, management, and security of the solution.

  2. Performance issues: If the container service is not properly sized, it can impact performance and availability, causing issues with the speed and reliability of Azure Container Service.

  3. Integration issues: Integration issues can arise when integrating Azure Container Service with other systems and applications. It is important to ensure that Azure Container Service is designed to work seamlessly with other systems and applications to avoid integration issues.

  4. Security issues: Security is a critical concern when it comes to Azure Container Service. It is important to ensure that Azure Container Service is secured and that access to the solution is restricted to authorized personnel.

  5. Scalability issues: Scalability issues can arise when scaling Azure Container Service to meet the needs of the organization. It is important to ensure that Azure Container Service is designed to scale seamlessly and that it can handle the anticipated workload.

  6. Compatibility issues: Azure Container Service may not be compatible with all platforms, devices, or languages. It is important to ensure that Azure Container Service is compatible with the organization’s existing infrastructure before implementation.

  7. Testing issues: Testing issues can arise when testing Azure Container Service. It is important to ensure that testing is carried out thoroughly and that all aspects of Azure Container Service functionality are tested.

Overall, Azure Container Service 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 Container Service and ensure the success of your project.


[x] Reviewed by Enterprise Architecture

[x] Reviewed by Application Development

[x] Reviewed by Data Architecture