SlideShare a Scribd company logo
1 of 26
Download to read offline
Organizzato da:
CoreTech Summit 2020 | LIVE
DOCKER E
KUBERNETES PER I
SISTEMISTI E
PROFESSIONISTI IT
Di Yefry Figueroa
$whoami
Yefry Figueroa
Consulente IT, principalmente in ambito cloud, microservizi
Lavoro nell’IT da 13 anni. Come sistemista linux dal 2013
Lavoro con container e microservizi dal 2015
Gestisco centinai di container in produzione
Yefry Figueroa
www.figueroa.it
Agenda
Un passo indietro
Parte 1
Cos’è Docker?
VM vs Container Docker
Architettura e componenti Docker
Demo Docker
Cos’è Kubernetes?
Parte 2
Componenti Cluster Kubernetes
Pods, Services, Deployments
Come creiamo un Cluster?
Demo Kubernetes
Yefry Figueroa
Slide Break
C’era una volta…
Yefry Figueroa
Slide Break
Siamo evoluti con la virtualizzazione
Yefry Figueroa
E siamo arrivati ai container
Docker
Yefry Figueroa
Cos’è
È una tecnologia basata su container
Linux che ci permette di creare,
distribuire, testare ed eseguire
applicazioni in modo facile e veloce.
Yefry Figueroa
Cos’è
È un’unità standard di software che
impacchetta il codice e tutte le sue
dipendenze in modo che
l’applicazione venga eseguita a
prescindere dall’ambiente e in
maniera rapida e affidabile.
un container
Yefry Figueroa
Virtual Machine vs Container
• Virtualizzano l’hardware
• Occupano molto più spazio. Solitamente qualche GBs.
• Meno portabili e più lente al boot
• Virtualizzano il sistema operativo
• Una immagine di un container solitamente occupa pocchi MBs
• Sono più portatili ed efficienti
Yefry Figueroa
I Container Docker sono ovunque
Yefry Figueroa
Architettura e componenti Docker
Yefry Figueroa
DEMO:
webserver up and running
Yefry Figueroa
docker run –d –p 80:80 nginx
Yefry Figueroa
Ok, tutto bello ma …
Yefry Figueroa
Ci sono un po’ di questioni
ancora da risolvere:
- scalare e distribuire la nostra applicazione?
- creare un sistema completo, affidabile, scalabile e distribuito?
- gestire e orchestrare tanti container?
Come facciamo a
Yefry Figueroa
Per fare tutto ciò ci serve un
cluster Kubernetes
Yefry Figueroa
Cos’è
È un orchestratore open source per la
gestione e distribuzione di applicazioni a
container.
E’ stato sviluppato originariamente da
Google.
kubernetes?
Yefry Figueroa
Componenti di un cluster
Kubernetes
Yefry Figueroa
Componenti di un cluster Kubernetes
per Produzione
Yefry Figueroa
Pod
È un gruppo di uno o più container
che condividono la rete, lo storage e le
direttive per eseguire i container.
Service
Fornisce load balancing, naming e
discovery. Permette di esporre
un'applicazione in esecuzione su un
set di pod come servizio di rete.
Namespace
È un cluster virtuale all’interno del
cluster fisico. Fornisce isolamento e
controllo degli accessi.
Alcuni
Concetti
Deployment
Fornisce aggiornamenti dichiarativi.
Controlla lo stato attuale
dell’applicazione con quello desiderato
ed esegue il deploy in base al risultato.
kubectl
È un tool da riga di comando che ci
permette di controllare i cluster
Kubernetes
Yefry Figueroa
05
6 GKE
EKS
IBM CKS
AKS
DOKS
Kubernetes sui top Public Cloud
Provider
Yefry Figueroa
Minikube kind K3S
Kubeadm kops Rancher
Locale
Produzione
Kubernetes on-premise
Development
Small clusters
Docker Desktop Microk8s K3D
VMware ci riprova con Tanzu
Yefry Figueroa
DEMO:
webserver up and running
Yefry Figueroa
kubectl create deployment myApp –image=nginx:1.18.0
Yefry Figueroa
kubectl expose deployment myApp –type=NodePort –port=8080
1. apiVersion: v1
2. kind: Service
3. metadata:
4. name: service-nginx
5. spec:
6. type: NodePort
7. selector:
8. app: nginx
9. ports:
10. - port: 80
11. targetPort: 80
12. nodePort: 30000
service.yaml
1. apiVersion: apps/v1
2. kind: Deployment
3. metadata:
4. name: nginx-deployment
5. labels:
6. app: nginx
7. spec:
8. replicas: 2
9. selector:
10. matchLabels:
11. app: nginx
12. template:
13. metadata:
14. labels:
15. app: nginx
16. spec:
17. containers:
18. - name: nginx
19. image: nginx:1.18.0
20. ports:
21. - containerPort: 80
deployment.yaml
Yefry Figueroa
- Esecuzione deployment
- Rimozione di un pod
- Dashboard
- Scaling
DEMO:
info@figueroa.it
Yefry Figueroa
Gracias!
Ringraziamento speciale a Coretech

