DevOps в гибридной среде

Azure Active Directory
Boards
Key Vault
Azure Monitor
Pipelines
База данных SQL
Веб-приложения

Во многих случаях внедрение облака Azure в качестве бизнес-решения включает в себя миграцию локальной среды.In many scenarios, the adoption of the Azure cloud as a business solution involves the migration of an on-premises environment. Обычно нецелесообразно использовать локальную среду быстрее, и во многих случаях локальная среда должна сохраняться вместе с облачной средой в течение значительного времени.It is usually not practical to deprecate the on-premises environment quickly, and in many cases the on-premises environment will need to persist alongside the cloud environment for a significant amount of time. Средства, предоставляемые в Azure, позволяют реализовать стратегию DevOps, в которой капабли управляет облачными и локальными средами.The tools provided in Azure allow for the implementation of a DevOps strategy that capably manages both cloud and on-premises environments in tandem.

Архитектура Скачайте SVG этой архитектуры.Architecture Download an SVG of this architecture.

Поток данныхData flow

  1. В качестве репозитория кода для приложения используется GitHub Enterprise.GitHub Enterprise is used as the code repository for the application
  2. Запросы на вытягивание активируют сборки CI и автоматизированное тестирование в Azure PipelinesPull Requests trigger CI builds and automated testing in Azure Pipelines
  3. Непрерывный мониторинг с Azure Monitor распространяется на конвейеры выпуска для выпусков шлюза или отката на основе данных мониторингаContinuous monitoring with Azure Monitor extends to release pipelines to gate or rollback releases based on monitoring data
  4. Выпуск на Azure Pipelines интегрирует средство terraform, которое управляет облачной и локальной инфраструктурой как кодом, подготавливая ресурсы, такие как веб-приложения Azure, виртуальные машины и базы данных в обоих расположениях.A release on Azure Pipelines integrates the Terraform tool, managing both cloud and on-premises infrastructure as code, provisioning resources such as Azure Web Apps, VMs, and databases in both locations
  5. Azure Pipelines определить непрерывную доставку (CD) в среде разработки в облаке и выпускать развертывания в локальной рабочей среде.Azure Pipelines define both Continuous Delivery (CD) to a development environment in the cloud, and release deployments to an on-premises production environment.
  6. Azure Key Vault используется для безопасного введения секретов и учетных данных в развертывание, абстракции секретов от разработчиковAzure Key Vault is used to securely inject secrets and credentials into a deployment, abstracting secrets away from developers
  7. Azure Monitor можно настроить для ведения журналов в облачной и локальной средах.Azure Monitor can be configured to log analytics from both the cloud and on-premises environments. Application Insights как часть Azure Monitor может быть подключена как к облачным, так и к локальным приложениям для мониторингаApplication Insights as a part of Azure Monitor can be connected to both cloud and on-premises applications for monitoring
  8. Azure AD в облаке можно использовать для предоставления служб удостоверений для приложения, работающего в Azure и локально.Azure AD in the cloud can be used to provide identity services for the application, both running on Azure and on-premises.

ComponentsComponents

  • Azure Boards. Используйте плату Azure для планирования работы и отслеживания хода выполнения, используя гибкие инструменты, такие как доски Канбан.Azure Boards: Use Azure Board to plan work and track its progress, using Agile tools such as Kanban boards.
  • Исходный код размещается на сайте GitHub Enterprise, где разработчики могут совместно работать в вашей организации и в сообществах с открытым исходным кодом.Source code is hosted on GitHub Enterprise, where developers can collaborate within your organization and the open source communities. GitHub Enterprise предлагает расширенные функции безопасности для выявления уязвимостей в написанном коде и зависимостях с открытым исходным кодом.GitHub Enterprise offers advanced security features to identify vulnerabilities in the code you write and in open source dependencies.
  • Azure pipelines запускает задания непрерывной интеграции и непрерывной поставки для приложения, а также создание инфраструктуры с интеграцией с terraform.Azure Pipelines runs Continuous Integration and Continuous Delivery jobs for your application, as well as the creation of your infrastructure with the integration with Terraform.
  • Azure Key Vault можно использовать для хранения сертификатов, строк подключения, токенов и других секретов.You can use Azure Key Vault to store certificates, connection strings, tokens, and other secrets. Они считываются приложением во время выполнения, поэтому они являются абстрактными от разработчиковThese are read by your application at run-time, so they're abstracted away from your developers
  • Terraform — это сторонний продукт, разработанный HashiCorp, который позволяет автоматизировать инфраструктуру в Azure, в локальной среде и в других средах.Terraform is a third-party product developed by HashiCorp that allows infrastructure automation on Azure, on-premises, and other environments
  • С помощью Azure Monitor вы сможете получать подробные сведения о доступности и производительности приложения и инфраструктуры.Using Azure Monitor lets you get insights on the availability and performance of your application and infrastructure.
  • Azure AD предоставляет службы управления удостоверениями и доступом для приложения как локально, так и в облаке.Azure AD provides identity and access management services for your application, both on-premises and on the cloud. Azure AD может синхронизироваться с локальной Active Directory, что позволяет пользователям без проблем проходить проверку подлинности везде.Azure AD can synchronize with an on-premises Active Directory to seamlessly allow your users to authenticate everywhere.
  • Веб-приложения Azure — это управляемая платформа для размещения приложений на основе Интернета в облаке.Azure Web Apps is a managed platform for hosting web-based applications in the cloud.
  • База данных SQL Azure — это управляемая служба базы данных для транзакционных приложений.Azure SQL Database is a managed database service for transactional applications.