Giter Club home page Giter Club logo

workshop-azure-kubernetes-service-2days's Introduction

Workshop-Azure-Kubernetes-Service-2days

Workshop de 2 jours autour de d'Azure Kubernetes Services et services associés

tags: #workshop #aks #github #kubernetes

Objectifs

Découverte de Kubernetes dans Azure avec des exercices pratiques

Agenda

Jour 1

Matinée

  • Introduction de l'atelier, programme des 2 journées
  • Rappels rapides sur les architectures cloud natives, 12 factors apps, pet vs cattle, baking vs frying....
  • Rappels rapides sur les basiques de Kubernetes
  • Présentation AKS : control plane, worker nodes, réseau, stockage
  • Lab 1 : création d'un cluster AKS via le portail Azure + visualisation des ressources via le portail Azure
  • Lab 2 : création d'un cluster plus avancé via Azure CLI, connexion et utilisation basique de kubectl
  • Lab 3 : création d'un cluster avec plusieurs node pools avec autoscaling via Terraform + déploiement basique d'une application (service de type load balancer)

Après midi

  • Intégration avec d'autres services Azure : Azure Monitor, Azure Policy, Azure Container Registry, Azure Log Anaytics, Azure Application Gateway, Azure NAT Gateway, Microsoft Defender for Cloud...
  • Lab 4: Activation du monitoring avec Azure Monitor
  • Lab 5 : Azure Container Registry : configuration, importation et utilisation avec AKS
  • Lab 6 : Installation d'AGIC, déploiement d'Azure Application Gateway et déploiement d'une application basique
  • Lab 7 : Utilisation du Secret Store CSI Driver avec Azure Key Vault

Jour 2

Matinée

  • Gestion des montées de version : du cluster à l'application
  • Lab 8 : Montées de versions dans AKS
  • Lab 9 : Montées de version de l'application => Rolling update, Blue Green, Canary
  • Automatisation des déploiements applicatifs et configurations Kubernetes : Deployment Center, Pipelines avec GitHub, GitOps
  • Lab 10 : Pipeline basique CI/CD Kubernetes YAML

Après midi

  • Introduction à Kustomize
  • Lab 11 : Introduction à Kustomize et Pipeline avec Kustomize
  • Lab 12 : GitOps avec AKS et Fluxv2
  • Autoscaling quelles options ? HPA, KEDA, VPA, Virtual Kubelet...
  • Conclusion - Tour de table

Pré requis - compétences

Pré requis - techniques

  • Un Abonnement Azure avec des privilèges d'administrateur
  • Un compte GitHub

L'ensemble des labs peut être réalisé depuis l'Azure Cloud Shell

Accéder au cloud shell via l'url suivante dans votre navigateur : https://shell.azure.com

Ouvrir un Azure Cloud Shell. Si c'est la première utilisation d'Azure Cloud Shell, valider la création d'un compte de stockage (qui contiendra les données du profil).

Informations complémentaires sur Azure Cloud Shell : https://docs.microsoft.com/en-us/azure/cloud-shell/overview

Installation des composants nécessaires pour travailler sur un poste local (Optionnel)

Avoir un environnement Bash

Avoir les outils suivants installés dans WSL :

Procédure d'installation de la CLI Terraform pour Linux (WSL Ubuntu 20.04)

sudo apt-get update && sudo apt-get install -y gnupg software-properties-common curl
curl -fsSL https://apt.releases.hashicorp.com/gpg | sudo apt-key add -
sudo apt-add-repository "deb [arch=amd64] https://apt.releases.hashicorp.com $(lsb_release -cs) main"
sudo apt-get update && sudo apt-get install terraform

Créer une clé SSH si vous n'en avez pas déjà

se placer sur le répertoire home : cd

ssh-keygen -t rsa

Créer un Service Principal dans Azure

az login

az account list -o table

Récupérer l'ID de la subscription Azure puis exécuter la commande suivante :

az ad sp create-for-rbac --name "votrenom-demo-githubaction2022" --role "Contributor" --scopes /subscriptions/METTRE_ICI_L_ID_DE_LA_SUBSCRIPTION -o jsonc

Récupérer le output de la commande et le sauvegarder temporairement dans un fichier

workshop-azure-kubernetes-service-2days's People

Contributors

pierre-chesne avatar squasta avatar

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.