More Related Content

What's hot

Monitoring Applications in AKS
Monitoring Applications in AKSMonitoring Applications in AKS
Monitoring Applications in AKSGiuliano Latini
 
Nat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazioneNat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazioneGiuliano Latini
 
.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il MobilePietro Libro
 
DevOpsConf2021 - GitOps and best practices for cloud native CI/CD
DevOpsConf2021 - GitOps and best practices for cloud native CI/CDDevOpsConf2021 - GitOps and best practices for cloud native CI/CD
DevOpsConf2021 - GitOps and best practices for cloud native CI/CDAntonio Liccardi
 
Deploy & Run on Azure App Service
Deploy & Run on Azure App ServiceDeploy & Run on Azure App Service
Deploy & Run on Azure App ServiceAndrea Dottor
 
Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...
Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...
Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...Aruba S.p.A.
 
festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...
festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...
festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...festival ICT 2016
 
Continuous Delivery da zero a rilascio con un clic
Continuous Delivery da zero a rilascio con un clicContinuous Delivery da zero a rilascio con un clic
Continuous Delivery da zero a rilascio con un clicMichele Ferracin
 
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniBackdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniSalvatore Lentini
 

What's hot (12)

Monitoring Applications in AKS
Monitoring Applications in AKSMonitoring Applications in AKS
Monitoring Applications in AKS
 
Nat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazioneNat come esporre servizi https senza esporre l'applicazione
Nat come esporre servizi https senza esporre l'applicazione
 
.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile.NET Core, ASP.NET Core e Linux per il Mobile
.NET Core, ASP.NET Core e Linux per il Mobile
 
DevOpsConf2021 - GitOps and best practices for cloud native CI/CD
DevOpsConf2021 - GitOps and best practices for cloud native CI/CDDevOpsConf2021 - GitOps and best practices for cloud native CI/CD
DevOpsConf2021 - GitOps and best practices for cloud native CI/CD
 
Deploy & Run on Azure App Service
Deploy & Run on Azure App ServiceDeploy & Run on Azure App Service
Deploy & Run on Azure App Service
 
Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...
Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...
Con Aruba, a lezione di cloud #lezione 29: 'GitLab e Cloud Server Smart - Ins...
 
festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...
festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...
festival ICT 2013: Versatilità del Cloud Computing: dalle APP al Disaster Rec...
 
Introduzione a .Net Core
Introduzione a .Net CoreIntroduzione a .Net Core
Introduzione a .Net Core
 
Introduzione A Docker
Introduzione A DockerIntroduzione A Docker
Introduzione A Docker
 
Cenni su SSL/TLS Heartbleed
Cenni su SSL/TLS HeartbleedCenni su SSL/TLS Heartbleed
Cenni su SSL/TLS Heartbleed
 
Continuous Delivery da zero a rilascio con un clic
Continuous Delivery da zero a rilascio con un clicContinuous Delivery da zero a rilascio con un clic
Continuous Delivery da zero a rilascio con un clic
 
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioniBackdoor Coding: Analisi di una semplice backdoor e prime applicazioni
Backdoor Coding: Analisi di una semplice backdoor e prime applicazioni
 

Similar to Docker e Kubernetes per professionisti IT

Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e KubernetesWorkshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetesblexin
 
Meetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e KubernetesMeetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e Kubernetesdotnetcode
 
Osd 2016 Middleware Track
Osd 2016 Middleware TrackOsd 2016 Middleware Track
Osd 2016 Middleware TrackUgo Landini
 
Infrastructure as code: Kubernetes on ACS
Infrastructure as code: Kubernetes on ACSInfrastructure as code: Kubernetes on ACS
Infrastructure as code: Kubernetes on ACSNucleode Srl
 
Aruba, Dell e Intel: una partnership d'eccezione
Aruba, Dell e Intel: una partnership d'eccezioneAruba, Dell e Intel: una partnership d'eccezione
Aruba, Dell e Intel: una partnership d'eccezioneAruba S.p.A.
 
Docker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptx
Docker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptxDocker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptx
Docker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptxGiuliano Latini
 
Docker Fudamentals
Docker FudamentalsDocker Fudamentals
Docker Fudamentalsmvetro
 
ASP.NET Core 2 e Docker
ASP.NET Core 2 e DockerASP.NET Core 2 e Docker
ASP.NET Core 2 e DockerLuca Congiu
 
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...Giulio Vian
 
