From c644a5e7a6ad872b4a43279c209d604212e56c22 Mon Sep 17 00:00:00 2001 From: hrvly Date: Wed, 19 Dec 2018 17:06:07 +0100 Subject: [PATCH 1/4] =?UTF-8?q?des=20r=C3=A9ponses?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hrvly --- answers.md | 26 ++++++++++++++++++-------- 1 file changed, 18 insertions(+), 8 deletions(-) diff --git a/answers.md b/answers.md index 93e86a8..4885543 100644 --- a/answers.md +++ b/answers.md @@ -1,13 +1,22 @@ # Answers -Nom : -Prénom : -NB : +Nom : Ly +Prénom : Hervé +NB : 2 # 1. A quoi sert l'A/B testing ? - +L'A/B testing permet de tester un changement de version, en testant plusieurs versions différentes en séparant les utilisateurs en 2 populations. Comment appliquer de l'A/B testing grâce à Istio ? +On applique l'A/B testing avec Istio en indiquant une règle de route dans le fichier .yaml +Ex : pour 50% version v1 et 50% version v2 +route: + - labels: + version: v1 + weight: 50 + - labels: + version: v2 + weight: 50 # 2. Comment simuler un problème de timeout avec Istio ? @@ -16,16 +25,17 @@ Comment le résoudre ? # 3. Qu'est-ce que le canary release ? - +Le canary release permet de faire tester la version ultérieure à celle utilisée par la majorité des utiisateurs En quoi est-ce utile ? - +L'utilité est de tester une nouvelle version d'une application sans être certain de son fonctionnement en production. On réduit ainsi le risque de bugs et de rollback en production. Comment l'implémenter dans Istio ? + # 4. # 5. Qu'est-ce qu'un Circuit Breaker ? - +Un Circuit Breaker est un interrupteur qui bloque l'accès à un service en particulier lorsqu'il met trop de temps à répondre à cause d'erreurs. Comment l'implémenter dans un contexte Kubernetes ? # 6. @@ -33,7 +43,7 @@ Pourquoi avoir besoin de mirrorer le traffic vers un autre composant ? # 7. Pourquoi bloquer le traffic vers un service ? - +Si un service met trop de temps à répondre, les services qui en dépendent vont être également ralentis, on évite ainsi d'accumuler les retards. Comment l'implémenter simplement avec Istio ? # 8. From e935bf448121019f4ea4d70d85f0ce7b8bf361ae Mon Sep 17 00:00:00 2001 From: hrvly Date: Wed, 19 Dec 2018 17:25:23 +0100 Subject: [PATCH 2/4] =?UTF-8?q?plus=20de=20r=C3=A9ponses?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Signed-off-by: hrvly --- answers.md | 25 +++++++++++++++++++++++-- 1 file changed, 23 insertions(+), 2 deletions(-) diff --git a/answers.md b/answers.md index 4885543..0b787dd 100644 --- a/answers.md +++ b/answers.md @@ -7,6 +7,7 @@ NB : 2 # 1. A quoi sert l'A/B testing ? L'A/B testing permet de tester un changement de version, en testant plusieurs versions différentes en séparant les utilisateurs en 2 populations. + Comment appliquer de l'A/B testing grâce à Istio ? On applique l'A/B testing avec Istio en indiquant une règle de route dans le fichier .yaml Ex : pour 50% version v1 et 50% version v2 @@ -20,44 +21,64 @@ route: # 2. Comment simuler un problème de timeout avec Istio ? +On utilise un outil permettant du falt injection. Comment le résoudre ? +On change le timeout dans la configuration des applications concernées, ou on travaille sur le code afin de permettre à l'application de tourner plus rapidement. # 3. Qu'est-ce que le canary release ? Le canary release permet de faire tester la version ultérieure à celle utilisée par la majorité des utiisateurs + En quoi est-ce utile ? -L'utilité est de tester une nouvelle version d'une application sans être certain de son fonctionnement en production. On réduit ainsi le risque de bugs et de rollback en production. -Comment l'implémenter dans Istio ? +L'utilité est de tester une nouvelle version d'une application sans être certain de son fonctionnement en production. On réduit ainsi le risque de bugs et de rollback en production. +Comment l'implémenter dans Istio ? +route: + - destination: + host: website + subset: version-2 + weight: 5 + - destination: + host: website + subset: version-1 + weight: 95 # 4. # 5. Qu'est-ce qu'un Circuit Breaker ? Un Circuit Breaker est un interrupteur qui bloque l'accès à un service en particulier lorsqu'il met trop de temps à répondre à cause d'erreurs. + Comment l'implémenter dans un contexte Kubernetes ? +Il s'agit d'un ensemble de règles dans la configuration de Kubernetes. # 6. Pourquoi avoir besoin de mirrorer le traffic vers un autre composant ? +Ca permet de modifier la production en limitant les risques. On effectue une copie du trafic qui est située sur un "request path" moins critique pour le serveur. # 7. Pourquoi bloquer le traffic vers un service ? Si un service met trop de temps à répondre, les services qui en dépendent vont être également ralentis, on évite ainsi d'accumuler les retards. + Comment l'implémenter simplement avec Istio ? # 8. Quel est la problématique de tracing distribué ? +Il s'agit de comprendre le comportement d'une application et savoir comment résoudre des problèmes. Quel est la spécification du tracing distribué et son implémentation dans Istio ? +Istio trace les appels de chaque application du cluster et les affiche sur un dashboard. # 9. Comment s'appelle l'outil de récupération des métrics ? +Prometheus # 10. # 11. Comment s'appelle l'outil de visualisation des métrics ? +Graphana # 12. A quoi sert un servicegraph ? From 2c706c914df688d41205f498f8eff2f8dea64b7c Mon Sep 17 00:00:00 2001 From: hrvly Date: Wed, 19 Dec 2018 17:46:44 +0100 Subject: [PATCH 3/4] quesiton 7 Signed-off-by: hrvly --- answers.md | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) diff --git a/answers.md b/answers.md index 0b787dd..d5123cc 100644 --- a/answers.md +++ b/answers.md @@ -58,10 +58,15 @@ Pourquoi avoir besoin de mirrorer le traffic vers un autre composant ? Ca permet de modifier la production en limitant les risques. On effectue une copie du trafic qui est située sur un "request path" moins critique pour le serveur. # 7. -Pourquoi bloquer le traffic vers un service ? +Pourquoi bloquer le trafic vers un service ? Si un service met trop de temps à répondre, les services qui en dépendent vont être également ralentis, on évite ainsi d'accumuler les retards. Comment l'implémenter simplement avec Istio ? +On utilise le rate limit qui permet de limiter dynamiquement le trafic vers un service. +istioctl create -f ratelimit-handler.yaml +le handler va permettre de configurer le nombre maximum de requêtes par seconde +istioctl create -f ratelimit-rule.yaml +Le rule permet de fixer le quota memoire (memquota) qui va activer le rate limit. # 8. Quel est la problématique de tracing distribué ? From 4d5b67a7ac17e54683be568805741b4a86fc319c Mon Sep 17 00:00:00 2001 From: hrvly Date: Wed, 19 Dec 2018 18:15:21 +0100 Subject: [PATCH 4/4] question 12 Signed-off-by: hrvly --- answers.md | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/answers.md b/answers.md index d5123cc..dd50cee 100644 --- a/answers.md +++ b/answers.md @@ -83,9 +83,10 @@ Prometheus # 11. Comment s'appelle l'outil de visualisation des métrics ? -Graphana +Grafana # 12. A quoi sert un servicegraph ? - +Un servicegraph est une représentation schématique de l'ensemble des services ainsi que les appels qui se font entre eux. Quel serait l'utilité dans le quotidien d'un ops ? +Le servicegraph permet de visualiser très simplement l'ensemble des services d'une application.