GithubHelp home page GithubHelp logo

cloud-workshop-labs's Introduction

Layer7 Cloud Workshop

Important: Use a browser to view this lab content during the workshop. Do not try to use the raw markdown content directly during the workshop.

  1. Overview
  2. Prerequisites
  3. Share GitHub ID
  4. Download Temporary License
  5. Download Kubeconfig
  6. Prepare Folder
  7. Connect to Kubernetes
  8. Lab Exercises

1. Overview

This repository provides step by step instructions and supporting artifacts for a number of Layer7 Cloud Workshop lab exercises. The lab exercises introduce participants to Graphman, the Layer7 Operator, Open Telemetry and external secret management using the Layer7 Operator.

Setup Recording

2. Prerequisites

These prerequisites are required for completing the lab exercises in the Layer7 Cloud Workshop. They should be downloaded, installed and/or otherwise accessible during the workshop.

3. Share GitHub ID

A private GitHub repository is used for sharing a temporary license and environment related information required by this workshop. You must share your GitHub ID with the workshop coordinator to be given access to the private repository.

4. Download Temporary License

A temporary license has been provided for this workshop. Download the license from the private repository.

5. Download Kubeconfig

For this workshop, you will be assigned a user number and a corresponding namespace in a shared Kubernetes cluster. Download the kubeconfig file for your user number (e.g. workshopuser(n).kubeconfig) from the private repository.

6. Prepare Folder

Much of the work in these labs will be done at the command line in a terminal. It will be easier if you prepare a folder (e.g. workshop) inside of which you will copy many of the prerequisites and do much of the work. When done, your folder should look something like this:

workshop-folder

7. Connect to Kubernetes

Update and execute the following command with the path to your kubeconfig file, and test your connection to the Kubernetes cluster:

Linux/MacOS
kubectl get all --kubeconfig /path/to/workshopuser(n).kubeconfig

Expected response at the beginning of the workshop:

No resources found in workshopuser(n) namespace.
Windows
kubectl get all --kubeconfig c:\path\to\workshopuser(n).kubeconfig

Expected response at the beginning of the workshop:

No resources found in workshopuser(n) namespace.

To avoid providing the --kubeconfig argument with every kubectl command, update and execute the following command with the path to your kubeconfig file to set the KUBECONFIG environment variable in your current shell.

Note: This command will only set the environment variable in your current shell. You will need to repeat this command in new shells you open later, or use a more permanent option for setting environment variables in whatever operating system you are working with.

Note: Make sure you provide the absolute path to the kubeconfig file. If you provide a relative path, then kubectl will not find it after changing directories from the directory the provided path is relative to.

Linux/MacOS
export KUBECONFIG=/absolute/path/to/workshopuser(n).kubeconfig
Windows
set KUBECONFIG=c:\absolute\path\to\workshopuser(n).kubeconfig

Test your configuration again:

kubectl get all

Expected response at the beginning of the workshop:

No resources found in workshopuser(n) namespace.

8. Lab Exercises

  • Exercise 1
    • This exercise explores configuration as code concepts using Graphman.
  • Exercise 2
    • This exercise should familiarize you with the basic concepts of the Layer7 Operator.
  • Exercise 3
    • This exercise introduces initContainers and bundles (restman/graphman).
  • Exercise 4
    • This exercise introduces the repository custom resource.
  • Exercise 5
    • This exercise combines the previous examples in more depth.
  • Exercise 6
    • This exercise enables Open Telemetry and Service Metrics on Gateway.
  • Exercise 7
    • This exercise introduces custom Gateway Telemetry assertion.
  • Exercise 8
    • This exercise will will trace a Gateway Service using Trace Open Telemetry tracing.
  • Exercise 9
    • This exercise introduces External Secrets.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.