Docker vs Virtualizzazioni
Docker vs VirtualizzazioniDocker vs Virtualizzazioni
Docker vs VirtualizzazioniGiuliano Latini
 
MySQL Day Milano 2018 - Le architetture a microservizi
MySQL Day Milano 2018 - Le architetture a microserviziMySQL Day Milano 2018 - Le architetture a microservizi
MySQL Day Milano 2018 - Le architetture a microserviziPar-Tec S.p.A.
 
Linux@Azure, l'altra metà del cielo.
Linux@Azure, l'altra metà del cielo.Linux@Azure, l'altra metà del cielo.
Linux@Azure, l'altra metà del cielo.Giuliano Latini
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOpsdotnetcode
 
Vagrant e Docker a confronto;scegliere ed iniziare
Vagrant e  Docker a confronto;scegliere ed iniziareVagrant e  Docker a confronto;scegliere ed iniziare
Vagrant e Docker a confronto;scegliere ed iniziareDaniele Mondello
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOpsdotnetcode
 
Architetture a Microservizi con Docker Container
Architetture a Microservizi con Docker ContainerArchitetture a Microservizi con Docker Container
Architetture a Microservizi con Docker ContainerRoberto Messora
 
High specialized vm on open stack cloud
High specialized vm on open stack cloudHigh specialized vm on open stack cloud
High specialized vm on open stack cloudGabriele Baldoni
 

Similar to Docker e Kubernetes per professionisti IT (20)

Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e KubernetesWorkshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
Workshop ASP.NET Core e Angular in produzione con Docker e Kubernetes
 
Meetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e KubernetesMeetup ASP.NET Core e Kubernetes
Meetup ASP.NET Core e Kubernetes
 
Introduzione a Docker
Introduzione a DockerIntroduzione a Docker
Introduzione a Docker
 
Osd 2016 Middleware Track
Osd 2016 Middleware TrackOsd 2016 Middleware Track
Osd 2016 Middleware Track
 
Docker & DevOps
Docker  & DevOpsDocker  & DevOps
Docker & DevOps
 
Infrastructure as code: Kubernetes on ACS
Infrastructure as code: Kubernetes on ACSInfrastructure as code: Kubernetes on ACS
Infrastructure as code: Kubernetes on ACS
 
Aruba, Dell e Intel: una partnership d'eccezione
Aruba, Dell e Intel: una partnership d'eccezioneAruba, Dell e Intel: una partnership d'eccezione
Aruba, Dell e Intel: una partnership d'eccezione
 
Docker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptx
Docker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptxDocker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptx
Docker_vs_Rancher_chi_dominerà_i_Desktop_dei_developers.pptx
 
Docker Fudamentals
Docker FudamentalsDocker Fudamentals
Docker Fudamentals
 
ASP.NET Core 2 e Docker
ASP.NET Core 2 e DockerASP.NET Core 2 e Docker
ASP.NET Core 2 e Docker
 
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
Usare SQL Server for Linux e Docker per semplificare i processi di testing - ...
 
Docker vs Virtualizzazioni
Docker vs VirtualizzazioniDocker vs Virtualizzazioni
Docker vs Virtualizzazioni
 
MySQL Day Milano 2018 - Le architetture a microservizi
MySQL Day Milano 2018 - Le architetture a microserviziMySQL Day Milano 2018 - Le architetture a microservizi
MySQL Day Milano 2018 - Le architetture a microservizi
 
Linux@Azure, l'altra metà del cielo.
Linux@Azure, l'altra metà del cielo.Linux@Azure, l'altra metà del cielo.
Linux@Azure, l'altra metà del cielo.
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOps
 
Vagrant e Docker a confronto;scegliere ed iniziare
Vagrant e  Docker a confronto;scegliere ed iniziareVagrant e  Docker a confronto;scegliere ed iniziare
Vagrant e Docker a confronto;scegliere ed iniziare
 
Meetup Azure DevOps
Meetup Azure DevOpsMeetup Azure DevOps
Meetup Azure DevOps
 
Glv on air 08-10_2019
Glv on air   08-10_2019Glv on air   08-10_2019
Glv on air 08-10_2019
 
Architetture a Microservizi con Docker Container
Architetture a Microservizi con Docker ContainerArchitetture a Microservizi con Docker Container
Architetture a Microservizi con Docker Container
 
High specialized vm on open stack cloud
High specialized vm on open stack cloudHigh specialized vm on open stack cloud
High specialized vm on open stack cloud
 

