SlideShare a Scribd company logo
1 of 18
#azuresatpn
Azure Saturday 2019
Kubernetes as HA Time Series
Server, a proposal
#azuresatpn
About me
• Ho esperienza quasi trentennale di sistemi e
software in ambito scientifico e della pubblica
amministrazione;
• Dal 2000 gestisco sistemi in ottica Remoting;
• Da 5 anni studio la cultura DevOps ed ho appreso
che ogni problema ha soluzione ma la tecnologia
non risolve tutti i problemi.
#azuresatpn
What, How, Why?
• Siamo immersi in un mondo di eventi che subiamo passivamente;
• Misurare nel tempo gli eventi ci fa ricavare un modello empirico;
• La serie temporale prodotta dalla misura degli eventi ha esigenze e
richiede prestazioni a cui i sistemi DBMS non aderiscono pienamente;
• L’analisi delle serie temporali con approcci classici spesso costringe a
reinventare la ruota sprecando energie e risorse;
• L’esplosione dello IoT ha aumentato esponenzialmente le serie
temporali da cui acquisire metriche;
• L’approccio monolitico su VM è POF nella gestione delle serie
temporali.
#azuresatpn
Kubernetes
• Sistema OpenSource di
orchestrazione e gestione di
containers
• Nato in Google a metà del 2014 ora
è sviluppato dal CNCF
• Definizione dichiarativa degli stati da
raggiungere
• Basato su chiamate API è disposibile
su molte piattaforme Cloud e
On Premise
#azuresatpn
Servizio AKS
• Cluster Kubernetes ottimizzato per
l’infrastruttura Microsoft Azure
• Associabile ai servizi ACS e ARS di
esecuzione di containers e storage
d’immagini di containers
• Dispiegabile, scalabile e distribuibile
geograficamente attraverso le
interfacce Microsoft Azure
#azuresatpn
Stack TICK
• Costruito da: InfluxDB, Telegraf,
Kapacitor e Chronograf;
• Accumula, agisce e analizza su Serie
Temporali;
• Spesso Chronograf è sostituito o
affiancato da Grafana per il display
dei dati in InfluxDB.
#azuresatpn
InfluxDB
• Operazioni di write&query via
HTTP APIs con supporto in AA;
• Plugins d’interfaccia verso altre
fonti dati (Es. Graphite,
OpenTSDB);
• Linguaggio d’interrogazione
SQL-like;
• Continuous queries per
aggregazione dati.
Mainflux microservice architecture
curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000'
curl -i -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"
#azuresatpn
Telegraf
• Collettore d’informazioni
• Vari formati di: Input, Output,
Aggregation e Processing disponibili
ed estendibili via plugins;
• Batch size write e write failure cache
dimensionabili;
• Configurabile l’uso della timebase:
locale o quella di InfluxDB.
#azuresatpn
Kapacitor
• Processing e Analisi di Serie Temporali;
• Gestione allarmi e anomalie;
• Trasformazioni dei dati tramite InfluxQL;
• Storing delle trasformazioni in InfluxDB;
• Integrato con Slack, PagerDuty, Sensu…
stream
// Select just the cpu measurement
// from our example database.
|from()
.measurement('cpu’)
|alert()
.crit(lambda: int("usage_idle") < 70)
// Whenever we get an
// alert write it to a file.
.log('/tmp/alerts.log')
stream
|from()
.measurement('cpu’)
|alert()
// Compare values to running mean
// and standard deviation
.crit(lambda: sigma("usage_idle") > 3)
.log('/tmp/alerts.log')
#azuresatpn
Chronograf
• Monitoring
infrastruttura;
• Gestione Alerting e
sviluppo filtri e query;
• Visualizzazione Serie
Temporali;
• Gestione Time Series
Database;
#azuresatpn
Grafana
• Visualizzazione, Annotazione e Analisi di Serie Temporali e logs;
• Creazione di template per dashboard parametrizzate e riutilizzabili;
• Confronto fra i dati da fonti differenti;
• Esplorazione/Esportazione delle metriche acquisite;
• Editor grafico e testuale per sviluppare query di estrazione per
visualizzazione dati e alerting, integrato con Slack, PagerDuty, Sensu..
• Più di 30 fonti dati Opensource e commerciali supportate tra cui:
InfluxDB, Prometheus, Elastic, Zabbix, GoogleBigQuery, JSON, Oracle.
#azuresatpn
Descrizione infrastruttura 1/3
SERVICE
TS-POD
Alert-POD
SERVICE
View&Management-POD
HTTPS
Slack, Sensu, PagerDuty
HTTPS BATCH
HTTPS BATCH
#azuresatpn
Descrizione infrastruttura 2/3
• TS-POD: raccoglie dai sensori esterni (schede Arduino e RaspberryPi) i
valori classificati secondo una serie di tag di cui, gli obbligatori sono:
• Serial del sensore; Latitudine, Longitudine, Altezza sul livello del mare; Serial
acquisitore; Unità di misura.
• Alert-POD:
• Business logic per le segnalazioni di condizioni anomale individuate nei dati
presenti nel TS-POD;
• Generazione di serie temporali derivate dai dati acquisiti risultato di analisi
matematico-statistiche dei valori registrati.
#azuresatpn
Descrizione infrastruttura 3/3
• View&Management-POD:
• Visualizzazione e analisi delle serie temporali acquisite e generate presenti in
TS-POD;
• Ambiente di sviluppo delle continuous queries utilizzate nell’infrastruttura;
• Ambiente di management e accounting dell’infrastruttura.
• I canali da e per il mondo esterno sono in HTTPS.
• Sfruttando l’orchestrazione di Kubernetes per garantire la resilienza
dei POD i Persistent Volume saranno allocati su Azure File associati
all’Azure Storage Account utilizzabile da AKS.
#azuresatpn
Demo
#azuresatpn
Recap
• Kubernetes assicura la ripartenza dei pod in caso di crash;
• Gli storage persistenti assicurano il mantenimento dei dati accumulati;
• Integrazione con architetture a microservizi;
• Soluzioni documentate da Influxdata per altri Public Cloud;
• Soluzione distribuibile geograficamente;
• Alternativa opensource al cluster InfluxDB su licenza Cloud/Enterprise;
• Da sperimentare e valutare lo scaling del TS-POD
#azuresatpn
Applicazioni
Oltre le classiche applicazioni in produzione per acquisire e analizzare
telemetrie veicolate attraverso internet, attraverso la disponibilità di
fondi e donazioni il progetto può costruire delle telemetrie accessibili
pubblicamente raccogliendo i dati messi a disposizione liberamente da
enti non governativi come:
#azuresatpn
Bibliografia
• Kubernetes
• Servizio Azure Kubernetes
• Stack TICK
• Stack TICK on Kubernetes
• Grafana
• ECSA 10 Principles of Citizen Science

More Related Content

What's hot

PaaS opportunities in Azure
PaaS opportunities in AzurePaaS opportunities in Azure
PaaS opportunities in AzureMarco Parenzan
 
Del furia signalr-to-the-max
Del furia   signalr-to-the-maxDel furia   signalr-to-the-max
Del furia signalr-to-the-maxDotNetCampus
 
Async: scalabilità e responsiveness senza pari! @ CDays
Async: scalabilità e responsiveness senza pari! @ CDaysAsync: scalabilità e responsiveness senza pari! @ CDays
Async: scalabilità e responsiveness senza pari! @ CDaysMatteo Baglini
 
Super-scaling Magento with Docker, micro-services and micro-costs
Super-scaling Magento with Docker, micro-services and micro-costsSuper-scaling Magento with Docker, micro-services and micro-costs
Super-scaling Magento with Docker, micro-services and micro-costsMikhail Zakharenko
 
Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017
Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017
Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017Codemotion
 
ASP.NET MVC: sfruttare la piattaforma al 100%
ASP.NET MVC: sfruttare la piattaforma al 100%ASP.NET MVC: sfruttare la piattaforma al 100%
ASP.NET MVC: sfruttare la piattaforma al 100%DomusDotNet
 
Azure Application Insights
Azure Application InsightsAzure Application Insights
Azure Application InsightsKlab
 
Javascript task automation
Javascript task automationJavascript task automation
Javascript task automationAntonio Liccardi
 
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...Daniele Mondello
 
Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.
Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.
Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.Giuliano Latini
 
DevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile EngagementDevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile EngagementRoberto Albano
 
Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP WayLuca Milan
 
Microsoft Application Insights
Microsoft Application InsightsMicrosoft Application Insights
Microsoft Application InsightsRoberto Albano
 
Dot netcampus2015 green-template
Dot netcampus2015 green-templateDot netcampus2015 green-template
Dot netcampus2015 green-templateDotNetCampus
 
APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!
APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!
APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!DotNetCampus
 
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...DotNetCampus
 
Javascript task automation
Javascript task automationJavascript task automation
Javascript task automationDotNetCampus
 
Building infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdkBuilding infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdkAndrea Valentini
 
DevOps@Work 2017 - Application insights more control, more power
DevOps@Work 2017 - Application insights more control, more powerDevOps@Work 2017 - Application insights more control, more power
DevOps@Work 2017 - Application insights more control, more powerRoberto Albano
 
Deploy & Run on Azure App Service
Deploy & Run on Azure App ServiceDeploy & Run on Azure App Service
Deploy & Run on Azure App ServiceAndrea Dottor
 

What's hot (20)

PaaS opportunities in Azure
PaaS opportunities in AzurePaaS opportunities in Azure
PaaS opportunities in Azure
 
Del furia signalr-to-the-max
Del furia   signalr-to-the-maxDel furia   signalr-to-the-max
Del furia signalr-to-the-max
 
Async: scalabilità e responsiveness senza pari! @ CDays
Async: scalabilità e responsiveness senza pari! @ CDaysAsync: scalabilità e responsiveness senza pari! @ CDays
Async: scalabilità e responsiveness senza pari! @ CDays
 
Super-scaling Magento with Docker, micro-services and micro-costs
Super-scaling Magento with Docker, micro-services and micro-costsSuper-scaling Magento with Docker, micro-services and micro-costs
Super-scaling Magento with Docker, micro-services and micro-costs
 
Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017
Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017
Francesco Arcieri - La monetizzazione delle API - Codemotion Milan 2017
 
ASP.NET MVC: sfruttare la piattaforma al 100%
ASP.NET MVC: sfruttare la piattaforma al 100%ASP.NET MVC: sfruttare la piattaforma al 100%
ASP.NET MVC: sfruttare la piattaforma al 100%
 
Azure Application Insights
Azure Application InsightsAzure Application Insights
Azure Application Insights
 
Javascript task automation
Javascript task automationJavascript task automation
Javascript task automation
 
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...
IaC - Infrastructure as Code, gestire infrastrutture cloud tramite file di co...
 
Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.
Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.
Funziona! allora non toccarlo, ovvero l'analisi d'infrastruttura in esercizio.
 
DevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile EngagementDevOps@Work 2017 - Azure Mobile Engagement
DevOps@Work 2017 - Azure Mobile Engagement
 
Web Api – The HTTP Way
Web Api – The HTTP WayWeb Api – The HTTP Way
Web Api – The HTTP Way
 
Microsoft Application Insights
Microsoft Application InsightsMicrosoft Application Insights
Microsoft Application Insights
 
Dot netcampus2015 green-template
Dot netcampus2015 green-templateDot netcampus2015 green-template
Dot netcampus2015 green-template
 
APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!
APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!
APPSTUDIO: DA ZERO ALLO STORE IN 50 MINUTI!
 
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...Gam05   costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
Gam05 costruisci il tuo antifurto perfetto con kinect e gli azure mobile se...
 
Javascript task automation
Javascript task automationJavascript task automation
Javascript task automation
 
Building infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdkBuilding infrastructure as code with typescript and aws cdk
Building infrastructure as code with typescript and aws cdk
 
DevOps@Work 2017 - Application insights more control, more power
DevOps@Work 2017 - Application insights more control, more powerDevOps@Work 2017 - Application insights more control, more power
DevOps@Work 2017 - Application insights more control, more power
 
Deploy & Run on Azure App Service
Deploy & Run on Azure App ServiceDeploy & Run on Azure App Service
Deploy & Run on Azure App Service
 

Similar to Kubernetes as HA time series server, a proposal

Big data analytics quanto vale e come sfruttarlo con stream analytics e power bi
Big data analytics quanto vale e come sfruttarlo con stream analytics e power biBig data analytics quanto vale e come sfruttarlo con stream analytics e power bi
Big data analytics quanto vale e come sfruttarlo con stream analytics e power biMarco Pozzan
 
Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini Whymca
 
SVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROIDSVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROIDLuca Masini
 
Azure dayroma java, il lato oscuro del cloud
Azure dayroma   java, il lato oscuro del cloudAzure dayroma   java, il lato oscuro del cloud
Azure dayroma java, il lato oscuro del cloudRiccardo Zamana
 
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioOpen Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioPar-Tec S.p.A.
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Codemotion
 
Alla scoperta di gRPC
Alla scoperta di gRPCAlla scoperta di gRPC
Alla scoperta di gRPCAndrea Dottor
 
Ottimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloudOttimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloudNicolò Carandini
 
Big data - stack tecnologico
Big data -  stack tecnologicoBig data -  stack tecnologico
Big data - stack tecnologicoConsulthinkspa
 
Industrial iot: dalle parole ai fatti
Industrial iot: dalle parole ai fatti Industrial iot: dalle parole ai fatti
Industrial iot: dalle parole ai fatti Riccardo Zamana
 
Power BI: Introduzione ai dataflow e alla preparazione dei dati self-service
Power BI: Introduzione ai dataflow e alla preparazione dei dati self-servicePower BI: Introduzione ai dataflow e alla preparazione dei dati self-service
Power BI: Introduzione ai dataflow e alla preparazione dei dati self-serviceMarco Pozzan
 
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFSLa nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFSMorlini Gabriele
 
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...azuredayit
 
Dal requisito all'implementazione @ CD2010
Dal requisito all'implementazione @ CD2010Dal requisito all'implementazione @ CD2010
Dal requisito all'implementazione @ CD2010Mauro Servienti
 
Azure PaaS databases
Azure PaaS databasesAzure PaaS databases
Azure PaaS databasesGianluca Hotz
 
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS Imola Informatica
 
SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!
SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!
SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!DotNetCampus
 
Signal r to the-max
Signal r to the-maxSignal r to the-max
Signal r to the-maxDotNetCampus
 
Azure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT SolutionsAzure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT SolutionsMarco Parenzan
 
SQL Server Benchmarking, Baselining and Workload Analysis
SQL Server Benchmarking, Baselining and Workload AnalysisSQL Server Benchmarking, Baselining and Workload Analysis
SQL Server Benchmarking, Baselining and Workload AnalysisGianluca Sartori
 

Similar to Kubernetes as HA time series server, a proposal (20)

Big data analytics quanto vale e come sfruttarlo con stream analytics e power bi
Big data analytics quanto vale e come sfruttarlo con stream analytics e power biBig data analytics quanto vale e come sfruttarlo con stream analytics e power bi
Big data analytics quanto vale e come sfruttarlo con stream analytics e power bi
 
Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini Sviluppo di servizi REST per Android - Luca Masini
Sviluppo di servizi REST per Android - Luca Masini
 
SVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROIDSVILUPPO DI SERVIZI REST PER ANDROID
SVILUPPO DI SERVIZI REST PER ANDROID
 
Azure dayroma java, il lato oscuro del cloud
Azure dayroma   java, il lato oscuro del cloudAzure dayroma   java, il lato oscuro del cloud
Azure dayroma java, il lato oscuro del cloud
 
Open Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studioOpen Source Day 2015 - DBaaS con Docker: un caso di studio
Open Source Day 2015 - DBaaS con Docker: un caso di studio
 
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
Moving from Monolithic to Microservice Architecture: an OSS based stack deplo...
 
Alla scoperta di gRPC
Alla scoperta di gRPCAlla scoperta di gRPC
Alla scoperta di gRPC
 
Ottimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloudOttimizzazione della gestione dei dati sul cloud
Ottimizzazione della gestione dei dati sul cloud
 
Big data - stack tecnologico
Big data -  stack tecnologicoBig data -  stack tecnologico
Big data - stack tecnologico
 
Industrial iot: dalle parole ai fatti
Industrial iot: dalle parole ai fatti Industrial iot: dalle parole ai fatti
Industrial iot: dalle parole ai fatti
 
Power BI: Introduzione ai dataflow e alla preparazione dei dati self-service
Power BI: Introduzione ai dataflow e alla preparazione dei dati self-servicePower BI: Introduzione ai dataflow e alla preparazione dei dati self-service
Power BI: Introduzione ai dataflow e alla preparazione dei dati self-service
 
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFSLa nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
 
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
Azure Day Rome Reloaded 2019 - Ingestion nel datalake passando tramite API Ma...
 
Dal requisito all'implementazione @ CD2010
Dal requisito all'implementazione @ CD2010Dal requisito all'implementazione @ CD2010
Dal requisito all'implementazione @ CD2010
 
Azure PaaS databases
Azure PaaS databasesAzure PaaS databases
Azure PaaS databases
 
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
La nostra infrastruttura di produzione a container con Docker, Rancher e ZFS
 
SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!
SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!
SIGNALR TO-THE-MAX: VERSO IL WEB ED OLTRE!
 
Signal r to the-max
Signal r to the-maxSignal r to the-max
Signal r to the-max
 
Azure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT SolutionsAzure Synapse Analytics for your IoT Solutions
Azure Synapse Analytics for your IoT Solutions
 
SQL Server Benchmarking, Baselining and Workload Analysis
SQL Server Benchmarking, Baselining and Workload AnalysisSQL Server Benchmarking, Baselining and Workload Analysis
SQL Server Benchmarking, Baselining and Workload Analysis
 

More from Giuliano Latini

Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....
Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....
Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....Giuliano Latini
 
Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...
Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...
Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...Giuliano Latini
 
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
 
Uno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft Azure
Uno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft AzureUno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft Azure
Uno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft AzureGiuliano Latini
 
La potenza è nulla senza controllo
La potenza è nulla senza controlloLa potenza è nulla senza controllo
La potenza è nulla senza controlloGiuliano Latini
 
La potenza è nulla senza controllo
La potenza è nulla senza controlloLa potenza è nulla senza controllo
La potenza è nulla senza controlloGiuliano Latini
 
DOCKER FROM ZERO TO HERO
DOCKER FROM ZERO TO HERODOCKER FROM ZERO TO HERO
DOCKER FROM ZERO TO HEROGiuliano Latini
 
Kubernetes e bello, sicuro è meglio!
Kubernetes e bello, sicuro è meglio!Kubernetes e bello, sicuro è meglio!
Kubernetes e bello, sicuro è meglio!Giuliano Latini
 
Docker vs Virtualizzazioni
Docker vs VirtualizzazioniDocker vs Virtualizzazioni
Docker vs VirtualizzazioniGiuliano Latini
 
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
 
I containers in azure, light vm o un vero cambio di paradigma?
I containers in azure, light vm o un vero cambio di paradigma?I containers in azure, light vm o un vero cambio di paradigma?
I containers in azure, light vm o un vero cambio di paradigma?Giuliano Latini
 
Swarm - 50 sfumature di docker
Swarm - 50 sfumature di dockerSwarm - 50 sfumature di docker
Swarm - 50 sfumature di dockerGiuliano Latini
 
Mobile Camp @Univpm - Introduzione all'evento
Mobile Camp @Univpm - Introduzione all'eventoMobile Camp @Univpm - Introduzione all'evento
Mobile Camp @Univpm - Introduzione all'eventoGiuliano Latini
 
Google cloud: Big Data + docker = kubernetes
Google cloud: Big Data + docker = kubernetesGoogle cloud: Big Data + docker = kubernetes
Google cloud: Big Data + docker = kubernetesGiuliano Latini
 
Automation Night (Docker)
Automation Night (Docker)Automation Night (Docker)
Automation Night (Docker)Giuliano Latini
 
Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]
Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]
Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]Giuliano Latini
 

