SlideShare a Scribd company logo
1 of 57
Download to read offline
1 @stoeps Social Connections 14 #kubernetes101
Kubernetes Basics for
Connections Admins
Christoph Stoettner
+49 173 8588719
christoph.stoettner@panagenda.com
2 @stoeps Social Connections 14 #kubernetes101
3 @stoeps Social Connections 14 #kubernetes101
+49 173 8588719
christophstoettner
Christoph Stoettner
Senior Consultant at
IBM Domino since 1999
IBM Connections since 2009
Experience in
Migrations, Deployments
Performance Analysis
Focusing in
Monitoring, Security
panagenda ConnectionsExpert

 christoph.stoettner@panagenda.com
 linkedin.com/in/christophstoettner
 stoeps.de

 @stoeps
panagenda
4 @stoeps Social Connections 14 #kubernetes101
Agenda
History
Kubernetes Infrastructure
kubectl
5 @stoeps Social Connections 14 #kubernetes101
Why do we talk about Kubernetes?
TPFKAP
The Product Formerly Known As Pink
First rumours end 2016
Announced during Think 2017 (February 2017) in San Francisco
Migration of the monolithic WebSphere stack of IBM Connections
Lots of advantages
Zero Downtime updates
More frequent updates (Continous Delivery)
Moving away from Java (expensive Developers)
Drop the support of three different Database engines

6 @stoeps Social Connections 14 #kubernetes101
History - Borg System
2003 / 2004
First unified container-management system
Developed at Google
Based on Linux control groups (cgroups)
Container support in the Linux kernel became available
Google contributed much of this code to the kernel
Isolation between latency-sensitive user-facing services and
CPU-hungry batch processes

7 @stoeps Social Connections 14 #kubernetes101
History - Omega
2013
Offspring of Borg
Improve the software engineering of the Borg ecosystem
Built from ground up
more consistent, principled architecture
Seperate components which acted as peers
Multiple schedulers
No funneling through centralized master
8 @stoeps Social Connections 14 #kubernetes101
History Kubernetes
June 2014
Third container management system developed at Google
Conceived and developed when external developers became
interested in Linux containers
Google released the code as Opensource to the Cloud Native
Computing Foundation (CNCF)
Around six weeks after the release:
Microsoft, IBM, Red Hat and Docker joined the Community
https://cloudplatform.googleblog.com/2014/07/welcome-microsoft-
redhat-ibm-docker-and-more-to-the-kubernetes-community.html
9 @stoeps Social Connections 14 #kubernetes101
Overview
10 @stoeps Social Connections 14 #kubernetes101
Dynamic Timeframe
11 @stoeps Social Connections 14 #kubernetes101
Kubernetes
12 @stoeps Social Connections 14 #kubernetes101
Kubernetes Architecture
13 @stoeps Social Connections 14 #kubernetes101
Linux Kernel
Namespaces
lightweight process virtualization
Isolation: enable a process to have different views of the system than other
processes
Much like Zones in Solaris
No hypervisor layer!
cgroups (control groups)
Resource Management providing a generic process-grouping framework
Cgroups is not dependent upon namespaces.
14 @stoeps Social Connections 14 #kubernetes101
Container
A container is a Linux userspace process
LXC (Linux Containers)
Operating System Level virtualization
Docker
Linux container engine
Initially written in Python, later in Go
Released by dotCloud 2013
Docker < 0.9 used LXC to create and manage containers
15 @stoeps Social Connections 14 #kubernetes101
Pods
Pods are the smallest unit in Kubernetes
Have a relatively short life-span
Born, and destroyed
They are never healed
system heals itself
by creating new Pods
by terminating those that are unhealthy
system is long-living
Pods are not

16 @stoeps Social Connections 14 #kubernetes101
YAML with VIM
.vimrc
set cursorline " highlight current line
hi CursorLine cterm=NONE ctermbg=235 ctermfg=NONE guifg=gray guibg=black
set cursorcolumn " vertical cursor line
hi CursorColumn ctermfg=NONE ctermbg=235 cterm=NONE guifg=gray guibg=black gui=bold
17 @stoeps Social Connections 14 #kubernetes101
YAML → or use a ruler
18 @stoeps Social Connections 14 #kubernetes101
Simple Pods
Run a simple pod
Quick and dirty! Deprecated!
kubectl run db --image mongo

19 @stoeps Social Connections 14 #kubernetes101
Simple Pod - what happend?
Kubernetes automatically creates
ReplicaSet
Deployment
20 @stoeps Social Connections 14 #kubernetes101
Create a pod with a yaml file
nginx.yaml
apiVersion: v1
kind: Pod
metadata:
name: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
$ kubectl create -f nginx.yaml
$ kubectl get all -o wide
NAME READY STATUS RESTARTS AGE IP NODE
pod/nginx 1/1 Running 0 4m 10.42.1.13 rancher2
21 @stoeps Social Connections 14 #kubernetes101
Overview creating pod
kubectl create pod -f pod.yml
22 @stoeps Social Connections 14 #kubernetes101
Liveness Check
1 Check path - example with non existend path
2 Wait 5 seconds before performing the first probe
3 Timeout (no answer for 2 seconds → error)
4 Liveness check all 5 seconds
5 Kubernetes tries n times before giving up
...
- containerPort: 80
env:
- name: nginx
value: localhost
livenessProbe:
httpGet:
path: /
port: 80
initialDelaySeconds: 5
timeoutSeconds: 2
periodSeconds: 5
failureThreshold: 1
1
2
3
4
5
23 @stoeps Social Connections 14 #kubernetes101
Automatic restart
0:00
24 @stoeps Social Connections 14 #kubernetes101
Check Events
$ kubectl describe nginx-broken
25 @stoeps Social Connections 14 #kubernetes101
Pods vs Container
Pod is smallest deployment in Kubernetes
A pod contains minimum one container (Docker or RKT)
Can contain multiple containers
Not very common
Most pods have one container
Easier to scale
A pod runs on one node and shares resources
26 @stoeps Social Connections 14 #kubernetes101
ReplicaSet as a self-healing
mechanism
Pods associated with a ReplicaSet are
guaranteed to run
ReplicaSet’s primary function is to
ensure that the specified number
of replicas of a service are
(almost) always running.
ReplicaSet

