Each strategy offers a unique approach to manage updates.
Terminating all existing instances simultaneously, and creating new instances with the updated version.
Scenario: Employ for non-critical applications or during initial development phases.
𝟮. 𝗥𝗼𝗹𝗹𝗶𝗻𝗴 𝗨𝗽𝗱𝗮𝘁𝗲:
Updating application instances takes place individually, ensuring high availability throughout the process.
𝘜𝘴𝘦 𝘤𝘢𝘴𝘦: Periodic releases
Redirecting a copy of the live traffic to the new version for testing, without impacting production users.
This deployment strategy is highly intricate and encompasses the creation of simulated services to interact with the new deployment version
Approach: Verifying the performance and behaviour of the new version in an actual environment.
The updated version is introduced to a limited number of users or servers for testing prior to wider implementation.
Approach: Evaluating the impact on a portion of users.
– Maintaining two identical environments: one with the current version (blue) and the other with the updated version (green).
– Traffic initiates with the blue environment and subsequently transitions to the configured green environment for the new version.
𝘜𝘴𝘦 𝘤𝘢𝘴𝘦: High-stake updates
𝟲. 𝗔/𝗕 𝗧𝗲𝘀𝘁𝗶𝗻𝗴:
Concurrently testing multiple versions on different users to compare performance or user experience.
𝘋𝘰𝘸𝘯𝘵𝘪𝘮𝘦: Not directly applicable
𝘜𝘴𝘦 𝘤𝘢𝘴𝘦: Optimising user experience
Please refer this link for more information — https://kubernetes.io/docs/concepts/workloads/controllers/deployment/