DevOps on GCP Best Practices, Advantages and Tools - XenonStack

DevOps and SRE on GCP?

DevOps (development and operations) is a methodology or an operating model that establish an Agile relationship between growth and IT operations. The primary goal of DevOps is to automate the processes between software development and IT teams, DevOps builds, tests, and releases software faster.

Google Cloud Platform

Google Cloud offers a vast number of services basically, Google Cloud Platform (GCP) is the collection of Google’s computing resources and other resources made available via mean of services. Here other resources’ services may include Google’s Storage and Databases, Big Data, Machine Learning, Networking and many more.

Apart from Google’s Computing resources, GCP support lots of DevOps and SRE tools that make the process more speedy builds and delivers the products more reliably to the users.

How DevOps and SRE on GCP Works?

GCP Stackdriver used for Critical Monitoring. GCP support DevOps efforts by providing services to build, store and deploy apps. DevOps features are accessible in GCP. Most of the organization employ using DevOps model and technology to demonstrate integration with the existing development, testing, deployment, and operations process. IT Team recognizes whether DevOps right for the organization while having apps on the Public Cloud.

GCP used to build apps with better and long lead times and development cycles. Continuous Delivery/Continuous Deployment (CI/CD) world, new versions launching which require a Continuous Delivery/Continuous Deployment (CI/CD) framework. DevOps Build is the company’s fully-managed Continuous Integration/Continuous Delivery (CI/CD) platform comprising DevOps build, test, and deploy the software at a faster scale. Cloud Build works across a variety of environments comprising VMs, serverless, Kubernetes, or Firebase. Google Cloud Platform supports Docker containers for building an image and turn it on Docker and the flexibility to build, test and deploy.

Google Cloud Platform provides unique offerings for Big Data, Artificial Intelligence and IoT services.

Source- Google Cloud Platform

Why DevOps on Google Cloud Platform Matters?

  • Get Started Fast – In GCP account, there are loT Services on GCP ready to use, there’s no need to set up or software to install.
  • Fully Managed Services – These services take advantages of GCP resources without worrying about settings or installing software or operating infrastructure.
  • Built for Scale – It manages a single instance, scales up to thousands using GCP services. These services make more flexible compute resources by directly provisioning, configure and scale.
  • Programmable – It has an option to use each service via the GCP CLI or through API’s.It also models and provisions GCP resources and all GCP infrastructure using declarative GCP Cloud formation.
  • Automation – GCP uses automation to build faster and more efficiently. Using GCP services, also automate task or process such as deployment, development & test workflow manually and configure.
  • Secure – GCP IAM to sets user permission and policies. It’s used for user access on particular services of GCP resources and how user access those services.

Benefits Of DevOps SRE on GCP

  1. Better Pricing Than Competitors.
  2. Private Global Fiber Networks.
  3. Live Migration of Virtual machines.
  4. Improved Performance.
  5. More Security.
  6. Dedicate to Continuous Expansion.
  7. Redundant Backups.

How to Adopt DevOps on GCP?

Listed below are the steps to adopt DevOps on GCP.

1. Software Release Workflow – It is a GCP code pipeline. GCP code pipeline is a Continuous Integration and Continuous Delivery service for fast and reliable application and infrastructure updates. Core pipeline builds, tests and deploy code every time on the system for changes and based on the release process models defined. It enables to rapidly and reliably deliver features and updates.

2. Build & Test Code – It is GCP code build to make code and test code. GCP code build is fully managed build services that compile the sources codes required, and then it runs, and it’s time to tests and produces software packages ready to deploy. Codebuild doesn’t need to provision, manage and scale build servers. It amounts continuous and processes multiple builds concurrently, builds not left for waiting in a queue.

3. Deployment Automation – It is GCP code deploy to perform deployment automation. It is GCP code deploy to automate code deployments to any of the instance, including Google EC2 instances and on-premises servers. It’s a deployment in GCP code deploy makes it easier to do rapidly new releases with new features, and to avoid downtime during application deployment and handles the complexity of updating the application.

4. Unified CI/CD Projects – It is GCP codestar used for CI/CD projects. GCP codestar quickly develops, builds and deploys the application on the dashboard of GCP. GCP codestar provides a specified user interface, to manage software development activities in one place efficiently. With GCP code star set up entire Continuous Delivery toolchain in minutes, to start releasing code faster.

5. Build & Deploy Microservices architecture using Containers and Serverless Computing – Google Elastic Container Service is a highly scalable, high-performance Container Management services that support Docker containers and allows to run application efficiently on a managed account of google flexible container services instances.

6. Provision, Configure and Manage GCP Infrastructure – It is a GCP Cloud formation to create and maintain a collection of the all related GCP resources, and also do provisioning, and it also updates in an orderly and predictable fashion.GCP Cloud formation creates sample templates or creates models to monitor and enforce infrastructure compliance.

  • Configuration Management.
  • Policy as Code.
  • Run and Manage Web Apps.
  • Private Git Hosting.
  • DevOps use Services of GCP as per the requirement of Project.
  • Code Build.
  • Code Deploy.

Site reliability engineers collaborate with alternative engineers, product owners, and customers to return up with targets.

Source- Site Reliability Engineering (SRE)

Best Practices of DevOps SRE on GCP

  1. No Server Management – Deploy code, Google runs and scales it. Cloud Functions include all the underlying infrastructure, focus on code and build applications faster than ever before.
  2. Pay only while code runs – Cloud Functions used for spinning up on-demand and scale down in response to events. Pay when a function executing, metered to the nearest 100 milliseconds, and pay nothing after function finishes.
  3. Scales automatically – Cloud Functions used by GCP automatically manages and scales underlying infrastructure with the size of workload.
  4. Runs code in response to events – GCP function allows to trigger the code from Google Cloud Platform(GCP), Firebase, and Google Assistant(GA), or call it directly from the web, mobile, or backend application via HTTP.
  5. Connects and extends services – Google Cloud Platform (GCP), Firebase, Google Assistant (GA), and Third-party Cloud services used as building blocks, connect with it and extend them with code, and rapidly move this to production.
  6. Open and familiar – Google Cloud Platform (GCP) supports the code written in JavaScript(JS) Node.js and Python. No new languages, tools, or frameworks to learn, brings code — including native libraries to the platform.

Enabling DevOps SRE Tools on Google Cloud Platform

  • Google Compute Engine
  • Google App Engine
  • Google Container Engine
  • Google Cloud Bigtable
  • Google BigQuery
  • Google Cloud Functions
  • Google Cloud Datastore
  • Google Storage
  • Google Cloud CDN
  • Google Cloud DNS

Summary

This explanation that DevOps is just an idea and SRE is its implementation has become a tool for me to explain those words clearly. It’s also good that it’s Google-like to explain in programming language-like expressions.