27 @stoeps Social Connections 14 #kubernetes101
ReplicaSet (2)
1 --record saves history
2 --save-config enables the use of kubectl apply, so we can change the ReplicaSet
$ kubectl create -f nginx-rs.yaml --record --save-config
$ kubectl get pods
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
pod/webserver-79r7j 1/1 Running 0 15m 10.42.3.15 rancher3 <none>
pod/webserver-dg5bp 1/1 Running 0 15m 10.42.2.11 rancher4 <none>
pod/webserver-rmkgx 1/1 Running 0 15m 10.42.1.14 rancher2 <none>
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
replicaset.apps/webserver 3 3 3 15m nginx nginx:1.7.9 service=nginx,type=backen
1 2
28 @stoeps Social Connections 14 #kubernetes101
ReplicaSet Scale
Change Replicas to 9
Apply file
...
spec:
replicas: 9
$ kubectl apply -f nginx-rs-scaled.yaml
NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE
pod/webserver-bw259 1/1 Running 0 5m 10.42.1.15 rancher2 <none>
pod/webserver-frcr7 1/1 Running 0 4m 10.42.1.16 rancher2 <none>
pod/webserver-g6zqd 1/1 Running 0 5m 10.42.2.12 rancher4 <none>
...
pod/webserver-p6k7f 1/1 Running 0 4m 10.42.2.13 rancher4 <none>
pod/webserver-wjwfd 1/1 Running 0 5m 10.42.3.16 rancher3 <none>
NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR
replicaset.apps/webserver 9 9 9 5m nginx nginx:1.7.9 service=nginx
29 @stoeps Social Connections 14 #kubernetes101
Not supposed to create Pods directly or with
ReplicaSet
Use Deployments instead
nginx-deploy.yaml
Deployment
$ kubectl create -f nginx-deploy.yaml --record
$ kubectl get all
NAME READY STATUS RESTARTS AGE
pod/nginx-54f7d7ffcd-wzjnf 1/1 Running 0 1m
NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE
deployment.apps/nginx 1 1 1 1 1m
NAME DESIRED CURRENT READY AGE
replicaset.apps/nginx-54f7d7ffcd 1 1 1 1m
apiVersion: apps/v1
kind: Deployment
metadata:
name: nginx
spec:
selector:
matchLabels:
type: backend
service: nginx
template:
metadata:
labels:
type: backend
service: nginx
spec:
containers:
- name: nginx
image: nginx:1.7.9
ports:
- containerPort: 80
protocol: TCP
30 @stoeps Social Connections 14 #kubernetes101
Scale, Rollout and Undo
$ kubectl create -f nginx-deploy.yaml --record
$ kubectl apply -f nginx-deploy-scaled.yaml
$ kubectl scale deployment nginx --replicas 9 --record
$ kubectl scale deployment nginx --replicas 5 --record
$ kubectl rollout history -f nginx-deploy.yaml
$ kubectl set image -f nginx-deploy-scaled.yaml nginx=nginx:1.8.1 --record
$ kubectl rollout history -f nginx-deploy.yaml
$ kubectl rollout undo -f nginx-deploy-scaled.yaml --to-revision=1
0:00
31 @stoeps Social Connections 14 #kubernetes101
Kubernetes Networking model
all containers can communicate with all containers without NAT
all nodes can communitcate with all containers without NAT
the IP that a container sees itself as the same IP that others see it
this is provided through overlay network providers like
Flannel (Overlay network provider)
Calico (secure L3 networking and network policy provider)
Canal (unites Flannel and Calico)
Exposed ports are accessible from all containers/pods.
32 @stoeps Social Connections 14 #kubernetes101
Istio
service mesh
microservices
secure
connect
monitor
Automatic load balancing for HTTP, WebSocket and TCP traffic
Fine grained traffic control
Policy layer
Secure service-to-service communitcation in a cluster
33 @stoeps Social Connections 14 #kubernetes101
Services
Kubernetes Services provide addresses through which associated
Pods can be accessed
Services are resolved by kube-proxy
1 NodePort: available within the cluster and from outside on each node
2 explicit port, without Kubernetes creates a random one
apiVersion: v1
kind: Service
metadata:
name: nginx
spec:
type: NodePort
ports:
- port: 80
nodePort: 30001
protocol: TCP
selector:
service: nginx
1
2
34 @stoeps Social Connections 14 #kubernetes101
NodePort
Port is exposed on each Node’s IP at a static port
A ClusterIP service is automatically created
No need that the pod is running on the node!
Our nginx pod is only running on of the the three worker nodes
Check if all workers deliver the webpage

$ kubectl scale deployment nginx --replicas 1 --record
for i in 2 3 4
do
curl -s http://rancher$i.stoepslab.local | grep title
done
<title>Welcome to nginx!</title>
<title>Welcome to nginx!</title>
<title>Welcome to nginx!</title>
35 @stoeps Social Connections 14 #kubernetes101
ClusterIP
Exposes the service on a cluster-internal IP
makes the service only reachable from within the cluster
default ServiceType
36 @stoeps Social Connections 14 #kubernetes101
Ingress
Route requests to services, based on
request host
path
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: my-ingress
spec:
rules:
- host: www.stoepslab.local
http:
paths:
- backend:
serviceName: nginx
servicePort: 80
37 @stoeps Social Connections 14 #kubernetes101
Working Ingress
After adding the hostname to DNS or /etc/hosts
38 @stoeps Social Connections 14 #kubernetes101
Storage / Volumes
Docker knows a concept of volumes
More complicated on Kubernetes
Different nodes need to have access to them
Network storage
Kubernetes knows a lot of different storage types
Examples:
local, iscsi, glusterfs, hostPath, nfs
configmap, secret
different cloud providers (aws, gce …)
https://kubernetes.io/docs/concepts/storage/volumes/
39 @stoeps Social Connections 14 #kubernetes101
Persistent Volume
Persistent Volume (PV)
piece of storage in the cluster
provisioned by an administrator
PersistentVolumeClaim (PVC)
request for storage by an user (size and access mode)
PVC consume PV resources
PV have different properties
performance, backup, size
Cluster Admins need to be able to offer a variety of
PersistentVolumes

40 @stoeps Social Connections 14 #kubernetes101
StorageClass
StorageClass: a way to describe the classes of storage
different classes for
quality-of-service levels
backup policies
Reclaim Policy
Delete or Retain
Some storage classes auto provision PersistentVolumes
Heketi/Glusterfs, Rancher/Longhorn
NFS on one of your K8s nodes → single point of failure
41 @stoeps Social Connections 14 #kubernetes101
ConfigMaps
decouple configuration artifacts from image content
keep containerized applications portable
Configmaps can contain
folder/files (mainly for config/properties)
kubectl create configmap nginx-soccnx --from-file=html
spec:
containers:
- name: nginx
image: nginx:1.7.9
volumeMounts:
- name: nginx-soccnx
mountPath: /usr/share/nginx/html
volumes:
- name: nginx-soccnx
configMap:
name: nginx-soccnx
42 @stoeps Social Connections 14 #kubernetes101
ConfigMaps (2)
Value pairs
apiVersion: v1
kind: ConfigMap
metadata:
name: special-config
namespace: default
data:
SPECIAL_LEVEL: very
SPECIAL_TYPE: charm
spec:
containers:
- name: nginx-soccnx
image: alpine:latest
command: [ "/bin/sh", "-c", "env" ]
envFrom:
- configMapRef:
name: special-config
43 @stoeps Social Connections 14 #kubernetes101
ConfigMaps results
index.html in a configMap
kubectl logs nginx-soccnx
https://www.stoepslab.local
...
PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin
PWD=/
SHLVL=1
SPECIAL_LEVEL=very
SPECIAL_TYPE=charm
44 @stoeps Social Connections 14 #kubernetes101
Secrets
object that contains a small amount of sensitive data
reduces risk of accidental exposure
Secrets are base64 encoded
password.txt
$ kubectl create secret generic db-user-pass 
--from-literal=username=dbadmin 
--from-literal=password=MyGreatPassword
secret 'db-user-pass' created
$ kubectl create secret generic db-user-env 
--from-env-file=password.txt
username=dbadmin
password=myGreatPassword
45 @stoeps Social Connections 14 #kubernetes101
Get secrets
Mount secret into pod
➜ kubectl get secret db-user-env -o yaml
apiVersion: v1
data:
password: TXlHcmVhdFBhc3N3b3Jk
username: ZGJhZG1pbg==
kind: Secret
➜ kubectl get secret db-user-env -o jsonpath="{.data.password}" | base64 --decode
MyGreatPassword%
volumes:
- name: db-creds
secret:
secretName: db-user-env
defaultMode: 0444
items:
- key: username
path: username
- key: password
path: password
46 @stoeps Social Connections 14 #kubernetes101
Secrets compared with ConfigMaps
Both allow to inject content into pods
files
literal values
files with environment variables
Secrets
creates files in tmpfs → in memory files
A step towards security, but should be combined with
authorization policies
3rd party tool:
Any user with permission to run pod can mount a secret.
Hashicorp Vault

