Skip to content

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.
  • Labs icon Lab
  • A Cloud Guru
Google Cloud Platform icon
Labs

Build and Use a Kubernetes Cluster from Scratch

In this lab, you have been provided two servers. You will install and configure Kubernetes and configure it to use containerd for container management. You will need to initialize a Kubernetes cluster, add a network plugin, and add a Node to the cluster. Then, you will need to create a deployment file that starts three replicas of an Nginx image. Once you're done, there is a provided script called `check-tasks.sh` that can be used to check that all tasks have been completed.

Google Cloud Platform icon
Labs

Path Info

Level
Clock icon Beginner
Duration
Clock icon 30m
Published
Clock icon Mar 31, 2023

Contact sales

By filling out this form and clicking submit, you acknowledge our privacy policy.

Table of Contents

  1. Challenge

    Log In to the Provided Servers

    Log in to the servers as cloud_user with the provided passwords to ensure you can log in. When the file SERVER-READY is shown in the /home/cloud_user folder for both servers, you can follow along with the tasks.

  2. Challenge

    Install Kubernetes and containerd and Create a Cluster

    • Your task for this objective is to install the Kubernetes repository, and then install Kubernetes.

    • You will use whatever system commands are required.

    • The repository file should be called /etc/yum.repos.d/kubernetes.repo.

    • The contents of the repo should be:

      [kubernetes]
      name=Kubernetes
      baseurl=https://packages.cloud.google.com/yum/repos/kubernetes-el7-x86_64
      enabled=1
      gpgcheck=1
      repo_gpgcheck=1
      gpgkey=https://packages.cloud.google.com/yum/doc/yum-key.gpg https://packages.cloud.google.com/yum/doc/rpm- package-key.gpg
      
    • Next, install the three kubernetes programs.

    • Access the containerd repo.

    • You should replace the config.toml with a new default containerd configuration.

    • Using the required commands, enable and start containerd. Be sure to configure containerd to start automatically on a reboot.

    • Next, enable and start the kubelet. Be sure to configure the kubelet to start automatically on a reboot.

    • Use the relevant command to initialize the cluster. The network you should use is 172.16.0.0/16.

    • To set up your user, you will need to use the information output from the kubeadm init command that was run previously.

    • Apply the Calico network plugin.

  3. Challenge

    Add the Worker Node to the Cluster

    • Add your worker Node to the cluster. You will need to use the information output from the kubeadm init command that was run previously.

    • Use the kubectl get nodes command to test that the worker Node has been added.

  4. Challenge

    Create a Deployment File That Starts Three Replicas

    You will create a deployment file called deployment-nginx.yml that starts three replicas, runs the Nginx image, and uses port 8080 for its output.

  5. Challenge

    Check That the Deployment Started the Three Replicas

    • Using kubectl, create the deployment and check that the three replicas have started.

    • You can use a script in the home folder called check-tasks.sh to check that you have completed the tasks for this lab.

The Cloud Content team comprises subject matter experts hyper focused on services offered by the leading cloud vendors (AWS, GCP, and Azure), as well as cloud-related technologies such as Linux and DevOps. The team is thrilled to share their knowledge to help you build modern tech solutions from the ground up, secure and optimize your environments, and so much more!

What's a lab?

Hands-on Labs are real environments created by industry experts to help you learn. These environments help you gain knowledge and experience, practice without compromising your system, test without risk, destroy without fear, and let you learn from your mistakes. Hands-on Labs: practice your skills before delivering in the real world.

Provided environment for hands-on practice

We will provide the credentials and environment necessary for you to practice right within your browser.

Guided walkthrough

Follow along with the author’s guided walkthrough and build something new in your provided environment!

Did you know?

On average, you retain 75% more of your learning if you get time for practice.

Start learning by doing today

View Plans