liveBook · Manning

Deployment

As explained in gRPC Microservices in Go

Deployment is the process of releasing software artifacts into an environment where they can run.

Deployment releases tested software artifacts into environments where services can run. In a microservice system, it is part of a continuous delivery workflow that builds artifacts, validates changes, promotes versions, updates workloads, and preserves a path to rollback. section 1.4.3 section 8.4

A production-oriented deployment process typically includes:

  • Automate service artifact building, gRPC stub generation, testing, code-quality checks, and deployment through a CI/CD pipeline. section 1.4.3
  • Validate the main branch with unit, integration, contract, static-analysis, and vulnerability checks before promoting artifacts. section 1.4.3
  • Promote tagged artifacts through user acceptance testing and production rather than rebuilding an unvalidated version. section 1.4.3
  • Choose rolling, blue-green, or canary releases according to the required update and exposure pattern. section 8.5
  • Monitor error rates and user feedback so operators can decide whether to roll back or issue a hotfix. section 1.4.3

Kubernetes deployment is an ongoing operation rather than a one-time copy. A continuous delivery pipeline can update a container image, environment variables, or replica count; Kubernetes then applies the declared workload changes. section 8.4 section 8.5

Promoting a service release

A change to one microservice is built into a Docker image and checked with service, integration, contract, analysis, and vulnerability tests. After the checks pass, the tagged image moves to UAT and then production. Kubernetes updates the workload using a rolling, blue-green, or canary strategy, while monitoring informs a rollback or hotfix decision. section 1.4.3 section 8.5

How gRPC Microservices in Go covers it

How deep it goes
Explains validation, promotion, rollback, workload updates, and rollout choices, but stops short of detailed strategy mechanics.
Examples
Uses Docker images, UAT and production promotion, kubectl, Kubernetes workloads, ArgoCD, and FluxCD as deployment artifacts or mechanisms.
What it assumes
Assumes services, containers, Kubernetes, testing, and version control, while introducing deployment automation and rollout choices.
What you can do after
Operate/configure deployments by promoting tested artifacts, updating Kubernetes workloads, selecting rollout strategies, and preparing rollback decisions.
How it connects
Connects continuous delivery, Docker images, Kubernetes, rolling updates, canary deployment, blue-green deployment, monitoring, and rollback.

Also explained in

Compare how 23 books explain deployment →

Related concepts

This explainer was generated by Manning's knowledge graph from the text of gRPC Microservices in Go. The section links point to the parts of the book it draws on.