03 āļž.āļĒ. 2565·āļ­āđˆāļēāļ™ 1 āļ™āļēāļ—āļĩ

āļāļēāļĢāđƒāļŠāđ‰ Blue-Green Deployment āđƒāļ™ Kubernetes: āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđāļĨāļ°āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒ

āļŠāļģāļĢāļ§āļˆāļĢāļđāļ›āđāļšāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§ āļ‚āđ‰āļ­āļ”āļĩ āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ™āļģāļ§āļīāļ˜āļĩāļ™āļĩāđ‰āđ„āļ›āđƒāļŠāđ‰āđƒāļ™āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ Kubernetes

āļāļēāļĢāđƒāļŠāđ‰ Blue-Green Deployment āđƒāļ™ Kubernetes: āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđāļĨāļ°āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒ

āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™āđ€āļ›āđ‡āļ™āļāļĨāļĒāļļāļ—āļ˜āđŒāļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ—āļĩāđˆāđƒāļŠāđ‰āļāļąāļ™āļ­āļĒāđˆāļēāļ‡āđāļžāļĢāđˆāļŦāļĨāļēāļĒ āļĄāļąāļ™āđ€āļāļĩāđˆāļĒāļ§āļ‚āđ‰āļ­āļ‡āļāļąāļšāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļ‚āļ­āļ‡āļŪāļēāļĢāđŒāļ”āđāļ§āļĢāđŒāļ—āļĩāđˆāđ€āļŦāļĄāļ·āļ­āļ™āļāļąāļ™āļŠāļ­āļ‡āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŦāļ™āļķāđˆāļ‡āļ—āļĩāđˆāđƒāļŠāđ‰āļ‡āļēāļ™āļ­āļĒāļđāđˆāđāļĨāļ°āđƒāļŦāđ‰āļšāļĢāļīāļāļēāļĢāļœāļđāđ‰āđƒāļŠāđ‰ āđƒāļ™āļ‚āļ“āļ°āļ—āļĩāđˆāļ­āļĩāļāļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŦāļ™āļķāđˆāļ‡āļĒāļąāļ‡āļ„āļ‡āļ­āļĒāļđāđˆāđƒāļ™āđ‚āļŦāļĄāļ”āļŠāđāļ•āļ™āļ”āđŒāļšāļēāļĒ āļ§āļīāļ˜āļĩāļāļēāļĢāļ™āļĩāđ‰āļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļāļēāļĢāļˆāļąāļ”āļāļēāļĢāļāļēāļĢāļ­āļąāļ›āđ€āļ”āļ•āļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāđ€āļ›āđ‡āļ™āđ„āļ›āļ­āļĒāđˆāļēāļ‡āļĢāļēāļšāļĢāļ·āđˆāļ™āđāļĨāļ°āļĨāļ”āļ„āļ§āļēāļĄāđ€āļŠāļĩāđˆāļĒāļ‡āļ‚āļ­āļ‡āļāļēāļĢāļŦāļĒāļļāļ”āļ—āļģāļ‡āļēāļ™āļ‚āļ­āļ‡āļĢāļ°āļšāļš

