Image for post
Image for post

Google Compute Engine Virtual Private Network (VPN) lets you connect your existing network to your Compute Engine network via an IPsec connection. Alternatively, you can use it to connect two different Google Compute Engine instances running on 2 separate VPC networks.

In this lab, we will establish VPN tunnels between two networks in separate regions such that a VM in one network can ping a VM in the other network over its internal IP address.

Task 1: Explore the networks and instances

In this Demonstration, Two custom networks with VM instances have been pre — configured . For the purposes of the lab, both networks are VPC…


Image for post
Image for post

As per business requirement, we might want to perform rolling updates to our services for configuration changes and new Docker Image versions without any downtime.

In this part of the tutorial, we will deploy a service based on the Redis 3.0.6 container tag. Then we will upgrade the service to use the Redis 3.0.7 container image using rolling updates

Pre-requisites

  1. For our demonstration, we will be using centos-07.
  2. We will be using 3 machines for our lab, 1 machine as a swarm Manager node and 2 swarm worker nodes. These servers have below IP details:

192.168.33.76 managernode.unixlab.com
192.168.33.77 workernode1.unixlab.com
192.168.33.78 workernode2.unixlab.com


Image for post
Image for post

Introduction

A swarm consists of multiple Docker hosts that run in swarm mode and act as managers (to manage membership and delegation) and workers (which run swarm services). A given Docker host can be a manager, a worker, or perform both roles.

When Docker is running in swarm mode, you can still run standalone containers on any of the Docker hosts participating in the swarm, as well as swarm services. A key difference between standalone containers and swarm services is that only swarm managers can manage a swarm, while standalone containers can be started on any daemon.

In this demonstration, we…


Image for post
Image for post

In this Lab, we will configure a Linux Google Compute Engine instance that installs the Apache web server software using a remote startup script. In order to confirm that Apache has successfully installed, the Compute Engine instance must be accessible via HTTP from the internet.

Please follow below steps:

  1. Please go to Navigation Menu> Storage > Browser
  2. Click on “Create Storage Bucket” and give your bucket an Unique name. Keep everything as Default.


Image for post
Image for post

Introduction

Cloud Build is a service that executes your builds on Google Cloud Platform’s infrastructure. Cloud Build can import source code from a variety of repositories or cloud storage spaces, execute a build to your specifications, and produce artifacts such as Docker containers or Java archives.

Building Containers with DockerFile and Cloud Build

We can write build configuration files to provide instructions to Cloud Build as to which tasks to perform when building a container. These build files can fetch dependencies, run unit tests, analyses and more.

In this task, we will create a DockerFile and use it as a build configuration script with Cloud Build. We will…


Image for post
Image for post

Google Kubernetes Engine (GKE) provides a managed environment for deploying, managing, and scaling your containerized applications using Google infrastructure. The GKE environment consists of multiple machines (specifically, Compute Engine instances) grouped together to form a cluster.

In this lab, we will download a sample app from GitHub and learn how to deploy applications to Kubernetes Engine.

Download a sample app from GitHub

Download a sample application from GitHub and preview it in Cloud Shell.

1. In the Cloud Console, click Activate Cloud Shell.

2. If prompted, click Continue.

3. To create a new folder, run the following command:

mkdir gcp-course

4. Change to the folder you…


Image for post
Image for post

Terraform enables us to safely and predictably create, change, and improve infrastructure. It is an open-source tool that codifies APIs into declarative configuration files that can be shared among team members, treated as code, edited, reviewed, and versioned.

In this lab, we will create a Terraform configuration with a module to automate the deployment of Google Cloud infrastructure. Specifically, we will deploy one auto mode network with a firewall rule and two VM instances, as shown in this diagram:


Image for post
Image for post

Google Cloud HTTP(S) load balancing is implemented at the edge of Google’s network in Google’s points of presence (POP) around the world. User traffic directed to an HTTP(S) load balancer enters the POP closest to the user and is then load-balanced over Google’s global network to the closest backend that has sufficient available capacity.

In this lab, we will configure an HTTP load balancer as shown in the diagram below. Then, we will stress test the load balancer to demonstrate global load balancing and autoscaling.


Image for post
Image for post

Instance groups

An instance group is a collection of virtual machine (VM) instances that you can manage as a single entity.

Compute Engine offers two kinds of VM instance groups, managed and unmanaged:

  • Managed instance groups (MIGs) let you operate apps on multiple identical VMs. You can make your workloads scalable and highly available by taking advantage of automated MIG services, including: autoscaling, autohealing, regional (multiple zone) deployment, and automatic updating.
  • Unmanaged instance groups let you load balance across a fleet of VMs that you manage yourself.

In this article, we will discuss on Managed instance groups.

Managed instance groups

Managed instance groups offer the following advantages:

  • Keeping VM instances running. If…


Image for post
Image for post

What is a Google storage bucket?

Buckets are the basic containers that hold your data. Everything that you store in Cloud Storage must be contained in a bucket. You can use buckets to organize your data and control access to your data, but unlike directories and folders, you cannot nest buckets.

In this demonstration, we will be creating a storage bucket using “Cloud Console” and “Cloud Shell”.

1. Use the “Cloud Console” to create a bucket

In this task, We will create a Storage bucket Using Google cloud Console.

Navigate to the Storage service and create the bucket

  1. In the Cloud Console, on the Navigation menu, click Storage > Browser.

Rajeev Ghosh

Artificial Intelligence | Machine Learning | DevOps enthusiast

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store