Skip to main content
In this lesson, we explore the declarative approach to managing Kubernetes resources in Azure Kubernetes Service (AKS). By adopting declarative configurations, you define what your infrastructure should look like, and Kubernetes ensures the cluster’s actual state matches your desired state. Azure Kubernetes Service supports two primary CI/CD workflow patterns:

Push-based Workflow

With a push-based approach, your CI server (Azure DevOps, GitHub Actions, etc.) listens for changes in your application repository. When you commit or merge code, the pipeline:
Push-based pipelines are straightforward and give you direct control over each deployment step. They work well if you prefer an explicit trigger model.

Pull-based Workflow (GitOps)

In a GitOps (pull-based) model, you store your Kubernetes manifests alongside application code or in a dedicated Git repo. A GitOps operator (Flux, Argo CD) watches the repo and applies changes automatically:
GitOps ensures that your cluster’s live state automatically converges with the declared Git state. This model enhances auditability, reversibility, and compliance.
Effective observability is critical for running production workloads on AKS. Azure provides:
  • Azure Monitor for Containers: Collects metrics, logs, and health data for nodes and pods.
  • Azure Log Analytics: Enables querying of container logs using Kusto Query Language (KQL).
  • Application Insights: Offers distributed tracing, exception tracking, and performance monitoring for your applications.
Refer to the following resources for more details:

Watch Video