āđ‚āļ„āđ‰āļ”āđƒāļŦāļĄāđˆāļˆāļ°āđ€āļ›āļīāļ”āļ•āļąāļ§āļ„āļĢāļąāđ‰āļ‡āđāļĢāļāđƒāļ™āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļāļēāļĢāļˆāļąāļ”āđ€āļ•āļĢāļĩāļĒāļĄ āļ‹āļķāđˆāļ‡āļœāđˆāļēāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ­āļĒāđˆāļēāļ‡āđ€āļ‚āđ‰āļĄāļ‡āļ§āļ” āđ€āļĄāļ·āđˆāļ­āļ—āļĩāļĄāļ­āļ™āļļāļĄāļąāļ•āļīāļĢāļŦāļąāļŠāļ—āļĩāđˆāļ­āļąāļ›āđ€āļ”āļ•āđāļĨāđ‰āļ§ āļāļēāļĢāļāļģāļŦāļ™āļ”āļ„āđˆāļēāđ€āļĢāļēāđ€āļ•āļ­āļĢāđŒāļˆāļ°āļ–āļđāļāļ›āļĢāļąāļšāđ€āļžāļ·āđˆāļ­āđ€āļ›āļĨāļĩāđˆāļĒāļ™āļ—āļĢāļēāļŸāļŸāļīāļāļ‚āļ­āļ‡āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āđ€āļ›āđ‡āļ™āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļ—āļĩāđˆāđƒāļŠāđ‰āļ‡āļēāļ™āļˆāļĢāļīāļ‡ āļŦāļēāļāļĄāļĩāļ›āļąāļāļŦāļēāđƒāļ”āđ† āđ€āļāļīāļ”āļ‚āļķāđ‰āļ™ āļ›āļąāļāļŦāļēāļ™āļąāđ‰āļ™āļˆāļ°āļĒāđ‰āļ­āļ™āļāļĨāļąāļšāđ„āļ›āļĒāļąāļ‡āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļāļēāļĢāđƒāļŠāđ‰āļ‡āļēāļ™āļˆāļĢāļīāļ‡āļāđˆāļ­āļ™āļŦāļ™āđ‰āļēāđ€āļžāļ·āđˆāļ­āđƒāļŠāđ‰āļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ”āļąāđ‰āļ‡āđ€āļ”āļīāļĄāļ•āđˆāļ­āđ„āļ›

āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ—āļĩāđˆāļ™āđˆāļēāļŠāļąāļ‡āđ€āļāļ•āļšāļēāļ‡āļ›āļĢāļ°āļāļēāļĢāļ‚āļ­āļ‡āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§ āđ„āļ”āđ‰āđāļāđˆ:

Kubernetes āļāļģāļĨāļąāļ‡āđ„āļ”āđ‰āļĢāļąāļšāļ„āļ§āļēāļĄāļ™āļīāļĒāļĄāđ€āļžāļīāđˆāļĄāļ‚āļķāđ‰āļ™āđƒāļ™āļāļēāļ™āļ°āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļžāļąāļ’āļ™āļē āļāļēāļĢāļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļāļēāļĢāļœāļĨāļīāļ• āđāļĄāđ‰āļ§āđˆāļēāļˆāļ°āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ‡āđˆāļēāļĒāļ‚āļķāđ‰āļ™ āđāļ•āđˆ Kubernetes āļāđ‡āđ„āļĄāđˆāđ„āļ”āđ‰āļ™āļģāđ€āļŠāļ™āļ­āļŸāļąāļ‡āļāđŒāļŠāļąāļ™āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļšāļšāđ€āļ™āļ—āļĩāļŸāļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§ āđāļ•āđˆāļˆāļ°āļˆāļąāļ”āđ€āļ•āļĢāļĩāļĒāļĄāļ­āļ­āļšāđ€āļˆāļāļ•āđŒāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ—āļĩāđˆāđ€āļ›āļīāļ”āđƒāļŠāđ‰āļ‡āļēāļ™āļāļēāļĢāļ­āļąāļ›āđ€āļ”āļ•āđāļšāļšāļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡ āļ‹āļķāđˆāļ‡āļŠāļēāļĄāļēāļĢāļ–āđāļ—āļ™āļ—āļĩāđˆāļžāđ‡āļ­āļ”āļ‚āļ­āļ‡āđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ”āđ‰āļ§āļĒāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļĨāđˆāļēāļŠāļļāļ”āđ„āļ”āđ‰āđƒāļ™āļĢāļ°āļ”āļąāļšāļŦāļ™āļķāđˆāļ‡āđ‚āļ”āļĒāđ„āļĄāđˆāļ•āđ‰āļ­āļ‡āļŦāļĒāļļāļ”āļ—āļģāļ‡āļēāļ™

āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļšāļšāļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āļĄāļĩāļ‚āđ‰āļ­āļˆāļģāļāļąāļ”āļšāļēāļ‡āļ›āļĢāļ°āļāļēāļĢ āļžāļ§āļāđ€āļ‚āļēāļŠāļēāļĄāļēāļĢāļ–āļ—āļģāđƒāļŦāđ‰āļāļēāļĢāļĒāđ‰āļ­āļ™āļāļĨāļąāļšāļĄāļĩāļ„āļ§āļēāļĄāļ—āđ‰āļēāļ—āļēāļĒ āđāļĨāļ°āļ­āļēāļˆāļ•āđ‰āļ­āļ‡āļĄāļĩāļāļēāļĢāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ„āļ§āļēāļĄāļŠāļĄāļšāļđāļĢāļ“āđŒāļ‚āļ­āļ‡ Kubernetes āđ€āļžāļ·āđˆāļ­āļ›āļĢāļ°āđ€āļĄāļīāļ™āļŠāļ–āļēāļ™āļ°āļ‚āļ­āļ‡āļžāđ‡āļ­āļ”āļ āļēāļĒāđƒāļ™āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰ āļ™āļ­āļāļˆāļēāļāļ™āļĩāđ‰ āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļšāļšāļ•āđˆāļ­āđ€āļ™āļ·āđˆāļ­āļ‡āļ­āļēāļˆāđƒāļŠāđ‰āđ€āļ§āļĨāļēāļ™āļēāļ™āļāļ§āđˆāļēāđ€āļĄāļ·āđˆāļ­āđ€āļ—āļĩāļĒāļšāļāļąāļšāļĢāļđāļ›āđāļšāļšāļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§ āļ‹āļķāđˆāļ‡āļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđ„āļ›āđƒāļŠāđ‰āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆāļˆāļ°āđ€āļāļīāļ”āļ‚āļķāđ‰āļ™āļ—āļąāļ™āļ—āļĩ

āļŦāļēāļāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™āļāļąāļš Kubernetes āļ­āļĒāđˆāļēāļ‡āļĄāļĩāļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļž āđƒāļŦāđ‰āļžāļīāļˆāļēāļĢāļ“āļēāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļ•āđˆāļ­āđ„āļ›āļ™āļĩāđ‰:

Argo Rollouts āđ€āļ›āđ‡āļ™āļŠāļļāļ”āđ‚āļ­āđ€āļžāđˆāļ™āļ‹āļ­āļĢāđŒāļŠāļ‚āļ­āļ‡āļ•āļąāļ§āļ„āļ§āļšāļ„āļļāļĄ Kubernetes āđāļĨāļ° Custom Resource Definitions (CRD) āļ—āļĩāđˆāđ€āļžāļīāđˆāļĄāļ„āļļāļ“āļŠāļĄāļšāļąāļ•āļīāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ‚āļąāđ‰āļ™āļŠāļđāļ‡ āđ€āļŠāđˆāļ™ āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§āđāļĨāļ° Canary āļāļēāļĢāļ—āļ”āļĨāļ­āļ‡ āđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļˆāļąāļ”āļŠāđˆāļ‡āđāļšāļšāļāđ‰āļēāļ§āļŦāļ™āđ‰āļēāļ­āļ·āđˆāļ™āđ† āļŠāļēāļĄāļēāļĢāļ–āđ€āļĨāļ·āļ­āļāļĢāļ§āļĄāļāļąāļš Kubernetes ingress controllers āđāļĨāļ° service meshes āđ€āļžāļ·āđˆāļ­āļˆāļąāļ”āļāļēāļĢāļ—āļĢāļēāļŸāļŸāļīāļāļĢāļ°āļŦāļ§āđˆāļēāļ‡āļāļēāļĢāļ­āļąāļ›āđ€āļ”āļ• āļŠāļēāļĄāļēāļĢāļ–āļ„āđ‰āļ™āļŦāļēāđāļĨāļ°āļ•āļĩāļ„āļ§āļēāļĄāđ€āļĄāļ•āļĢāļīāļāļˆāļēāļāļĢāļ°āļšāļšāļ­āļ·āđˆāļ™āđ€āļžāļ·āđˆāļ­āļ•āļĢāļ§āļˆāļŠāļ­āļšāļ•āļąāļ§āļšāđˆāļ‡āļŠāļĩāđ‰āļ›āļĢāļ°āļŠāļīāļ—āļ˜āļīāļ āļēāļžāļŦāļĨāļąāļ (KPI) āđāļĨāļ°āļŠāđˆāļ‡āđ€āļŠāļĢāļīāļĄāļŦāļĢāļ·āļ­āļĒāđ‰āļ­āļ™āļāļĨāļąāļšāļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī

Flagger āđ€āļ›āđ‡āļ™āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļāļēāļĢāļ™āļģāļŠāđˆāļ‡āđāļšāļšāđ‚āļ›āļĢāđ€āļāļĢāļŠāļ‹āļĩāļŸāļ—āļĩāđˆāļ—āļģāđƒāļŦāđ‰āļāļĢāļ°āļšāļ§āļ™āļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāđāļ­āļ›āļžāļĨāļīāđ€āļ„āļŠāļąāļ™āļ—āļĩāđˆāļ—āļģāļ‡āļēāļ™āļšāļ™ Kubernetes āđ€āļ›āđ‡āļ™āđ„āļ›āđ‚āļ”āļĒāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī āļŠāđˆāļ§āļĒāļĨāļ”āļ„āļ§āļēāļĄāđ€āļŠāļĩāđˆāļĒāļ‡āđƒāļ™āļāļēāļĢāļ™āļģāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āđƒāļŦāļĄāđˆāļĄāļēāđƒāļŠāđ‰āđƒāļ™āļāļēāļĢāļœāļĨāļīāļ•āđ‚āļ”āļĒāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđ€āļŠāđ‰āļ™āļ—āļēāļ‡āļāļēāļĢāļĢāļąāļšāļŠāđˆāļ‡āļ‚āđ‰āļ­āļĄāļđāļĨāđ€āļ›āđ‡āļ™āđ€āļ§āļ­āļĢāđŒāļŠāļąāļ™āļ—āļĩāđˆāļ­āļąāļ›āđ€āļ”āļ•āļ­āļĒāđˆāļēāļ‡āļ„āđˆāļ­āļĒāđ€āļ›āđ‡āļ™āļ„āđˆāļ­āļĒāđ„āļ› āļ‚āļ“āļ°āļ—āļĩāđˆāļ›āļĢāļ°āđ€āļĄāļīāļ™āđ€āļĄāļ•āļĢāļīāļāđāļĨāļ°āļ”āļģāđ€āļ™āļīāļ™āļāļēāļĢāļ—āļ”āļŠāļ­āļšāļ„āļ§āļēāļĄāļŠāļ­āļ”āļ„āļĨāđ‰āļ­āļ‡ Flagger āļĢāļ­āļ‡āļĢāļąāļšāļāļĨāļĒāļļāļ—āļ˜āđŒāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŦāļĨāļēāļĒāļ•āļąāļ§ āđ€āļŠāđˆāļ™ canary releases āļāļēāļĢāļ—āļ”āļŠāļ­āļš A/B āđāļĨāļ°āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§ āđāļĨāļ°āļĢāļ§āļĄāđ€āļ‚āđ‰āļēāļāļąāļš Kubernetes ingress controllers, service meshes āđāļĨāļ°āļĢāļ°āļšāļšāļ•āļĢāļ§āļˆāļŠāļ­āļšāļ•āđˆāļēāļ‡āđ†

GitLab CI/CD āđ€āļ›āđ‡āļ™āđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ DevOps āļ—āļĩāđˆāļ­āļąāļ”āđāļ™āđˆāļ™āđ„āļ›āļ”āđ‰āļ§āļĒāļŸāļĩāđ€āļˆāļ­āļĢāđŒāļ•āđˆāļēāļ‡āđ† āļ‹āļķāđˆāļ‡āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āđ‚āļ„āļĢāļ‡āļāļēāļĢāļžāļąāļ’āļ™āļēāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ‚āļ™āļēāļ”āđƒāļŦāļāđˆ āļ™āļ­āļāļˆāļēāļāļ—āļĩāđˆāđ€āļāđ‡āļšāđ‚āļ„āđ‰āļ”āđāļĨāļ°āļ„āļ§āļēāļĄāļŠāļēāļĄāļēāļĢāļ–āđƒāļ™āļāļēāļĢāļ•āļīāļ”āļ•āļēāļĄāļ›āļąāļāļŦāļēāđāļĨāđ‰āļ§ GitLab āļĒāļąāļ‡āļĄāļĩāļĢāļ°āļšāļšāļ­āļąāļ•āđ‚āļ™āļĄāļąāļ•āļī CI/CD āļ—āļĩāđˆāļĢāļ­āļ‡āļĢāļąāļšāļ—āļąāđ‰āļ‡āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ—āļĩāđˆāļ—āļĢāļīāļāđ€āļāļ­āļĢāđŒāļ”āđ‰āļ§āļĒāļ•āļ™āđ€āļ­āļ‡āđāļĨāļ°āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļ•āļēāļĄāļāļģāļŦāļ™āļ”āđ€āļ§āļĨāļēāđ„āļ›āļĒāļąāļ‡āļĢāļ°āļšāļšāļāļēāļĢāļœāļĨāļīāļ• Kubernetes āļĢāļ§āļĄāļ–āļķāļ‡āļāļĨāļĒāļļāļ—āļ˜āđŒāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļšāļšāļāđ‰āļēāļ§āļŦāļ™āđ‰āļē āđ€āļŠāđˆāļ™ āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§

CircleCI āđ€āļ›āđ‡āļ™āđāļžāļĨāļ•āļŸāļ­āļĢāđŒāļĄ CI/CD āļ—āļĩāđˆāļŠāđˆāļ§āļĒāđƒāļŦāđ‰āļ—āļĩāļĄāļ§āļīāļĻāļ§āļāļĢāļĢāļĄāļŠāļĢāđ‰āļēāļ‡ āļ—āļ”āļŠāļ­āļš āđāļĨāļ°āļ›āļĢāļąāļšāđƒāļŠāđ‰āļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒ āđƒāļ™āļ‚āļ“āļ°āļ—āļĩāđˆāļ•āļīāļ”āļ•āļēāļĄāļāļēāļĢāđ€āļ›āļĨāļĩāđˆāļĒāļ™āđāļ›āļĨāļ‡āđ‚āļ„āđ‰āļ”āđāļšāļšāđ€āļĢāļĩāļĒāļĨāđ„āļ—āļĄāđŒāļœāđˆāļēāļ™āđāļ”āļŠāļšāļ­āļĢāđŒāļ” UI CircleCI āļĢāļ­āļ‡āļĢāļąāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļāļąāļšāļ„āļĨāļąāļŠāđ€āļ•āļ­āļĢāđŒ Kubernetes āđāļĨāļ°āļœāļŠāļēāļ™āļĢāļ§āļĄāļāļąāļšāļšāļĢāļīāļāļēāļĢāļ­āļ·āđˆāļ™āđ† āļŠāļģāļŦāļĢāļąāļšāļāļĨāļĒāļļāļ—āļ˜āđŒāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰ āđ€āļŠāđˆāļ™ āđāļŸāļĨāđ‡āļāļŸāļĩāđ€āļˆāļ­āļĢāđŒ āļŠāļĩāļŸāđ‰āļē-āđ€āļ‚āļĩāļĒāļ§ āđāļĨāļ°āļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āđāļšāļš Canary

