Book Image

Hands-On Kubernetes on Azure

By : Shivakumar Gopalakrishnan, Gunther Lenz
Book Image

Hands-On Kubernetes on Azure

By: Shivakumar Gopalakrishnan, Gunther Lenz

Overview of this book

Microsoft is now one of the most significant contributors to Kubernetes open source projects. Kubernetes helps to create, configure, and manage a cluster of virtual machines that are preconfigured to run containerized applications. This book will be your guide to performing successful container orchestration and deployment of Kubernetes clusters on Azure. You will get started by learning how to deploy and manage highly scalable applications, along with understanding how to set up a production-ready Kubernetes cluster on Azure. As you advance, you will learn how to reduce the complexity and operational overheads of managing a Kubernetes cluster on Azure. By the end of this book, you will not only be capable of deploying and managing Kubernetes clusters on Azure with ease, but also have the knowledge of best practices for working with advanced AKS concepts for complex systems.
Table of Contents (16 chapters)
Free Chapter
1
Section 1: The Basics
4
Section 2: Deploying on AKS
10
Section 3: Leveraging Advanced Azure PaaS Services in Combination with AKS

Deploying the oauth2_proxy side car

We are going to implement oauth2_proxy from bitly (https://github.com/bitly/oauth2_proxy). We will be following the steps indicated in the documentation for Azure AD (https://docs.microsoft.com/en-us/azure/active-directory/).

First, register an app with Azure AD as shown in the following screenshot:

Next, create a client ID secret by performing the following steps:

  1. Select Certificates & secrets and go to New client secret:
  1. Add the secret:
  1. Click on the Copy icon and save the secret in a safe place:
  1. Save the client and the tenant ID:

After creating the client ID secret, we will now launch oauth2_proxy with the following YAML file:

apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: oauth2-proxy
namespace: kube-system
spec:
replicas: 1
selector:
matchLabels:
app: oauth2-proxy
template:
metadata:
labels...