Jump to Content
Application Development

Create deployment pipelines for your GKE workloads in a few clicks

March 6, 2020
Andrew Phillips

Product Manager

With Kubernetes becoming the de facto standard for container orchestration, many development teams are looking to build, test, and deploy code quickly in a frictionless manner to Kubernetes. Traditional continuous integration and continuous delivery (CI/CD) tools not designed for cloud-native environments often fall short as developers spend many hours looking for best practices to automate deployments, scaling pipelines, and worrying about other implementation details. 

For teams just getting started with Kubernetes, a bunch of time-consuming, error-prone chores further complicate these efforts. These steps include creating configuration files for the application, setting up a CI/CD server, ensuring configuration files are updated, or deploying images with correct credentials to a Kubernetes cluster. Not surprisingly, it’s easy to get frustrated. You’d rather spend time writing code, than worrying about these steps or what the right pipeline looks like for a specific environment. And even when CI/CD pipelines are set up, they are way too complex, and scripts keep being added over time. 

To help you overcome these problems with continuous delivery, we’re pleased to announce an automated deployment feature that lets you create continuous delivery pipelines for Google Kubernetes Engine (GKE) in a few clicks. Without worrying about implementation details, you can now deploy changes to GKE faster, hassle-free. These pipelines implement out-of-the-box best practices that we’ve  learned at Google for handling Kubernetes deployments, thereby further reducing the overhead of setting up and managing pipelines. 

Automated deployment for GKE is powered by Cloud Build, an industry-leading cloud-native CI/CD platform that allows pipelines to scale up and down without having to pre-provision servers or pay in advance for additional capacity. Cloud Build also provides pipelines with baked-in security and compliance enhancements to meet specific workflow and policy needs. 

And unlike with continuous delivery features that you’ll find in traditional CI/CD tools, with automated deployment for GKE, you no longer have to manage, update, or improve the pipeline. All changes and updates are handled automatically in the background. The pipelines run automatically whenever changes are made to the source code, allowing you to deploy new features and fixes quickly and reliably. And with preview deployments, whenever you open or update a pull request, a version of the application with the suggested code change is deployed, so you can quickly validate if the change behaves as expected. Unused preview deployments are automatically cleaned up, freeing up resources.

Create your first pipeline in a few clicks

To get started with automated deployment, simply choose the source repository, build configuration, and YAML file specifying Kubernetes configuration. You can either use your own existing YAML or leverage Google recommended YAML.  

1. Select the source

https://storage.googleapis.com/gweb-cloudblog-publish/images/1_source.max-1100x1100.jpg

2. Select the build configuration

https://storage.googleapis.com/gweb-cloudblog-publish/images/2_build_configuration.max-1500x1500.jpg

3. Choose the Kubernetes YAML— bring your own YAML or use the one Google Cloud provides

https://storage.googleapis.com/gweb-cloudblog-publish/images/3_Kubernetes_YAML.max-1600x1600.jpg

4. Link workload revisions to Cloud Build for traceability and debugging

https://storage.googleapis.com/gweb-cloudblog-publish/images/Cloud_Build_P56pgXT.max-1500x1500.jpg

How automated deployment can help

Here are some other benefits that you get from automated deployments:

  • Recommended Kubernetes configuration: Automated deployment suggests the Kubernetes YAML to be used to deploy your application. You no longer have to fine-tune the configuration by hand.

  • Hassle-free continuous delivery setup: Configure all the steps required for an automated deployment pipeline—a connection to your source code repository, the conditions under which to trigger the pipeline, and the steps to build and deploy your containerized application—with a couple of clicks in a single flow.

  • Reduced CI/CD maintenance: Because continuous delivery pipelines run in Cloud Build, you don’t have to spend time installing and maintaining your own CI/CD system.

  • End-to-end traceability: Workloads deployed using automated deployment can be linked to the pipeline and source code commit that created them. Using Binary Authorization, you can create secure software supply-chain policies that only allow workloads deployed using continuous delivery pipelines.

  • “Shift left” with preview deployments: Quickly test whether your application is working as intended before merging code changes, to ensure issues are identified as early as possible in the development process.

You can start using the automated deployment feature today in the Google Cloud Console. To learn more about how to set up your first automated deployment pipeline and use it to deploy to GKE, check out the documentation, or watch the video below:

Video Thumbnail
Posted in