āļšāļ—āļ„āļ§āļēāļĄāļ™āļĩāđ‰āđ„āļ”āđ‰āđāļ™āļ°āļ™āļģāļĢāļđāļ›āđāļšāļšāļāļēāļĢāļ›āļĢāļąāļšāđƒāļŠāđ‰āļŠāļĩāļ™āđ‰āļģāđ€āļ‡āļīāļ™-āđ€āļ‚āļĩāļĒāļ§ āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒāļ•āđˆāļēāļ‡āđ† āđāļĨāļ°āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāļŠāļģāļŦāļĢāļąāļšāļāļēāļĢāļ™āļģāđ€āļ—āļ„āļ™āļīāļ„āļ™āļĩāđ‰āđ„āļ›āđƒāļŠāđ‰āļ āļēāļĒāđƒāļ™āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ Kubernetes āđ€āļĄāļ·āđˆāļ­āļžāļīāļˆāļēāļĢāļ“āļēāļ–āļķāļ‡āđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āļ•āđˆāļēāļ‡āđ† āđ€āļŠāđˆāļ™ Argo Rollouts, Flagger, GitLab CI/CD āļŦāļĢāļ·āļ­ CircleCI āļ„āļļāļ“āļˆāļ°āđ„āļ”āđ‰āļĢāļąāļšāļāļēāļĢāđ€āļœāļĒāđāļžāļĢāđˆāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ—āļĩāđˆāļĢāļēāļšāļĢāļ·āđˆāļ™āļ‚āļķāđ‰āļ™ āļĨāļ”āđ€āļ§āļĨāļēāļŦāļĒāļļāļ”āļ—āļģāļ‡āļēāļ™ āđāļĨāļ°āļ›āļĢāļąāļšāļ›āļĢāļļāļ‡āļ›āļĢāļ°āļŠāļšāļāļēāļĢāļ“āđŒāđ‚āļ”āļĒāļĢāļ§āļĄāļŠāļģāļŦāļĢāļąāļšāļ—āļąāđ‰āļ‡āļ™āļąāļāļžāļąāļ’āļ™āļēāđāļĨāļ°āļœāļđāđ‰āđƒāļŠāđ‰āļ›āļĨāļēāļĒāļ—āļēāļ‡āđƒāļ™āļŠāļ āļēāļžāđāļ§āļ”āļĨāđ‰āļ­āļĄ Kubernetes āļ‚āļ­āļ‡āļ„āļļāļ“ āļ‚āļ“āļ°āļ—āļĩāđˆāļ„āļļāļ“āļŠāļģāļĢāļ§āļˆāđ€āļ„āļĢāļ·āđˆāļ­āļ‡āļĄāļ·āļ­āđ€āļŦāļĨāđˆāļēāļ™āļĩāđ‰ āđƒāļŦāđ‰āļžāļīāļˆāļēāļĢāļ“āļēāļ‚āđ‰āļ­āļāļģāļŦāļ™āļ”āđ€āļ‰āļžāļēāļ°āļ‚āļ­āļ‡āļ‚āļąāđ‰āļ™āļ•āļ­āļ™āļāļēāļĢāļžāļąāļ’āļ™āļēāļ‹āļ­āļŸāļ•āđŒāđāļ§āļĢāđŒāļ‚āļ­āļ‡āļ„āļļāļ“āđ€āļžāļ·āđˆāļ­āļĢāļ°āļšāļļāđ‚āļ‹āļĨāļđāļŠāļąāļ™āļ—āļĩāđˆāļŠāļ­āļ”āļ„āļĨāđ‰āļ­āļ‡āļāļąāļšāļ„āļ§āļēāļĄāļ•āđ‰āļ­āļ‡āļāļēāļĢāļ‚āļ­āļ‡āļ—āļĩāļĄāļ‚āļ­āļ‡āļ„āļļāļ“āļĄāļēāļāļ—āļĩāđˆāļŠāļļāļ”

Easy to start
Create something amazing

Experiment with AppMaster with free plan.
When you will be ready you can choose the proper subscription.

Get Started
āļāļēāļĢāđƒāļŠāđ‰ Blue-Green Deployment āđƒāļ™ Kubernetes: āļ•āļąāļ§āđ€āļĨāļ·āļ­āļāđāļĨāļ°āļ›āļĢāļ°āđ‚āļĒāļŠāļ™āđŒ | AppMaster