Docker e Kubernetes per professionisti IT

  • 1. Organizzato da: CoreTech Summit 2020 | LIVE DOCKER E KUBERNETES PER I SISTEMISTI E PROFESSIONISTI IT Di Yefry Figueroa
  • 2. $whoami Yefry Figueroa Consulente IT, principalmente in ambito cloud, microservizi Lavoro nell’IT da 13 anni. Come sistemista linux dal 2013 Lavoro con container e microservizi dal 2015 Gestisco centinai di container in produzione Yefry Figueroa www.figueroa.it
  • 3. Agenda Un passo indietro Parte 1 Cos’è Docker? VM vs Container Docker Architettura e componenti Docker Demo Docker Cos’è Kubernetes? Parte 2 Componenti Cluster Kubernetes Pods, Services, Deployments Come creiamo un Cluster? Demo Kubernetes Yefry Figueroa
  • 4. Slide Break C’era una volta… Yefry Figueroa
  • 5. Slide Break Siamo evoluti con la virtualizzazione Yefry Figueroa
  • 6. E siamo arrivati ai container Docker Yefry Figueroa
  • 7. Cos’è È una tecnologia basata su container Linux che ci permette di creare, distribuire, testare ed eseguire applicazioni in modo facile e veloce. Yefry Figueroa
  • 8. Cos’è È un’unità standard di software che impacchetta il codice e tutte le sue dipendenze in modo che l’applicazione venga eseguita a prescindere dall’ambiente e in maniera rapida e affidabile. un container Yefry Figueroa
  • 9. Virtual Machine vs Container • Virtualizzano l’hardware • Occupano molto più spazio. Solitamente qualche GBs. • Meno portabili e più lente al boot • Virtualizzano il sistema operativo • Una immagine di un container solitamente occupa pocchi MBs • Sono più portatili ed efficienti Yefry Figueroa
  • 10. I Container Docker sono ovunque Yefry Figueroa
  • 11. Architettura e componenti Docker Yefry Figueroa
  • 12. DEMO: webserver up and running Yefry Figueroa
  • 13. docker run –d –p 80:80 nginx Yefry Figueroa
  • 14. Ok, tutto bello ma … Yefry Figueroa
  • 15. Ci sono un po’ di questioni ancora da risolvere: - scalare e distribuire la nostra applicazione? - creare un sistema completo, affidabile, scalabile e distribuito? - gestire e orchestrare tanti container? Come facciamo a Yefry Figueroa
  • 16. Per fare tutto ciò ci serve un cluster Kubernetes Yefry Figueroa
  • 17. Cos’è È un orchestratore open source per la gestione e distribuzione di applicazioni a container. E’ stato sviluppato originariamente da Google. kubernetes? Yefry Figueroa
  • 18. Componenti di un cluster Kubernetes Yefry Figueroa
  • 19. Componenti di un cluster Kubernetes per Produzione Yefry Figueroa
  • 20. Pod È un gruppo di uno o più container che condividono la rete, lo storage e le direttive per eseguire i container. Service Fornisce load balancing, naming e discovery. Permette di esporre un'applicazione in esecuzione su un set di pod come servizio di rete. Namespace È un cluster virtuale all’interno del cluster fisico. Fornisce isolamento e controllo degli accessi. Alcuni Concetti Deployment Fornisce aggiornamenti dichiarativi. Controlla lo stato attuale dell’applicazione con quello desiderato ed esegue il deploy in base al risultato. kubectl È un tool da riga di comando che ci permette di controllare i cluster Kubernetes Yefry Figueroa
  • 21. 05 6 GKE EKS IBM CKS AKS DOKS Kubernetes sui top Public Cloud Provider Yefry Figueroa
  • 22. Minikube kind K3S Kubeadm kops Rancher Locale Produzione Kubernetes on-premise Development Small clusters Docker Desktop Microk8s K3D VMware ci riprova con Tanzu Yefry Figueroa
  • 23. DEMO: webserver up and running Yefry Figueroa
  • 24. kubectl create deployment myApp –image=nginx:1.18.0 Yefry Figueroa kubectl expose deployment myApp –type=NodePort –port=8080
  • 25. 1. apiVersion: v1 2. kind: Service 3. metadata: 4. name: service-nginx 5. spec: 6. type: NodePort 7. selector: 8. app: nginx 9. ports: 10. - port: 80 11. targetPort: 80 12. nodePort: 30000 service.yaml 1. apiVersion: apps/v1 2. kind: Deployment 3. metadata: 4. name: nginx-deployment 5. labels: 6. app: nginx 7. spec: 8. replicas: 2 9. selector: 10. matchLabels: 11. app: nginx 12. template: 13. metadata: 14. labels: 15. app: nginx 16. spec: 17. containers: 18. - name: nginx 19. image: nginx:1.18.0 20. ports: 21. - containerPort: 80 deployment.yaml Yefry Figueroa - Esecuzione deployment - Rimozione di un pod - Dashboard - Scaling DEMO: