Progressive Istio deployment¶
Progressive Istio deployment is a strategy that uses the Skaffold tool to manage the staged rollout of an Istio service mesh and its associated components^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]. This approach enables developers to deploy modules incrementally, ensuring that foundational services are established before adding observability tools or sample workloads^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md].
Implementation¶
The deployment process is modularized, allowing for the sequential activation of specific profiles using the skaffold run command^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]. This facilitates the control of deployments to local or remote clusters^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md].
The typical progression follows these steps:
- Istio Control Plane: Deploy the base components and the Istio discovery service (
istiod).^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md][Skaffold](<./skaffold.md>) run -m istiod - Ingress: Integrate an Ingress gateway to manage external traffic.^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]
[Skaffold](<./skaffold.md>) run -m [Ingress](<./ingress.md>) - Observability: Add Kiali for visualization and monitoring of the mesh.^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]
[Skaffold](<./skaffold.md>) run -m [Ingress](<./ingress.md>),kiali - Sample Workloads: Deploy the Bookinfo application to demonstrate mesh capabilities.^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]
[Skaffold](<./skaffold.md>) run -m [Ingress](<./ingress.md>),kiali,bookinfo
Development vs. Deployment Modes¶
Skaffold distinguishes between deployment and development workflows. When executing skaffold run, the tool retrieves manifests from remote charts^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]. Conversely, running skaffold dev enables hot-reloading capabilities and utilizes manifests from the current branch, facilitating faster iteration during the development cycle^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md].
Related Concepts¶
Sources¶
^[400-devops-07-monitoring-and-observability-k8s-istio-samples-cicd-skaffold-readme.md]