You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

128 lines
3.4 KiB

This file contains ambiguous Unicode characters!

This file contains ambiguous Unicode characters that may be confused with others in your current locale. If your use case is intentional and legitimate, you can safely ignore this warning. Use the Escape button to highlight these characters.

% Intended LaTeX compiler: pdflatex
\documentclass[12pt,a4paper]{article}
\usepackage[utf8]{inputenc}
\usepackage[T1]{fontenc}
\usepackage{graphicx}
\usepackage{longtable}
\usepackage{wrapfig}
\usepackage{rotating}
\usepackage[normalem]{ulem}
\usepackage{amsmath}
\usepackage{amssymb}
\usepackage{capt-of}
\usepackage{hyperref}
\usepackage{minted}
\usepackage[a4paper,margin=0.5in]{geometry}
\usepackage[utf8]{inputenc}
\usepackage[inkscapelatex=false]{svg}
\usepackage[sfdefault]{AlegreyaSans}
\usepackage{multicol}
\usepackage{minted}
\usepackage{float}
\usepackage{tikz}
\usetikzlibrary{positioning}
\renewcommand\listingscaption{Exemple de code}
\date{}
\title{Cours de virtualisation avancée: \emph{Kubernetes}, suite}
\hypersetup{
pdfauthor={Evrard Van Espen},
pdftitle={Cours de virtualisation avancée: \emph{Kubernetes}, suite},
pdfkeywords={},
pdfsubject={},
pdfcreator={Emacs 30.0.50 (Org mode 9.6.15)},
pdflang={English}}
\begin{document}
\maketitle
\section{\emph{Rolling Updates}}
\label{sec:org16f1979}
Permet des mises à jour d'images sans temps de coupure
\begin{minted}[]{yaml}
---
...
spec:
...
strategy:
type: RollingUpdate
rollingUpdate:
maxUnavailable: 0
...
\end{minted}
\begin{itemize}
\item \texttt{maxUnavailable}: défini le nombre maximal de \emph{replicas} indisponibles
\item \texttt{maxSurge}: défini le nombre maximal de \emph{replicas} à mettre à jour en même temps
\end{itemize}
Ensuite, mettre à jour l'image avec:
\begin{minted}[]{bash}
kubectl set image deployment/<nom déploiement> <nom conteneur>=<nouvelle image:tag>
\end{minted}
\textbf{But}:
\begin{itemize}
\item Mettre à jour l'application sans \emph{downtime}
\end{itemize}
\section{Déploiement \emph{blue / green}}
\label{sec:org12d4e94}
\begin{center}
\includesvg[width=.9\linewidth]{./images/blue_green}
\end{center}
\begin{itemize}
\item On déploie la nouvelle version en parallèle de l'ancienne
\item Une fois que tout est déployé on redirige le trafic vers le nouveau déploiement
\end{itemize}
\textbf{But}:
\begin{itemize}
\item Tester le déploiement de la nouvelle version avant de la basculer en prod
\end{itemize}
\section{Déploiement \emph{canary}}
\label{sec:orga83dd0b}
\begin{center}
\includesvg[width=.9\linewidth]{./images/canary}
\end{center}
\begin{itemize}
\item On déploie la nouvelle version en parallèle de l'ancienne \textbf{avec moins de \emph{replicas}}
\item Automatiquement une petite partie des clients tomberont sur la nouvelle version
\end{itemize}
\textbf{But}:
\begin{itemize}
\item Faire tester à quelques utilisateurs aléatoires la nouvelle version
\end{itemize}
\section{Mise à l'échelle (\emph{scaling})}
\label{sec:orge0f2cfb}
\begin{itemize}
\item Nécessaire quand la charge augmente
\item Par exemple pour suivre l'augmentation du trafic de notre application
\end{itemize}
\subsection{Verticale (\emph{vertical scaling})}
\label{sec:org42b7a6d}
\subsubsection{Fonctionnement}
\label{sec:orgc206495}
\begin{itemize}
\item On augmente la puissance des nœuds
\item Augmente les capacité de l'application existante
\item L'application n'a pas besoin dêtre capable de gérer la réplication
\end{itemize}
\subsubsection{Inconvénients}
\label{sec:org3049ea8}
\begin{itemize}
\item Coûts pas toujours proportionnels à la puissance des nœuds
\item Si nœud déjà au max: comment faire ?
\end{itemize}
\section{Aller plus loin}
\label{sec:org39d2766}
\end{document}