47 @stoeps Social Connections 14 #kubernetes101
Namespaces
Namespaces are a way to devide cluster resources between
multiple users
Namespaces provide a scope for names
Names of resources need to be unique within a namespace
It’s not necessary to use multiple namespaces just to seperate
different resources
use labels to distinguish resources within the same namespace
When you delete a namespace, all objects in the namespace are
deleted too!

48 @stoeps Social Connections 14 #kubernetes101
Namespace and kube-dns
You can reuse pod and service names in different namespaces
kube-dns uses podname.namespace then
Example
Namespaces are no extra security layer!
Pods can connect to services and pods in other namespaces
$ kubectl exec -it <pod> -- sh
curl http://nginx.texting:8080
curl http://nginx.production:8080
49 @stoeps Social Connections 14 #kubernetes101
kubectl config
When you use kubectl you have to add -n namespace
or --all-namespaces (works only with get)
During configuration phases it’s easier to switch the default
namespace
Very handy if you use different clusters too
$ kubectl create namespace soccnx
$ kubectl config set-context soccnx --namespace soccnx 
--cluster rancher-cluster --user admin
$ kubectl config view
$ kubectl config use-context soccnx
50 @stoeps Social Connections 14 #kubernetes101
Install additional products
51 @stoeps Social Connections 14 #kubernetes101
Helm
Kubernetes Package Manager
manage Kubernetes charts
Charts are packages of pre-configured Kubernetes resources
Main tasks
Find and use popular software packaged as Helm charts
Share your own applications as Helm charts
Create reproducible builds of your Kubernetes applications
Manage releases of Helm packages
2 parts
client (helm)
server (tiller)
52 @stoeps Social Connections 14 #kubernetes101
Examples
Install a Docker registry
Use ELK or EFK Stack for your logfiles
GUI within IBM Cloud Private or Rancher
➜ helm search elastic
➜ helm install stable/kibana
53 @stoeps Social Connections 14 #kubernetes101
Troubleshooting
54 @stoeps Social Connections 14 #kubernetes101
Get log messages
kubectl logs <podname>
kubectl logs <podname> -f
Multiple containers in your pod?
Log of a restarted pod
kubetail
kubectl logs <podname> -c <containername>
kubectl logs --previous ${POD_NAME} ${CONTAINER_NAME}
55 @stoeps Social Connections 14 #kubernetes101
Troubleshooting Pod
Get a shell in a running pod
Depending on the image:
/bin/sh, sh
/bin/bash, bash
/bin/ash, ash (alpine)
# Single container pod
kubectl exec -it shell-demo -- /bin/bash
# Pod with multiple containers
kubectl exec -it my-pod --container main-app -- /bin/bash
56 @stoeps Social Connections 14 #kubernetes101
57 @stoeps Social Connections 14 #kubernetes101
+49 173 8588719
christophstoettner
 

 christoph.stoettner@panagenda.com
 linkedin.com/in/christophstoettner
 stoeps.de

 @stoeps

More Related Content

What's hot

Cantainer CI/ CD with Kubernetes
Cantainer CI/ CD with KubernetesCantainer CI/ CD with Kubernetes
Cantainer CI/ CD with Kubernetesinwin stack
 
Monitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMonitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMartin Etmajer
 
OSS Japan 2019 service mesh bridging Kubernetes and legacy
OSS Japan 2019 service mesh bridging Kubernetes and legacyOSS Japan 2019 service mesh bridging Kubernetes and legacy
OSS Japan 2019 service mesh bridging Kubernetes and legacySteve Wong
 
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB
 
The Big Cloud native FaaS Lebowski
The Big Cloud native FaaS Lebowski The Big Cloud native FaaS Lebowski
The Big Cloud native FaaS Lebowski QAware GmbH
 
Kernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVSKernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVSDocker, Inc.
 
Docker Basics & Alfresco Content Services
Docker Basics & Alfresco Content ServicesDocker Basics & Alfresco Content Services
Docker Basics & Alfresco Content ServicesSujay Pillai
 
Tectonic Summit 2016: Kubernetes 1.5 and Beyond
Tectonic Summit 2016: Kubernetes 1.5 and BeyondTectonic Summit 2016: Kubernetes 1.5 and Beyond
Tectonic Summit 2016: Kubernetes 1.5 and BeyondCoreOS
 
Using Kubernetes for Continuous Integration and Continuous Delivery. Java2days
Using Kubernetes for Continuous Integration and Continuous Delivery. Java2daysUsing Kubernetes for Continuous Integration and Continuous Delivery. Java2days
Using Kubernetes for Continuous Integration and Continuous Delivery. Java2daysCarlos Sanchez
 
Kubernetes best practices
Kubernetes best practicesKubernetes best practices
Kubernetes best practicesBill Liu
 
Scaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container ServiceScaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container ServiceBen Hall
 
Deep dive in container service discovery
Deep dive in container service discoveryDeep dive in container service discovery
Deep dive in container service discoveryDocker, Inc.
 
Kubernetes Ingress 101
Kubernetes Ingress 101Kubernetes Ingress 101
Kubernetes Ingress 101Kublr
 
Kubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of ContainersKubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of ContainersKel Cecil
 
Data manipulation for configuration management using Ansible
Data manipulation for configuration management using AnsibleData manipulation for configuration management using Ansible
Data manipulation for configuration management using AnsibleJoel W. King
 
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...Sanjeev Rampal
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...Daniel Krook
 
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersDeploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersSyah Dwi Prihatmoko
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to KubernetesPaul Czarkowski
 
Docker for Fun and Profit
Docker for Fun and ProfitDocker for Fun and Profit
Docker for Fun and ProfitKel Cecil
 

What's hot (20)

Cantainer CI/ CD with Kubernetes
Cantainer CI/ CD with KubernetesCantainer CI/ CD with Kubernetes
Cantainer CI/ CD with Kubernetes
 
Monitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on KubernetesMonitoring, Logging and Tracing on Kubernetes
Monitoring, Logging and Tracing on Kubernetes
 
OSS Japan 2019 service mesh bridging Kubernetes and legacy
OSS Japan 2019 service mesh bridging Kubernetes and legacyOSS Japan 2019 service mesh bridging Kubernetes and legacy
OSS Japan 2019 service mesh bridging Kubernetes and legacy
 
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + KubernetesMongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
MongoDB.local Austin 2018: MongoDB Ops Manager + Kubernetes
 
The Big Cloud native FaaS Lebowski
The Big Cloud native FaaS Lebowski The Big Cloud native FaaS Lebowski
The Big Cloud native FaaS Lebowski
 
Kernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVSKernel load-balancing for Docker containers using IPVS
Kernel load-balancing for Docker containers using IPVS
 
Docker Basics & Alfresco Content Services
Docker Basics & Alfresco Content ServicesDocker Basics & Alfresco Content Services
Docker Basics & Alfresco Content Services
 