More from Giuliano Latini (18)

Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....
Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....
Microsoft Graph Powershell, gestire vecchi problemi con una mentalità nuova....
 
Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...
Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...
Dai comlet all'IT e la giornata l'ha sfangata^J dagli Graph Powershell e gest...
 
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
 
The user s identities
The user s identitiesThe user s identities
The user s identities
 
Uno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft Azure
Uno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft AzureUno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft Azure
Uno, nessuno o 10.000, la gestione dell'identità ai tempi di Microsoft Azure
 
La potenza è nulla senza controllo
La potenza è nulla senza controlloLa potenza è nulla senza controllo
La potenza è nulla senza controllo
 
La potenza è nulla senza controllo
La potenza è nulla senza controlloLa potenza è nulla senza controllo
La potenza è nulla senza controllo
 
DOCKER FROM ZERO TO HERO
DOCKER FROM ZERO TO HERODOCKER FROM ZERO TO HERO
DOCKER FROM ZERO TO HERO
 
Kubernetes e bello, sicuro è meglio!
Kubernetes e bello, sicuro è meglio!Kubernetes e bello, sicuro è meglio!
Kubernetes e bello, sicuro è meglio!
 
Glv on air 08-10_2019
Glv on air   08-10_2019Glv on air   08-10_2019
Glv on air 08-10_2019
 
Docker vs Virtualizzazioni
Docker vs VirtualizzazioniDocker vs Virtualizzazioni
Docker vs Virtualizzazioni
 
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.
 
I containers in azure, light vm o un vero cambio di paradigma?
I containers in azure, light vm o un vero cambio di paradigma?I containers in azure, light vm o un vero cambio di paradigma?
I containers in azure, light vm o un vero cambio di paradigma?
 
Swarm - 50 sfumature di docker
Swarm - 50 sfumature di dockerSwarm - 50 sfumature di docker
Swarm - 50 sfumature di docker
 
Mobile Camp @Univpm - Introduzione all'evento
Mobile Camp @Univpm - Introduzione all'eventoMobile Camp @Univpm - Introduzione all'evento
Mobile Camp @Univpm - Introduzione all'evento
 
Google cloud: Big Data + docker = kubernetes
Google cloud: Big Data + docker = kubernetesGoogle cloud: Big Data + docker = kubernetes
Google cloud: Big Data + docker = kubernetes
 
Automation Night (Docker)
Automation Night (Docker)Automation Night (Docker)
Automation Night (Docker)
 
Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]
Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]
Puppet (v.1.0) IDEA Soc. Coop. [25/06/2014]
 

Kubernetes as HA time series server, a proposal

  • 1. #azuresatpn Azure Saturday 2019 Kubernetes as HA Time Series Server, a proposal
  • 2. #azuresatpn About me • Ho esperienza quasi trentennale di sistemi e software in ambito scientifico e della pubblica amministrazione; • Dal 2000 gestisco sistemi in ottica Remoting; • Da 5 anni studio la cultura DevOps ed ho appreso che ogni problema ha soluzione ma la tecnologia non risolve tutti i problemi.
  • 3. #azuresatpn What, How, Why? • Siamo immersi in un mondo di eventi che subiamo passivamente; • Misurare nel tempo gli eventi ci fa ricavare un modello empirico; • La serie temporale prodotta dalla misura degli eventi ha esigenze e richiede prestazioni a cui i sistemi DBMS non aderiscono pienamente; • L’analisi delle serie temporali con approcci classici spesso costringe a reinventare la ruota sprecando energie e risorse; • L’esplosione dello IoT ha aumentato esponenzialmente le serie temporali da cui acquisire metriche; • L’approccio monolitico su VM è POF nella gestione delle serie temporali.
  • 4. #azuresatpn Kubernetes • Sistema OpenSource di orchestrazione e gestione di containers • Nato in Google a metà del 2014 ora è sviluppato dal CNCF • Definizione dichiarativa degli stati da raggiungere • Basato su chiamate API è disposibile su molte piattaforme Cloud e On Premise
  • 5. #azuresatpn Servizio AKS • Cluster Kubernetes ottimizzato per l’infrastruttura Microsoft Azure • Associabile ai servizi ACS e ARS di esecuzione di containers e storage d’immagini di containers • Dispiegabile, scalabile e distribuibile geograficamente attraverso le interfacce Microsoft Azure
  • 6. #azuresatpn Stack TICK • Costruito da: InfluxDB, Telegraf, Kapacitor e Chronograf; • Accumula, agisce e analizza su Serie Temporali; • Spesso Chronograf è sostituito o affiancato da Grafana per il display dei dati in InfluxDB.
  • 7. #azuresatpn InfluxDB • Operazioni di write&query via HTTP APIs con supporto in AA; • Plugins d’interfaccia verso altre fonti dati (Es. Graphite, OpenTSDB); • Linguaggio d’interrogazione SQL-like; • Continuous queries per aggregazione dati. Mainflux microservice architecture curl -i -XPOST 'http://localhost:8086/write?db=mydb' --data-binary 'cpu_load_short,host=server01,region=us-west value=0.64 1434055562000000000' curl -i -XPOST http://localhost:8086/query --data-urlencode "q=CREATE DATABASE mydb"
  • 8. #azuresatpn Telegraf • Collettore d’informazioni • Vari formati di: Input, Output, Aggregation e Processing disponibili ed estendibili via plugins; • Batch size write e write failure cache dimensionabili; • Configurabile l’uso della timebase: locale o quella di InfluxDB.
  • 9. #azuresatpn Kapacitor • Processing e Analisi di Serie Temporali; • Gestione allarmi e anomalie; • Trasformazioni dei dati tramite InfluxQL; • Storing delle trasformazioni in InfluxDB; • Integrato con Slack, PagerDuty, Sensu… stream // Select just the cpu measurement // from our example database. |from() .measurement('cpu’) |alert() .crit(lambda: int("usage_idle") < 70) // Whenever we get an // alert write it to a file. .log('/tmp/alerts.log') stream |from() .measurement('cpu’) |alert() // Compare values to running mean // and standard deviation .crit(lambda: sigma("usage_idle") > 3) .log('/tmp/alerts.log')
  • 10. #azuresatpn Chronograf • Monitoring infrastruttura; • Gestione Alerting e sviluppo filtri e query; • Visualizzazione Serie Temporali; • Gestione Time Series Database;
  • 11. #azuresatpn Grafana • Visualizzazione, Annotazione e Analisi di Serie Temporali e logs; • Creazione di template per dashboard parametrizzate e riutilizzabili; • Confronto fra i dati da fonti differenti; • Esplorazione/Esportazione delle metriche acquisite; • Editor grafico e testuale per sviluppare query di estrazione per visualizzazione dati e alerting, integrato con Slack, PagerDuty, Sensu.. • Più di 30 fonti dati Opensource e commerciali supportate tra cui: InfluxDB, Prometheus, Elastic, Zabbix, GoogleBigQuery, JSON, Oracle.
  • 13. #azuresatpn Descrizione infrastruttura 2/3 • TS-POD: raccoglie dai sensori esterni (schede Arduino e RaspberryPi) i valori classificati secondo una serie di tag di cui, gli obbligatori sono: • Serial del sensore; Latitudine, Longitudine, Altezza sul livello del mare; Serial acquisitore; Unità di misura. • Alert-POD: • Business logic per le segnalazioni di condizioni anomale individuate nei dati presenti nel TS-POD; • Generazione di serie temporali derivate dai dati acquisiti risultato di analisi matematico-statistiche dei valori registrati.
  • 14. #azuresatpn Descrizione infrastruttura 3/3 • View&Management-POD: • Visualizzazione e analisi delle serie temporali acquisite e generate presenti in TS-POD; • Ambiente di sviluppo delle continuous queries utilizzate nell’infrastruttura; • Ambiente di management e accounting dell’infrastruttura. • I canali da e per il mondo esterno sono in HTTPS. • Sfruttando l’orchestrazione di Kubernetes per garantire la resilienza dei POD i Persistent Volume saranno allocati su Azure File associati all’Azure Storage Account utilizzabile da AKS.
  • 16. #azuresatpn Recap • Kubernetes assicura la ripartenza dei pod in caso di crash; • Gli storage persistenti assicurano il mantenimento dei dati accumulati; • Integrazione con architetture a microservizi; • Soluzioni documentate da Influxdata per altri Public Cloud; • Soluzione distribuibile geograficamente; • Alternativa opensource al cluster InfluxDB su licenza Cloud/Enterprise; • Da sperimentare e valutare lo scaling del TS-POD
  • 17. #azuresatpn Applicazioni Oltre le classiche applicazioni in produzione per acquisire e analizzare telemetrie veicolate attraverso internet, attraverso la disponibilità di fondi e donazioni il progetto può costruire delle telemetrie accessibili pubblicamente raccogliendo i dati messi a disposizione liberamente da enti non governativi come:
  • 18. #azuresatpn Bibliografia • Kubernetes • Servizio Azure Kubernetes • Stack TICK • Stack TICK on Kubernetes • Grafana • ECSA 10 Principles of Citizen Science