From 62f64063c61e05a96f3e133a36c107cd2a7520e6 Mon Sep 17 00:00:00 2001 From: Jerome Petazzoni Date: Mon, 22 Apr 2019 07:37:12 -0500 Subject: [PATCH] GOTO Chicago 2019 --- slides/_redirects | 2 +- slides/k8s/authn-authz.md | 2 +- slides/k8s/namespaces.md | 76 ++++++++++++++------------------------- slides/kube-fullday.yml | 29 +++++++-------- slides/logistics.md | 22 ++---------- 5 files changed, 46 insertions(+), 85 deletions(-) diff --git a/slides/_redirects b/slides/_redirects index 142cc30f..fa81b13b 100644 --- a/slides/_redirects +++ b/slides/_redirects @@ -1,4 +1,4 @@ # Uncomment and/or edit one of the the following lines if necessary. #/ /kube-halfday.yml.html 200 -#/ /kube-fullday.yml.html 200 +/ /kube-fullday.yml.html 200 #/ /kube-twodays.yml.html 200 diff --git a/slides/k8s/authn-authz.md b/slides/k8s/authn-authz.md index 96aa5f92..0ff69b49 100644 --- a/slides/k8s/authn-authz.md +++ b/slides/k8s/authn-authz.md @@ -1,4 +1,4 @@ -# Authentication and authorization +# Authentication and authorization (bonus) *And first, a little refresher!* diff --git a/slides/k8s/namespaces.md b/slides/k8s/namespaces.md index b1961073..a6af0e0a 100644 --- a/slides/k8s/namespaces.md +++ b/slides/k8s/namespaces.md @@ -1,8 +1,8 @@ # Namespaces -- We cannot have two resources with the same name +- We would like to deploy multiple copies of our demo app - (Or can we...?) +- But we cannot have two resources with the same name ... Or can we ? -- @@ -155,7 +155,7 @@ ## Using our new namespace -- Let's check that we are in our new namespace, then deploy the DockerCoins chart +- Let's check that we are in our new namespace .exercise[ @@ -164,21 +164,36 @@ kubectl get all ``` -- Deploy DockerCoins: - ```bash - helm install dockercoins - ``` - ] -In the last command line, `dockercoins` is just the local path where -we created our Helm chart before. +--- + +## Deploying another copy of DockerCoins + +- We will use YAML definitions from a GitHub repository: + + https://github.com/jpetazzo/kubercoins + +.exercise[ + +- Clone kubercoins: + ```bash + https://github.com/jpetazzo/kubercoins + ``` + +- Deploy it: + ```bash + kubectl apply -f kubercoins + ``` +] + +Note how `kubectl apply` can work on a whole directory! --- ## Viewing the deployed app -- Let's see if our Helm chart worked correctly! +- Let's see if this worked correctly! .exercise[ @@ -195,45 +210,6 @@ If the graph shows up but stays at zero, check the next slide! --- -## Troubleshooting - -If did the exercices from the chapter about labels and selectors, -the app that you just created may not work, because the `rng` service -selector has `enabled=yes` but the pods created by the `rng` daemon set -do not have that label. - -How can we troubleshoot that? - -- Query individual services manually - - β†’ the `rng` service will time out - -- Inspect the services with `kubectl describe service` - - β†’ the `rng` service will have an empty list of backends - ---- - -## Fixing the broken service - -The easiest option is to add the `enabled=yes` label to the relevant pods. - -.exercise[ - -- Add the `enabled` label to the pods of the `rng` daemon set: - ```bash - kubectl label pods -l app=rng enabled=yes - ``` - -] - -The *best* option is to change either the service definition, or the -daemon set definition, so that their respective selectors match correctly. - -*This is left as an exercise for the reader!* - ---- - ## Namespaces and isolation - Namespaces *do not* provide isolation diff --git a/slides/kube-fullday.yml b/slides/kube-fullday.yml index 7313ce00..ef8e6d0c 100644 --- a/slides/kube-fullday.yml +++ b/slides/kube-fullday.yml @@ -1,14 +1,15 @@ title: | - Deploying and Scaling Microservices - with Kubernetes + Getting started with + Kubernetes and + container orchestration #chat: "[Slack](https://dockercommunity.slack.com/messages/C7GKACWDV)" -#chat: "[Gitter](https://gitter.im/jpetazzo/workshop-yyyymmdd-city)" -chat: "In person!" +chat: "[Gitter](https://gitter.im/jpetazzo/workshop-20190428)" +#chat: "In person!" gitrepo: github.com/jpetazzo/container.training -slides: http://container.training/ +slides: http://gotochgo2019.container.training/ exclude: - self-paced @@ -28,8 +29,8 @@ chapters: - k8s/concepts-k8s.md - shared/declarative.md - k8s/declarative.md -- - k8s/kubenet.md - - k8s/kubectlget.md + - k8s/kubenet.md +- - k8s/kubectlget.md - k8s/setup-k8s.md - k8s/kubectlrun.md - k8s/kubectlexpose.md @@ -40,22 +41,22 @@ chapters: # - k8s/kubectlproxy.md # - k8s/localkubeconfig.md # - k8s/accessinternal.md - - k8s/dashboard.md +# - k8s/dashboard.md # - k8s/kubectlscale.md - k8s/scalingdockercoins.md - shared/hastyconclusions.md - k8s/daemonset.md - - k8s/rollout.md # - k8s/healthchecks.md - - k8s/logs-cli.md - - k8s/logs-centralized.md +# - k8s/logs-cli.md +# - k8s/logs-centralized.md #- - k8s/helm.md -# - k8s/namespaces.md -# - k8s/netpol.md -# - k8s/authn-authz.md + - k8s/namespaces.md + - k8s/netpol.md + - k8s/authn-authz.md #- - k8s/ingress.md # - k8s/gitworkflows.md - - k8s/prometheus.md +# - k8s/prometheus.md #- - k8s/volumes.md # - k8s/build-with-docker.md # - k8s/build-with-kaniko.md diff --git a/slides/logistics.md b/slides/logistics.md index 33388a06..2235406f 100644 --- a/slides/logistics.md +++ b/slides/logistics.md @@ -1,32 +1,16 @@ ## Intros -- This slide should be customized by the tutorial instructor(s). - - Hello! We are: - - .emoji[πŸ‘©πŸ»β€πŸ«] Ann O'Nymous ([@...](https://twitter.com/...), Megacorp Inc) - - - .emoji[πŸ‘¨πŸΎβ€πŸŽ“] Stu Dent ([@...](https://twitter.com/...), University of Wakanda) - - - -- The workshop will run from ... - -- There will be a lunch break at ... - - (And coffee breaks!) + (And coffee breaks at 10:30am and 2:30pm) - Feel free to interrupt for questions at any time