Tectonic Summit 2016: Kubernetes 1.5 and Beyond
Tectonic Summit 2016: Kubernetes 1.5 and BeyondTectonic Summit 2016: Kubernetes 1.5 and Beyond
Tectonic Summit 2016: Kubernetes 1.5 and Beyond
 
Using Kubernetes for Continuous Integration and Continuous Delivery. Java2days
Using Kubernetes for Continuous Integration and Continuous Delivery. Java2daysUsing Kubernetes for Continuous Integration and Continuous Delivery. Java2days
Using Kubernetes for Continuous Integration and Continuous Delivery. Java2days
 
Kubernetes best practices
Kubernetes best practicesKubernetes best practices
Kubernetes best practices
 
Scaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container ServiceScaling Docker Containers using Kubernetes and Azure Container Service
Scaling Docker Containers using Kubernetes and Azure Container Service
 
Deep dive in container service discovery
Deep dive in container service discoveryDeep dive in container service discovery
Deep dive in container service discovery
 
Kubernetes Ingress 101
Kubernetes Ingress 101Kubernetes Ingress 101
Kubernetes Ingress 101
 
Kubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of ContainersKubernetes - Sailing a Sea of Containers
Kubernetes - Sailing a Sea of Containers
 
Data manipulation for configuration management using Ansible
Data manipulation for configuration management using AnsibleData manipulation for configuration management using Ansible
Data manipulation for configuration management using Ansible
 
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
Cisco Live 2017: Container networking deep dive with Docker Enterprise Editio...
 
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
CAPS: What's best for deploying and managing OpenStack? Chef vs. Ansible vs. ...
 
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s ClustersDeploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
Deploy Prometheus - Grafana and EFK stack on Kubic k8s Clusters
 
A DevOps guide to Kubernetes
A DevOps guide to KubernetesA DevOps guide to Kubernetes
A DevOps guide to Kubernetes
 
Docker for Fun and Profit
Docker for Fun and ProfitDocker for Fun and Profit
Docker for Fun and Profit
 

Similar to Kubernetes Basics for Connections Admins

Kubernetes extensibility
Kubernetes extensibilityKubernetes extensibility
Kubernetes extensibilityDocker, Inc.
 
Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...
Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...
Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...Codemotion
 
Networking in Kubernetes
Networking in KubernetesNetworking in Kubernetes
Networking in KubernetesMinhan Xia
 
Kubernetes Networking
Kubernetes NetworkingKubernetes Networking
Kubernetes NetworkingCJ Cullen
 
Learn kubernetes in 90 minutes
Learn kubernetes in 90 minutesLearn kubernetes in 90 minutes
Learn kubernetes in 90 minutesLarry Cai
 
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes MeetupMetal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes MeetupLaure Vergeron
 
4K–Kubernetes with Knative, Kafka and Kamel
4K–Kubernetes with Knative, Kafka and Kamel 4K–Kubernetes with Knative, Kafka and Kamel
4K–Kubernetes with Knative, Kafka and Kamel Red Hat Developers
 
KubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipeline
KubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipelineKubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipeline
KubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipelineKubeAcademy
 
Production sec ops with kubernetes in docker
Production sec ops with kubernetes in dockerProduction sec ops with kubernetes in docker
Production sec ops with kubernetes in dockerDocker, Inc.
 
Deploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and HelmDeploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and HelmJessica Deen
 
Kubernetes Architecture and Introduction
Kubernetes Architecture and IntroductionKubernetes Architecture and Introduction
Kubernetes Architecture and IntroductionStefan Schimanski
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Ryan Jarvinen
 
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...Wojciech Barczyński
 
From dev to prod: Kubernetes on AWS (short ver.)
From dev to prod: Kubernetes on AWS (short ver.)From dev to prod: Kubernetes on AWS (short ver.)
From dev to prod: Kubernetes on AWS (short ver.)佑介 九岡
 
Cluster management with Kubernetes
Cluster management with KubernetesCluster management with Kubernetes
Cluster management with KubernetesSatnam Singh
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...Akihiro Suda
 
DCEU 18: Docker Container Networking
DCEU 18: Docker Container NetworkingDCEU 18: Docker Container Networking
DCEU 18: Docker Container NetworkingDocker, Inc.
 
Effective Platform Building with Kubernetes. Is K8S new Linux?
Effective Platform Building with Kubernetes. Is K8S new Linux?Effective Platform Building with Kubernetes. Is K8S new Linux?
Effective Platform Building with Kubernetes. Is K8S new Linux?Wojciech Barczyński
 

Similar to Kubernetes Basics for Connections Admins (20)

Kubernetes extensibility
Kubernetes extensibilityKubernetes extensibility
Kubernetes extensibility
 
Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...
Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...
Salvatore Incandela, Fabio Marinelli - Using Spinnaker to Create a Developmen...
 
kubernetes for beginners
kubernetes for beginnerskubernetes for beginners
kubernetes for beginners
 
Networking in Kubernetes
Networking in KubernetesNetworking in Kubernetes
Networking in Kubernetes
 
Kubernetes Networking
Kubernetes NetworkingKubernetes Networking
Kubernetes Networking
 
Learn kubernetes in 90 minutes
Learn kubernetes in 90 minutesLearn kubernetes in 90 minutes
Learn kubernetes in 90 minutes
 
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes MeetupMetal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
Metal-k8s presentation by Julien Girardin @ Paris Kubernetes Meetup
 
4K–Kubernetes with Knative, Kafka and Kamel
4K–Kubernetes with Knative, Kafka and Kamel 4K–Kubernetes with Knative, Kafka and Kamel
4K–Kubernetes with Knative, Kafka and Kamel
 
KubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipeline
KubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipelineKubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipeline
KubeCon EU 2016: Leveraging ephemeral namespaces in a CI/CD pipeline
 
Production sec ops with kubernetes in docker
Production sec ops with kubernetes in dockerProduction sec ops with kubernetes in docker
Production sec ops with kubernetes in docker
 
Kubernetes
KubernetesKubernetes
Kubernetes
 
Deploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and HelmDeploying Windows Apps to Kubernetes with Draft and Helm
Deploying Windows Apps to Kubernetes with Draft and Helm
 
Kubernetes Architecture and Introduction
Kubernetes Architecture and IntroductionKubernetes Architecture and Introduction
Kubernetes Architecture and Introduction
 
Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17Hands-On Introduction to Kubernetes at LISA17
Hands-On Introduction to Kubernetes at LISA17
 
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
Effective Kubernetes - Is Kubernetes the new Linux? Is the new Application Se...
 
From dev to prod: Kubernetes on AWS (short ver.)
From dev to prod: Kubernetes on AWS (short ver.)From dev to prod: Kubernetes on AWS (short ver.)
From dev to prod: Kubernetes on AWS (short ver.)
 
Cluster management with Kubernetes
Cluster management with KubernetesCluster management with Kubernetes
Cluster management with Kubernetes
 
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
20240415 [Container Plumbing Days] Usernetes Gen2 - Kubernetes in Rootless Do...
 
DCEU 18: Docker Container Networking
DCEU 18: Docker Container NetworkingDCEU 18: Docker Container Networking
DCEU 18: Docker Container Networking
 
Effective Platform Building with Kubernetes. Is K8S new Linux?
Effective Platform Building with Kubernetes. Is K8S new Linux?Effective Platform Building with Kubernetes. Is K8S new Linux?
Effective Platform Building with Kubernetes. Is K8S new Linux?
 

More from LetsConnect

Installing Component Pack 6.0.0.6
Installing Component Pack 6.0.0.6Installing Component Pack 6.0.0.6
Installing Component Pack 6.0.0.6LetsConnect
 
Oh $h@# - How to deal with emotional outbursts and hate in social situations
Oh $h@# - How to deal with emotional outbursts and hate in social situationsOh $h@# - How to deal with emotional outbursts and hate in social situations
Oh $h@# - How to deal with emotional outbursts and hate in social situationsLetsConnect
 
It is not About Connections vs Office 365 - You can have the best of the both...
It is not About Connections vs Office 365 - You can have the best of the both...It is not About Connections vs Office 365 - You can have the best of the both...
It is not About Connections vs Office 365 - You can have the best of the both...LetsConnect
 
Using ibm connections to enhance university courses
Using ibm connections to enhance university coursesUsing ibm connections to enhance university courses
Using ibm connections to enhance university coursesLetsConnect
 
IBM Connections 6 Component Pack
IBM Connections 6 Component PackIBM Connections 6 Component Pack
IBM Connections 6 Component PackLetsConnect
 
IBM Connections 6.0 CR3 New Features
IBM Connections 6.0 CR3 New FeaturesIBM Connections 6.0 CR3 New Features
IBM Connections 6.0 CR3 New FeaturesLetsConnect
 
10 years of IBM Connections
10 years of IBM Connections10 years of IBM Connections
10 years of IBM ConnectionsLetsConnect
 
IBM Collaboration Framework in action: Customer success stories
IBM Collaboration Framework in action: Customer success storiesIBM Collaboration Framework in action: Customer success stories
IBM Collaboration Framework in action: Customer success storiesLetsConnect
 
Design for the Digital Workspace
Design for the Digital WorkspaceDesign for the Digital Workspace
Design for the Digital WorkspaceLetsConnect
 
New Ways to Deliver Business Outcomes with INtelligent Workstream Collaboration
New Ways to Deliver Business Outcomes with INtelligent Workstream CollaborationNew Ways to Deliver Business Outcomes with INtelligent Workstream Collaboration
New Ways to Deliver Business Outcomes with INtelligent Workstream CollaborationLetsConnect
 
Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...
Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...
Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...LetsConnect
 
There is nothing more practical than a good theory
There is nothing more practical than a good theoryThere is nothing more practical than a good theory
There is nothing more practical than a good theoryLetsConnect
 
Intelligent Collaboration driving Digital Transformation
Intelligent Collaboration driving Digital TransformationIntelligent Collaboration driving Digital Transformation
Intelligent Collaboration driving Digital TransformationLetsConnect
 
Developing IBM Connections Community Apps using Domino
Developing IBM Connections Community Apps using DominoDeveloping IBM Connections Community Apps using Domino
Developing IBM Connections Community Apps using DominoLetsConnect
 
IBM Connections - Have it YOUR Way!
IBM Connections - Have it YOUR Way!IBM Connections - Have it YOUR Way!
IBM Connections - Have it YOUR Way!LetsConnect
 
You Get What You Give
You Get What You GiveYou Get What You Give
You Get What You GiveLetsConnect
 
Building Custom ibm Watson Workspace Templates to make you and your team more...
Building Custom ibm Watson Workspace Templates to make you and your team more...Building Custom ibm Watson Workspace Templates to make you and your team more...
Building Custom ibm Watson Workspace Templates to make you and your team more...LetsConnect
 
ICS INtegration with Node-RED and Open Source
ICS INtegration with Node-RED and Open SourceICS INtegration with Node-RED and Open Source
ICS INtegration with Node-RED and Open SourceLetsConnect
 
Communities as the fundament of social learning
Communities as the fundament of social learningCommunities as the fundament of social learning
Communities as the fundament of social learningLetsConnect
 
It's not IBM or O365 - Integrate and Embrace
It's not IBM or O365 - Integrate and EmbraceIt's not IBM or O365 - Integrate and Embrace
It's not IBM or O365 - Integrate and EmbraceLetsConnect
 

More from LetsConnect (20)

Installing Component Pack 6.0.0.6
Installing Component Pack 6.0.0.6Installing Component Pack 6.0.0.6
Installing Component Pack 6.0.0.6
 
Oh $h@# - How to deal with emotional outbursts and hate in social situations
Oh $h@# - How to deal with emotional outbursts and hate in social situationsOh $h@# - How to deal with emotional outbursts and hate in social situations
Oh $h@# - How to deal with emotional outbursts and hate in social situations
 
It is not About Connections vs Office 365 - You can have the best of the both...
It is not About Connections vs Office 365 - You can have the best of the both...It is not About Connections vs Office 365 - You can have the best of the both...
It is not About Connections vs Office 365 - You can have the best of the both...
 
Using ibm connections to enhance university courses
Using ibm connections to enhance university coursesUsing ibm connections to enhance university courses
Using ibm connections to enhance university courses
 
IBM Connections 6 Component Pack
IBM Connections 6 Component PackIBM Connections 6 Component Pack
IBM Connections 6 Component Pack
 
IBM Connections 6.0 CR3 New Features
IBM Connections 6.0 CR3 New FeaturesIBM Connections 6.0 CR3 New Features
IBM Connections 6.0 CR3 New Features
 
10 years of IBM Connections
10 years of IBM Connections10 years of IBM Connections
10 years of IBM Connections
 
IBM Collaboration Framework in action: Customer success stories
IBM Collaboration Framework in action: Customer success storiesIBM Collaboration Framework in action: Customer success stories
IBM Collaboration Framework in action: Customer success stories
 
Design for the Digital Workspace
Design for the Digital WorkspaceDesign for the Digital Workspace
Design for the Digital Workspace
 
New Ways to Deliver Business Outcomes with INtelligent Workstream Collaboration
New Ways to Deliver Business Outcomes with INtelligent Workstream CollaborationNew Ways to Deliver Business Outcomes with INtelligent Workstream Collaboration
New Ways to Deliver Business Outcomes with INtelligent Workstream Collaboration
 
Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...
Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...
Power up your Salesforce Opportunities by using IBM Watson Workspace as your ...
 
There is nothing more practical than a good theory
There is nothing more practical than a good theoryThere is nothing more practical than a good theory
There is nothing more practical than a good theory
 
Intelligent Collaboration driving Digital Transformation
Intelligent Collaboration driving Digital TransformationIntelligent Collaboration driving Digital Transformation
Intelligent Collaboration driving Digital Transformation
 
Developing IBM Connections Community Apps using Domino
Developing IBM Connections Community Apps using DominoDeveloping IBM Connections Community Apps using Domino
Developing IBM Connections Community Apps using Domino
 
IBM Connections - Have it YOUR Way!
IBM Connections - Have it YOUR Way!IBM Connections - Have it YOUR Way!
IBM Connections - Have it YOUR Way!
 
You Get What You Give
You Get What You GiveYou Get What You Give
You Get What You Give
 
Building Custom ibm Watson Workspace Templates to make you and your team more...
Building Custom ibm Watson Workspace Templates to make you and your team more...Building Custom ibm Watson Workspace Templates to make you and your team more...
Building Custom ibm Watson Workspace Templates to make you and your team more...
 
ICS INtegration with Node-RED and Open Source
ICS INtegration with Node-RED and Open SourceICS INtegration with Node-RED and Open Source
ICS INtegration with Node-RED and Open Source
 
Communities as the fundament of social learning
Communities as the fundament of social learningCommunities as the fundament of social learning
Communities as the fundament of social learning
 
It's not IBM or O365 - Integrate and Embrace
It's not IBM or O365 - Integrate and EmbraceIt's not IBM or O365 - Integrate and Embrace
It's not IBM or O365 - Integrate and Embrace
 

Recently uploaded

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...panagenda
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is insideshinachiaurasa2
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastPapp Krisztián
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️Delhi Call girls
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrainmasabamasaba
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdfPearlKirahMaeRagusta1
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...masabamasaba
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park masabamasaba
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durbanmasabamasaba
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...Health
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...masabamasaba
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfVishalKumarJha10
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsArshad QA
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfonteinmasabamasaba
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension AidPhilip Schwarz
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...Shane Coughlan
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfonteinmasabamasaba
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024Mind IT Systems
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationShrmpro
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...masabamasaba
 

Recently uploaded (20)

W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
W01_panagenda_Navigating-the-Future-with-The-Hitchhikers-Guide-to-Notes-and-D...
 
The title is not connected to what is inside
The title is not connected to what is insideThe title is not connected to what is inside
The title is not connected to what is inside
 
Architecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the pastArchitecture decision records - How not to get lost in the past
Architecture decision records - How not to get lost in the past
 
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
call girls in Vaishali (Ghaziabad) 🔝 >༒8448380779 🔝 genuine Escort Service 🔝✔️✔️
 
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
%in Bahrain+277-882-255-28 abortion pills for sale in Bahrain
 
Define the academic and professional writing..pdf
Define the academic and professional writing..pdfDefine the academic and professional writing..pdf
Define the academic and professional writing..pdf
 
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
%+27788225528 love spells in Atlanta Psychic Readings, Attraction spells,Brin...
 
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park %in kempton park+277-882-255-28 abortion pills for sale in kempton park
%in kempton park+277-882-255-28 abortion pills for sale in kempton park
 
%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban%in Durban+277-882-255-28 abortion pills for sale in Durban
%in Durban+277-882-255-28 abortion pills for sale in Durban
 
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
+971565801893>>SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHAB...
 
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
%+27788225528 love spells in Vancouver Psychic Readings, Attraction spells,Br...
 
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdfintroduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
introduction-to-automotive Andoid os-csimmonds-ndctechtown-2021.pdf
 
Software Quality Assurance Interview Questions
Software Quality Assurance Interview QuestionsSoftware Quality Assurance Interview Questions
Software Quality Assurance Interview Questions
 
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
%in kaalfontein+277-882-255-28 abortion pills for sale in kaalfontein
 
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
Direct Style Effect Systems -The Print[A] Example- A Comprehension AidDirect Style Effect Systems -The Print[A] Example- A Comprehension Aid
Direct Style Effect Systems - The Print[A] Example - A Comprehension Aid
 
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
OpenChain - The Ramifications of ISO/IEC 5230 and ISO/IEC 18974 for Legal Pro...
 
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
%in Stilfontein+277-882-255-28 abortion pills for sale in Stilfontein
 
10 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 202410 Trends Likely to Shape Enterprise Technology in 2024
10 Trends Likely to Shape Enterprise Technology in 2024
 
SHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions PresentationSHRMPro HRMS Software Solutions Presentation
SHRMPro HRMS Software Solutions Presentation
 
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
%+27788225528 love spells in new york Psychic Readings, Attraction spells,Bri...
 

