image
Go Microservices & Kubernetes
Introduction
Difficulty
Beginner
Duration
56m
Students
1174
Ratings
4.8/5
Description

This course explores how to build microservices in Go and deploy them on Kubernetes to create reusable components that can be fully managed in the cloud. We'll talk about what a microservice is and its overall architecture. We'll then take a look at the Go programming language, its benefits, and why it works well for building microservices.

You'll also get an intro to Kubernetes including what it is, what it is used for, and the key components that are needed to get a microservice from code to be exposed on the internet.

We'll then combine these three services to do an example use case where we'll build a microservice in Go and deploy it on Kubernetes. Finally, we'll look at CI/CD integration with GitHub and Google Cloud and how you can automate your deployments.

Learning Objectives

  • Learn about microservices and their overall architecture
  • Learn about the Go programming language and why it's good for building microservices
  • Understand how Kubernetes can be used to deploy microservices
  • Learn about CI/CD with GitHub and Google Cloud

Intended Audience

This course is intended for engineers throughout the tech stack or anyone who wants to get their feet wet in DevOps and learn how programs can be managed in the cloud.

Prerequisites

There are no essential prerequisites for this course. However, we recommend that you have:

  • Experience with at least one high-level programming language, whether that be Java, Python, or Ruby
  • A conceptual understanding of Linux containers and/or Docker
Transcript

Hello, and thank you for taking Go Microservices and Kubernetes, creating reusable components fully managed in the cloud. Throughout this course, we're going to cover a variety of topics, the first of which will be microservices. We'll talk about what a microservice is and its overall architecture.

We will discuss its use cases, comparison with other architectures you've probably used, and then we'll cover the microservice methodology. We'll go over the Go Programming language. Now, we won't be discussing how to program in Go, but we will be talking about why you would want to choose Go for your next project and why they are great for microservices. We'll go over a little bit of Go code later in this course but we will not be going in-depth with the Go syntax.

Of course, we'll be discussing Kubernetes. Now, Kubernetes encompasses a wide range of technologies and there isn't enough time in the day for us to cover them all. So for this course, we will be focusing on a broad view of what Kubernetes is, what it is used for, and the key components that are needed to get a microservice from code to be exposed on the internet.

Next, we'll take these three topics that we previously covered and do an example use case where we will build a microservice in Go and then we'll deploy it on Kubernetes. We'll go over the Go code to create and build the microservice. We'll containerize it with Docker. We'll create a new Kubernetes cluster, deploy the container to the cluster, and finally, expose it to the internet through Services.

The last topic we're going to cover today is CI/CD integration with GitHub and Google Cloud and how you can automate your deployments.

With that out of the way, let's talk about who this course is for. Basically, if you are any type of engineer throughout the tech stack, then this course is for you. If you're starting to get your feet wet in DevOps and want to start seeing how your programs are being managed in the cloud, this course is a great place to start.

There are, however, a few recommended prerequisites. You're not required but it would definitely help if you have experience with at least one high-level programming language, whether that be Java, Python, or Ruby. If you're already familiar with Go, that would be extremely helpful as well. But again, you don't need to have experience programming in Go to take this course.

My other recommendation, you should have a conceptual understanding of Linux containers and/or Docker. We won't be going into Docker in detail, but we will be covering a little bit of Docker code and its build procedure as we go throughout our use case example.

My name is Dave Dederian and I'll be your instructor throughout this course. I'm an engineer at Calculated Systems where I focus on cloud infrastructure and backend software development. I have over 10 years of experience in IT and software development and I am a certified Linux engineer with a passion for Go and DevOps technologies.

About the Author
Students
27648
Labs
31
Courses
13
Learning Paths
42

Calculated Systems was founded by experts in Hadoop, Google Cloud and AWS. Calculated Systems enables code-free capture, mapping and transformation of data in the cloud based on Apache NiFi, an open source project originally developed within the NSA. Calculated Systems accelerates time to market for new innovations while maintaining data integrity.  With cloud automation tools, deep industry expertise, and experience productionalizing workloads development cycles are cut down to a fraction of their normal time. The ability to quickly develop large scale data ingestion and processing  decreases the risk companies face in long development cycles. Calculated Systems is one of the industry leaders in Big Data transformation and education of these complex technologies.