Kubernetes Basics for Connections Admins

  • 1. 1 @stoeps Social Connections 14 #kubernetes101 Kubernetes Basics for Connections Admins Christoph Stoettner +49 173 8588719 christoph.stoettner@panagenda.com
  • 2. 2 @stoeps Social Connections 14 #kubernetes101
  • 3. 3 @stoeps Social Connections 14 #kubernetes101 +49 173 8588719 christophstoettner Christoph Stoettner Senior Consultant at IBM Domino since 1999 IBM Connections since 2009 Experience in Migrations, Deployments Performance Analysis Focusing in Monitoring, Security panagenda ConnectionsExpert   christoph.stoettner@panagenda.com  linkedin.com/in/christophstoettner  stoeps.de   @stoeps panagenda
  • 4. 4 @stoeps Social Connections 14 #kubernetes101 Agenda History Kubernetes Infrastructure kubectl
  • 5. 5 @stoeps Social Connections 14 #kubernetes101 Why do we talk about Kubernetes? TPFKAP The Product Formerly Known As Pink First rumours end 2016 Announced during Think 2017 (February 2017) in San Francisco Migration of the monolithic WebSphere stack of IBM Connections Lots of advantages Zero Downtime updates More frequent updates (Continous Delivery) Moving away from Java (expensive Developers) Drop the support of three different Database engines 
  • 6. 6 @stoeps Social Connections 14 #kubernetes101 History - Borg System 2003 / 2004 First unified container-management system Developed at Google Based on Linux control groups (cgroups) Container support in the Linux kernel became available Google contributed much of this code to the kernel Isolation between latency-sensitive user-facing services and CPU-hungry batch processes 
  • 7. 7 @stoeps Social Connections 14 #kubernetes101 History - Omega 2013 Offspring of Borg Improve the software engineering of the Borg ecosystem Built from ground up more consistent, principled architecture Seperate components which acted as peers Multiple schedulers No funneling through centralized master
  • 8. 8 @stoeps Social Connections 14 #kubernetes101 History Kubernetes June 2014 Third container management system developed at Google Conceived and developed when external developers became interested in Linux containers Google released the code as Opensource to the Cloud Native Computing Foundation (CNCF) Around six weeks after the release: Microsoft, IBM, Red Hat and Docker joined the Community https://cloudplatform.googleblog.com/2014/07/welcome-microsoft- redhat-ibm-docker-and-more-to-the-kubernetes-community.html
  • 9. 9 @stoeps Social Connections 14 #kubernetes101 Overview
  • 10. 10 @stoeps Social Connections 14 #kubernetes101 Dynamic Timeframe
  • 11. 11 @stoeps Social Connections 14 #kubernetes101 Kubernetes
  • 12. 12 @stoeps Social Connections 14 #kubernetes101 Kubernetes Architecture
  • 13. 13 @stoeps Social Connections 14 #kubernetes101 Linux Kernel Namespaces lightweight process virtualization Isolation: enable a process to have different views of the system than other processes Much like Zones in Solaris No hypervisor layer! cgroups (control groups) Resource Management providing a generic process-grouping framework Cgroups is not dependent upon namespaces.
  • 14. 14 @stoeps Social Connections 14 #kubernetes101 Container A container is a Linux userspace process LXC (Linux Containers) Operating System Level virtualization Docker Linux container engine Initially written in Python, later in Go Released by dotCloud 2013 Docker < 0.9 used LXC to create and manage containers
  • 15. 15 @stoeps Social Connections 14 #kubernetes101 Pods Pods are the smallest unit in Kubernetes Have a relatively short life-span Born, and destroyed They are never healed system heals itself by creating new Pods by terminating those that are unhealthy system is long-living Pods are not 
  • 16. 16 @stoeps Social Connections 14 #kubernetes101 YAML with VIM .vimrc set cursorline " highlight current line hi CursorLine cterm=NONE ctermbg=235 ctermfg=NONE guifg=gray guibg=black set cursorcolumn " vertical cursor line hi CursorColumn ctermfg=NONE ctermbg=235 cterm=NONE guifg=gray guibg=black gui=bold
  • 17. 17 @stoeps Social Connections 14 #kubernetes101 YAML → or use a ruler
  • 18. 18 @stoeps Social Connections 14 #kubernetes101 Simple Pods Run a simple pod Quick and dirty! Deprecated! kubectl run db --image mongo 
  • 19. 19 @stoeps Social Connections 14 #kubernetes101 Simple Pod - what happend? Kubernetes automatically creates ReplicaSet Deployment
  • 20. 20 @stoeps Social Connections 14 #kubernetes101 Create a pod with a yaml file nginx.yaml apiVersion: v1 kind: Pod metadata: name: nginx spec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort: 80 $ kubectl create -f nginx.yaml $ kubectl get all -o wide NAME READY STATUS RESTARTS AGE IP NODE pod/nginx 1/1 Running 0 4m 10.42.1.13 rancher2
  • 21. 21 @stoeps Social Connections 14 #kubernetes101 Overview creating pod kubectl create pod -f pod.yml
  • 22. 22 @stoeps Social Connections 14 #kubernetes101 Liveness Check 1 Check path - example with non existend path 2 Wait 5 seconds before performing the first probe 3 Timeout (no answer for 2 seconds → error) 4 Liveness check all 5 seconds 5 Kubernetes tries n times before giving up ... - containerPort: 80 env: - name: nginx value: localhost livenessProbe: httpGet: path: / port: 80 initialDelaySeconds: 5 timeoutSeconds: 2 periodSeconds: 5 failureThreshold: 1 1 2 3 4 5
  • 23. 23 @stoeps Social Connections 14 #kubernetes101 Automatic restart 0:00
  • 24. 24 @stoeps Social Connections 14 #kubernetes101 Check Events $ kubectl describe nginx-broken
  • 25. 25 @stoeps Social Connections 14 #kubernetes101 Pods vs Container Pod is smallest deployment in Kubernetes A pod contains minimum one container (Docker or RKT) Can contain multiple containers Not very common Most pods have one container Easier to scale A pod runs on one node and shares resources
  • 26. 26 @stoeps Social Connections 14 #kubernetes101 ReplicaSet as a self-healing mechanism Pods associated with a ReplicaSet are guaranteed to run ReplicaSet’s primary function is to ensure that the specified number of replicas of a service are (almost) always running. ReplicaSet 
  • 27. 27 @stoeps Social Connections 14 #kubernetes101 ReplicaSet (2) 1 --record saves history 2 --save-config enables the use of kubectl apply, so we can change the ReplicaSet $ kubectl create -f nginx-rs.yaml --record --save-config $ kubectl get pods NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE pod/webserver-79r7j 1/1 Running 0 15m 10.42.3.15 rancher3 <none> pod/webserver-dg5bp 1/1 Running 0 15m 10.42.2.11 rancher4 <none> pod/webserver-rmkgx 1/1 Running 0 15m 10.42.1.14 rancher2 <none> NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR replicaset.apps/webserver 3 3 3 15m nginx nginx:1.7.9 service=nginx,type=backen 1 2
  • 28. 28 @stoeps Social Connections 14 #kubernetes101 ReplicaSet Scale Change Replicas to 9 Apply file ... spec: replicas: 9 $ kubectl apply -f nginx-rs-scaled.yaml NAME READY STATUS RESTARTS AGE IP NODE NOMINATED NODE pod/webserver-bw259 1/1 Running 0 5m 10.42.1.15 rancher2 <none> pod/webserver-frcr7 1/1 Running 0 4m 10.42.1.16 rancher2 <none> pod/webserver-g6zqd 1/1 Running 0 5m 10.42.2.12 rancher4 <none> ... pod/webserver-p6k7f 1/1 Running 0 4m 10.42.2.13 rancher4 <none> pod/webserver-wjwfd 1/1 Running 0 5m 10.42.3.16 rancher3 <none> NAME DESIRED CURRENT READY AGE CONTAINERS IMAGES SELECTOR replicaset.apps/webserver 9 9 9 5m nginx nginx:1.7.9 service=nginx
  • 29. 29 @stoeps Social Connections 14 #kubernetes101 Not supposed to create Pods directly or with ReplicaSet Use Deployments instead nginx-deploy.yaml Deployment $ kubectl create -f nginx-deploy.yaml --record $ kubectl get all NAME READY STATUS RESTARTS AGE pod/nginx-54f7d7ffcd-wzjnf 1/1 Running 0 1m NAME DESIRED CURRENT UP-TO-DATE AVAILABLE AGE deployment.apps/nginx 1 1 1 1 1m NAME DESIRED CURRENT READY AGE replicaset.apps/nginx-54f7d7ffcd 1 1 1 1m apiVersion: apps/v1 kind: Deployment metadata: name: nginx spec: selector: matchLabels: type: backend service: nginx template: metadata: labels: type: backend service: nginx spec: containers: - name: nginx image: nginx:1.7.9 ports: - containerPort: 80 protocol: TCP
  • 30. 30 @stoeps Social Connections 14 #kubernetes101 Scale, Rollout and Undo $ kubectl create -f nginx-deploy.yaml --record $ kubectl apply -f nginx-deploy-scaled.yaml $ kubectl scale deployment nginx --replicas 9 --record $ kubectl scale deployment nginx --replicas 5 --record $ kubectl rollout history -f nginx-deploy.yaml $ kubectl set image -f nginx-deploy-scaled.yaml nginx=nginx:1.8.1 --record $ kubectl rollout history -f nginx-deploy.yaml $ kubectl rollout undo -f nginx-deploy-scaled.yaml --to-revision=1 0:00
  • 31. 31 @stoeps Social Connections 14 #kubernetes101 Kubernetes Networking model all containers can communicate with all containers without NAT all nodes can communitcate with all containers without NAT the IP that a container sees itself as the same IP that others see it this is provided through overlay network providers like Flannel (Overlay network provider) Calico (secure L3 networking and network policy provider) Canal (unites Flannel and Calico) Exposed ports are accessible from all containers/pods.
  • 32. 32 @stoeps Social Connections 14 #kubernetes101 Istio service mesh microservices secure connect monitor Automatic load balancing for HTTP, WebSocket and TCP traffic Fine grained traffic control Policy layer Secure service-to-service communitcation in a cluster
  • 33. 33 @stoeps Social Connections 14 #kubernetes101 Services Kubernetes Services provide addresses through which associated Pods can be accessed Services are resolved by kube-proxy 1 NodePort: available within the cluster and from outside on each node 2 explicit port, without Kubernetes creates a random one apiVersion: v1 kind: Service metadata: name: nginx spec: type: NodePort ports: - port: 80 nodePort: 30001 protocol: TCP selector: service: nginx 1 2
  • 34. 34 @stoeps Social Connections 14 #kubernetes101 NodePort Port is exposed on each Node’s IP at a static port A ClusterIP service is automatically created No need that the pod is running on the node! Our nginx pod is only running on of the the three worker nodes Check if all workers deliver the webpage  $ kubectl scale deployment nginx --replicas 1 --record for i in 2 3 4 do curl -s http://rancher$i.stoepslab.local | grep title done <title>Welcome to nginx!</title> <title>Welcome to nginx!</title> <title>Welcome to nginx!</title>
  • 35. 35 @stoeps Social Connections 14 #kubernetes101 ClusterIP Exposes the service on a cluster-internal IP makes the service only reachable from within the cluster default ServiceType
  • 36. 36 @stoeps Social Connections 14 #kubernetes101 Ingress Route requests to services, based on request host path apiVersion: extensions/v1beta1 kind: Ingress metadata: name: my-ingress spec: rules: - host: www.stoepslab.local http: paths: - backend: serviceName: nginx servicePort: 80
  • 37. 37 @stoeps Social Connections 14 #kubernetes101 Working Ingress After adding the hostname to DNS or /etc/hosts
  • 38. 38 @stoeps Social Connections 14 #kubernetes101 Storage / Volumes Docker knows a concept of volumes More complicated on Kubernetes Different nodes need to have access to them Network storage Kubernetes knows a lot of different storage types Examples: local, iscsi, glusterfs, hostPath, nfs configmap, secret different cloud providers (aws, gce …) https://kubernetes.io/docs/concepts/storage/volumes/
  • 39. 39 @stoeps Social Connections 14 #kubernetes101 Persistent Volume Persistent Volume (PV) piece of storage in the cluster provisioned by an administrator PersistentVolumeClaim (PVC) request for storage by an user (size and access mode) PVC consume PV resources PV have different properties performance, backup, size Cluster Admins need to be able to offer a variety of PersistentVolumes 
  • 40. 40 @stoeps Social Connections 14 #kubernetes101 StorageClass StorageClass: a way to describe the classes of storage different classes for quality-of-service levels backup policies Reclaim Policy Delete or Retain Some storage classes auto provision PersistentVolumes Heketi/Glusterfs, Rancher/Longhorn NFS on one of your K8s nodes → single point of failure
  • 41. 41 @stoeps Social Connections 14 #kubernetes101 ConfigMaps decouple configuration artifacts from image content keep containerized applications portable Configmaps can contain folder/files (mainly for config/properties) kubectl create configmap nginx-soccnx --from-file=html spec: containers: - name: nginx image: nginx:1.7.9 volumeMounts: - name: nginx-soccnx mountPath: /usr/share/nginx/html volumes: - name: nginx-soccnx configMap: name: nginx-soccnx
  • 42. 42 @stoeps Social Connections 14 #kubernetes101 ConfigMaps (2) Value pairs apiVersion: v1 kind: ConfigMap metadata: name: special-config namespace: default data: SPECIAL_LEVEL: very SPECIAL_TYPE: charm spec: containers: - name: nginx-soccnx image: alpine:latest command: [ "/bin/sh", "-c", "env" ] envFrom: - configMapRef: name: special-config
  • 43. 43 @stoeps Social Connections 14 #kubernetes101 ConfigMaps results index.html in a configMap kubectl logs nginx-soccnx https://www.stoepslab.local ... PATH=/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/bin PWD=/ SHLVL=1 SPECIAL_LEVEL=very SPECIAL_TYPE=charm
  • 44. 44 @stoeps Social Connections 14 #kubernetes101 Secrets object that contains a small amount of sensitive data reduces risk of accidental exposure Secrets are base64 encoded password.txt $ kubectl create secret generic db-user-pass --from-literal=username=dbadmin --from-literal=password=MyGreatPassword secret 'db-user-pass' created $ kubectl create secret generic db-user-env --from-env-file=password.txt username=dbadmin password=myGreatPassword
  • 45. 45 @stoeps Social Connections 14 #kubernetes101 Get secrets Mount secret into pod ➜ kubectl get secret db-user-env -o yaml apiVersion: v1 data: password: TXlHcmVhdFBhc3N3b3Jk username: ZGJhZG1pbg== kind: Secret ➜ kubectl get secret db-user-env -o jsonpath="{.data.password}" | base64 --decode MyGreatPassword% volumes: - name: db-creds secret: secretName: db-user-env defaultMode: 0444 items: - key: username path: username - key: password path: password
  • 46. 46 @stoeps Social Connections 14 #kubernetes101 Secrets compared with ConfigMaps Both allow to inject content into pods files literal values files with environment variables Secrets creates files in tmpfs → in memory files A step towards security, but should be combined with authorization policies 3rd party tool: Any user with permission to run pod can mount a secret. Hashicorp Vault 
  • 47. 47 @stoeps Social Connections 14 #kubernetes101 Namespaces Namespaces are a way to devide cluster resources between multiple users Namespaces provide a scope for names Names of resources need to be unique within a namespace It’s not necessary to use multiple namespaces just to seperate different resources use labels to distinguish resources within the same namespace When you delete a namespace, all objects in the namespace are deleted too! 
  • 48. 48 @stoeps Social Connections 14 #kubernetes101 Namespace and kube-dns You can reuse pod and service names in different namespaces kube-dns uses podname.namespace then Example Namespaces are no extra security layer! Pods can connect to services and pods in other namespaces $ kubectl exec -it <pod> -- sh curl http://nginx.texting:8080 curl http://nginx.production:8080
  • 49. 49 @stoeps Social Connections 14 #kubernetes101 kubectl config When you use kubectl you have to add -n namespace or --all-namespaces (works only with get) During configuration phases it’s easier to switch the default namespace Very handy if you use different clusters too $ kubectl create namespace soccnx $ kubectl config set-context soccnx --namespace soccnx --cluster rancher-cluster --user admin $ kubectl config view $ kubectl config use-context soccnx
  • 50. 50 @stoeps Social Connections 14 #kubernetes101 Install additional products
  • 51. 51 @stoeps Social Connections 14 #kubernetes101 Helm Kubernetes Package Manager manage Kubernetes charts Charts are packages of pre-configured Kubernetes resources Main tasks Find and use popular software packaged as Helm charts Share your own applications as Helm charts Create reproducible builds of your Kubernetes applications Manage releases of Helm packages 2 parts client (helm) server (tiller)
  • 52. 52 @stoeps Social Connections 14 #kubernetes101 Examples Install a Docker registry Use ELK or EFK Stack for your logfiles GUI within IBM Cloud Private or Rancher ➜ helm search elastic ➜ helm install stable/kibana
  • 53. 53 @stoeps Social Connections 14 #kubernetes101 Troubleshooting
  • 54. 54 @stoeps Social Connections 14 #kubernetes101 Get log messages kubectl logs <podname> kubectl logs <podname> -f Multiple containers in your pod? Log of a restarted pod kubetail kubectl logs <podname> -c <containername> kubectl logs --previous ${POD_NAME} ${CONTAINER_NAME}
  • 55. 55 @stoeps Social Connections 14 #kubernetes101 Troubleshooting Pod Get a shell in a running pod Depending on the image: /bin/sh, sh /bin/bash, bash /bin/ash, ash (alpine) # Single container pod kubectl exec -it shell-demo -- /bin/bash # Pod with multiple containers kubectl exec -it my-pod --container main-app -- /bin/bash
  • 56. 56 @stoeps Social Connections 14 #kubernetes101
  • 57. 57 @stoeps Social Connections 14 #kubernetes101 +49 173 8588719 christophstoettner     christoph.stoettner@panagenda.com  linkedin.com/in/christophstoettner  stoeps.de   @stoeps