SlideShare a Scribd company logo
1 of 32
How Pulsar enables Netdata to offer unlimited
infrastructure monitoring for free
Pulsar Virtual Summit North America 2021
Speaker
Pulsar Virtual Summit North America 2021
Christopher Akritidis
COO, Netdata
Christopher rallies the day-to-day efforts of the Netdata team with 20
years of experience in delivering IT-empowered business solutions.
Before Netdata, he focused on optimizing performance and efficiency
for telecom companies. When he’s not working, he enjoys science,
philosophy, science fiction, strategy games, reading, and writing.
Agenda
● Introduction / Presentation summary
● Who we are and what we want to achieve
● The challenges of a free infrastructure monitoring solution
● Netdata Cloud Architecture
● Pulsar features that we rely on
● Pulsar features missed - Challenges for the future
Pulsar Virtual Summit North America 2021
Introduction
Pulsar Virtual Summit North America 2021
Presentation Summary
● The Netdata Agent is free, open source single-node monitoring software. Netdata Cloud is a free, closed
source, software-as-a-service that brings together metadata from endpoints running the Netdata Agent,
giving a complete view of the health and performance of an infrastructure.
● All the metrics remain on the Netdata Agent, making Netdata Cloud the focal point of a decentralized,
scalable, low cost solution.
● The heart of Netdata Cloud is Pulsar. Almost every message coming from and going to the open source
agents passes through it, often generating a series of other messages.
○ Pulsar's millions of topics and key-shared subscriptions allow us to deal with an arbitrary number
of agents and requests from the front-end.
○ The reliable persistence of messages has allowed us to replay old events to rebuild old and build
new materialized views and debug specific production issues. It's also what will enable us to
implement an event sourcing pattern, for a new set of features we want to introduce shortly.
○ Decoupled and tiered storage help keep costs low, as the infrastructure expands.
● We have had a few challenges with Pulsar, especially regarding the Go client with shared subscriptions
and future needs for event sourcing, but we rely on it heavily.
Pulsar Virtual Summit North America 2021
Who we are and what we want to achieve
Pulsar Virtual Summit North America 2021
Some History
2014
👨💻
Out of frustration for the current
solutions, Costa Tsaousis starts
working on a side-project.
Netdata GitHub launch
Almost 2 years in development,
the project launches as an Open
Source project
2016
Netdata Inc.
With tens of thousands of GitHub
✨ in a matter of weeks. Costa
founds Netdata Inc.
2018
Netdata Cloud launch
Netdata delivers free-forever
Cloud solution for easily and
visually monitoring entire
infrastructures
2020
Pulsar Virtual Summit North America 2021
Reach
● Over 54K ✨ on GitHub
● Hundreds of thousands of active installations
● 440 individual contributors to the core Netdata codebase
● You can find us on:
○ Community Forums : https://community.netdata.cloud
○ Reddit : https://www.reddit.com/r/netdata/
○ Twitter: https://twitter.com/linuxnetdata
Pulsar Virtual Summit North America 2021
Why the success?
● Built by monitoring professionals.
● Empower user by removing requirement to set everything up.
○ Run a single command to install it on every machine.
○ Sane defaults for data source detection (200+) and OOB alerts.
○ Instant stunning metric visualizations of all detected sources.
● Open-source, with a dedication to the success of the user.
● Extendable (easily collect data from any source and export to common TSDBs)
● Every metric, every second, but ridiculously efficient.
○ Programmed in C
○ Per-second metrics with minimal overhead because the data are stored on
the data source
○ Data queried only when required
○ In-house TSDB for short to medium term storage
Pulsar Virtual Summit North America 2021
Limitations of the FOSS agent
● Great to monitor a single, traditional machine, but what about:
○ Data replication
○ Ephemeral instances
○ Infrastructure-level metrics, alerts, patterns
● Step 1 - Centralization points in the user infrastructure
● Step 2 - Netdata Cloud
Pulsar Virtual Summit North America 2021
Centralization points (streaming)
Pulsar Virtual Summit North America 2021
Caveats:
● See only one node at at a time
● Access management
● Slow and unreliable feedback cycle
for new features
● Slow rollout
● Difficult to monetize
Enter Netdata Cloud
● Organize Netdata Agents into groups (War Rooms)
● Collaborate with your team by joining the same Space
● Instantly view charts of all the nodes in a group for faster root-cause
analysis for the entire infrastructure
● Centralize Alarm management from all agents
● Offer unlimited monitoring for free forever, charge later for advanced
user control and auditing, increased metadata retention, and enterprise
plugins.
Monitor and troubleshoot the entire
infrastructure, immediately, collaboratively.
Pulsar Virtual Summit North America 2021
The challenges of free infrastructure
monitoring
Pulsar Virtual Summit North America 2021
Unique challenges
● Needs to:
○ Be real time, but without sacrificing the number of metrics or the
per sec sampling rate (eventual consistency problematic).
○ Scale to hundreds of thousands (eventually millions) of monitored
instances
○ Provide strong auditing capabilities of any significant change,
including every alarm status update, metrics monitored etc.
○ Be free forever!
Pulsar Virtual Summit North America 2021
Unique solution
● Don’t centralize metrics.
○ Cloud needs to have metadata about the monitored nodes, the
metrics collected and individual alarms raised.
○ Queries about the metrics themselves need to be sent to agents
and served by them.
● Have the FOSS agent execute most of the required processing.
○ Even centralized alert thresholds require agents to evaluate
individual thresholds.
○ ML can’t be done centrally.
● Conclusion: We need persistent, bidirectional channels with the agents
and near-real-time updates to the metadata and alerts in the cloud.
Pulsar Virtual Summit North America 2021
Architecture
Pulsar Virtual Summit North America 2021
Bird’s eye view
Pulsar Virtual Summit North America 2021
HL Context Diagram
Pulsar Virtual Summit North America 2021
Backend and agent communication
Pulsar Virtual Summit North America 2021
Pulsar features we rely on
Pulsar Virtual Summit North America 2021
Decoupled storage from brokers
This feature allows us to scale horizontally much more efficiently than with
any solution that would couple storage with message handling. Our brokers
tend to be 6 under normal load, with 4 bookkeepers. Under load, we usually
don’t currently need to autoscale to more than 8 brokers. The 4
bookkeepers seem to keep up, this far.
Pulsar Virtual Summit North America 2021
Tiered Storage / offloading
● Tiered storage allows us to reduce costs, by keeping recent data in fast
(and expensive) storage, close to Pulsar, while offloading older data
that is only used occasionally (e.g. when replaying a topic to materialize
a view for some new functionality) in cheaper, "cold" storage
Pulsar Virtual Summit North America 2021
Unlimited retention
● We call CockroachDB our source of truth but the reality is that any time
we want to spin up a new service and populate its materialized views,
what we usually do is replay the Pulsar messages that this service
needs to subscribe to.
● We are currently in the process of creating jobs that would actually read
the entries in CockroachDB in order to update materialized views, but
even that will rely on creating individual messages in Pulsar, exactly like
the ones that the service is supposed to process.
Pulsar Virtual Summit North America 2021
Millions of topics
● We mainly use the almost unlimited number of topics for our
communication with the front end. A call to a REST API may cause our
microservices to issue requests via Pulsar. While the request is in-flight
we need to make sure that the required messages are picked up by the
microservice instance that is serving each request. This is why we need
a topic per pod to handle the responses. All these topics live in a
dedicated Pulsar namespace with no persistence. With pods always
getting created and destroyed, we end up with many such topics that
need to be routinely cleaned up.
Pulsar Virtual Summit North America 2021
Key-shared subscriptions
● We leverage key-shared subscriptions to guarantee in-order delivery of
messages. This allows us to write idempotent consumers with
decreased code complexity. It also allows us to avoid costly operations
like transactions when side effects take place, thanks to the fact that
we know for sure that only one consumer at a time can process a
message about a given key, thus removing any potential race condition.
Pulsar Virtual Summit North America 2021
Delayed publishing
Some Netdata alarms are configured to trigger notifications after a given
“delay”. This feature prevents the flurry of notifications that can arise when
a certain metrics moves quickly above and below a certain threshold within
a short period of time. Pulsar’s delayed publishing permitted us to
implement this feature without introducing repeating jobs that would
constantly check timestamps of pending notifications. So we are able to
preserve an event-based pattern that guarantees near-real-time processing
of the pending requests, without maintaining additional tables and running
additional queries.
Pulsar Virtual Summit North America 2021
Pulsar features missed - Future challenges
Pulsar Virtual Summit North America 2021
Multi-tenancy and Geo-replication
● We haven’t used these features yet, but they were key in our selection
of a message broker, to guarantee that we won’t have issues in the
future.
● For us, it’s not just a matter of high availability/DR. Our users and more
importantly the infrastructures they monitor are all over the world.
Since we communicate heavily with the agents running on those
infrastructures, we will need to have presence in all cloud providers, to
guarantee the lowest possible latency.
Pulsar Virtual Summit North America 2021
Schema support
● Schema support is an interesting feature, because validation is
especially important for us. The FOSS agent is not fully in our control
and the wide variety of OSs and infrastructures our agents run on
create a lot of unpredictable edge cases. Of course that’s without even
talking about the ability of any user to modify the source code either
with good intentions or not.
● However, when we implemented our first services we weren’t aware of
the feature and ended up validating ProtoBufs manually. This is
certainly one feature we will try out soon.
Pulsar Virtual Summit North America 2021
Subscription message selector support
● Our next big challenge and a key to our path to monetization is the
“Feed”. We toyed extensively with the idea of event sourcing using
Pulsar but, without powerful subscription message selectors, we can’t
offer the ability to filter the messages that the front-end requires to:
a. Provide a historical event log.
b. Update its state in real time, without polling for changes.
Pulsar Virtual Summit North America 2021
Go client feature parity with java client
● We have faced challenges with the Pulsar Go client and especially for
shared-key subscriptions for many months. Successive attempts to fix
the issues we had with race conditions and stuck producers /
consumers had been largely unsuccessful for a while, forcing us to
restart practically all services every 30 minutes. We have recently
engaged StreamNative for a managed services agreement and the
latest Go client version does seem to be behaving better, but we still
haven’t been able to stop the automated restarts by May 24, 2021
Pulsar Virtual Summit North America 2021
Pulsar Virtual Summit North America 2021

More Related Content

What's hot

MongoDB vs. Postgres Benchmarks
MongoDB vs. Postgres Benchmarks MongoDB vs. Postgres Benchmarks
MongoDB vs. Postgres Benchmarks EDB
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsMydbops
 
Building Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta LakeBuilding Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta LakeFlink Forward
 
BlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for CephBlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for CephSage Weil
 
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin AmbardDelta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin AmbardParis Data Engineers !
 
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021StreamNative
 
Airflow at lyft for Airflow summit 2020 conference
Airflow at lyft for Airflow summit 2020 conferenceAirflow at lyft for Airflow summit 2020 conference
Airflow at lyft for Airflow summit 2020 conferenceTao Feng
 
A Brief Introduction of TiDB (Percona Live)
A Brief Introduction of TiDB (Percona Live)A Brief Introduction of TiDB (Percona Live)
A Brief Introduction of TiDB (Percona Live)PingCAP
 
A guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on KubernetesA guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on Kubernetest8kobayashi
 
Introduction to memcached
Introduction to memcachedIntroduction to memcached
Introduction to memcachedJurriaan Persyn
 
YugabyteDB - Distributed SQL Database on Kubernetes
YugabyteDB - Distributed SQL Database on KubernetesYugabyteDB - Distributed SQL Database on Kubernetes
YugabyteDB - Distributed SQL Database on KubernetesDoKC
 
How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14Bobby Curtis
 
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotExactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotFlink Forward
 
VictoriaLogs: Open Source Log Management System - Preview
VictoriaLogs: Open Source Log Management System - PreviewVictoriaLogs: Open Source Log Management System - Preview
VictoriaLogs: Open Source Log Management System - PreviewVictoriaMetrics
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1Federico Campoli
 
OpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdfOpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdfssuser1490e8
 
Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium confluent
 

What's hot (20)

MongoDB vs. Postgres Benchmarks
MongoDB vs. Postgres Benchmarks MongoDB vs. Postgres Benchmarks
MongoDB vs. Postgres Benchmarks
 
MyRocks Deep Dive
MyRocks Deep DiveMyRocks Deep Dive
MyRocks Deep Dive
 
Introduction to Apache Kafka
Introduction to Apache KafkaIntroduction to Apache Kafka
Introduction to Apache Kafka
 
Percona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient BackupsPercona Xtrabackup - Highly Efficient Backups
Percona Xtrabackup - Highly Efficient Backups
 
Building Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta LakeBuilding Reliable Lakehouses with Apache Flink and Delta Lake
Building Reliable Lakehouses with Apache Flink and Delta Lake
 
BlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for CephBlueStore: a new, faster storage backend for Ceph
BlueStore: a new, faster storage backend for Ceph
 
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin AmbardDelta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
Delta Lake OSS: Create reliable and performant Data Lake by Quentin Ambard
 
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
Trino: A Ludicrously Fast Query Engine - Pulsar Summit NA 2021
 
Airflow at lyft for Airflow summit 2020 conference
Airflow at lyft for Airflow summit 2020 conferenceAirflow at lyft for Airflow summit 2020 conference
Airflow at lyft for Airflow summit 2020 conference
 
A Brief Introduction of TiDB (Percona Live)
A Brief Introduction of TiDB (Percona Live)A Brief Introduction of TiDB (Percona Live)
A Brief Introduction of TiDB (Percona Live)
 
Kafka on Pulsar
Kafka on Pulsar Kafka on Pulsar
Kafka on Pulsar
 
A guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on KubernetesA guide of PostgreSQL on Kubernetes
A guide of PostgreSQL on Kubernetes
 
Introduction to memcached
Introduction to memcachedIntroduction to memcached
Introduction to memcached
 
YugabyteDB - Distributed SQL Database on Kubernetes
YugabyteDB - Distributed SQL Database on KubernetesYugabyteDB - Distributed SQL Database on Kubernetes
YugabyteDB - Distributed SQL Database on Kubernetes
 
How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14How many ways to monitor oracle golden gate - OOW14
How many ways to monitor oracle golden gate - OOW14
 
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and PinotExactly-Once Financial Data Processing at Scale with Flink and Pinot
Exactly-Once Financial Data Processing at Scale with Flink and Pinot
 
VictoriaLogs: Open Source Log Management System - Preview
VictoriaLogs: Open Source Log Management System - PreviewVictoriaLogs: Open Source Log Management System - Preview
VictoriaLogs: Open Source Log Management System - Preview
 
Postgresql database administration volume 1
Postgresql database administration volume 1Postgresql database administration volume 1
Postgresql database administration volume 1
 
OpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdfOpenShift Virtualization- Technical Overview.pdf
OpenShift Virtualization- Technical Overview.pdf
 
Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium Change Data Streaming Patterns for Microservices With Debezium
Change Data Streaming Patterns for Microservices With Debezium
 

Similar to How Pulsar Enables Netdata to Offer Unlimited Infrastructure Monitoring for Free - Pulsar Summit NA 2021

IoT Story: From Edge to HDP
IoT Story: From Edge to HDPIoT Story: From Edge to HDP
IoT Story: From Edge to HDPDataWorks Summit
 
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed ServiceCloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed ServiceVMware Tanzu
 
AWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data AnalyticsAWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data AnalyticsAmazon Web Services
 
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021StreamNative
 
Commit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architecture
Commit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architectureCommit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architecture
Commit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architectureJordi Puigsegur Figueras
 
RethinkConn 2022!
RethinkConn 2022!RethinkConn 2022!
RethinkConn 2022!NATS
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kuberneteskloia
 
Improving performance and efficiency with Network Virtualization Overlays
Improving performance and efficiency with Network Virtualization OverlaysImproving performance and efficiency with Network Virtualization Overlays
Improving performance and efficiency with Network Virtualization OverlaysAdam Johnson
 
APAC Kafka Summit - Best Of
APAC Kafka Summit - Best Of APAC Kafka Summit - Best Of
APAC Kafka Summit - Best Of confluent
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Igor De Souza
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentationProdops.io
 
Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021
Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021
Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021StreamNative
 
Pivotal cloud cache for .net microservices
Pivotal cloud cache for .net microservicesPivotal cloud cache for .net microservices
Pivotal cloud cache for .net microservicesJagdish Mirani
 
Implement a Universal Data Distribution Architecture to Manage All Streaming ...
Implement a Universal Data Distribution Architecture to Manage All Streaming ...Implement a Universal Data Distribution Architecture to Manage All Streaming ...
Implement a Universal Data Distribution Architecture to Manage All Streaming ...Timothy Spann
 
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst ITThings You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst ITOpenStack
 
Zenko @Cloud Native Foundation London Meetup March 6th 2018
Zenko @Cloud Native Foundation London Meetup March 6th 2018Zenko @Cloud Native Foundation London Meetup March 6th 2018
Zenko @Cloud Native Foundation London Meetup March 6th 2018Laure Vergeron
 
Confluent Partner Tech Talk with SVA
Confluent Partner Tech Talk with SVAConfluent Partner Tech Talk with SVA
Confluent Partner Tech Talk with SVAconfluent
 
Montreal MuleSoft_Meetup_16-Aug.pptx
Montreal MuleSoft_Meetup_16-Aug.pptxMontreal MuleSoft_Meetup_16-Aug.pptx
Montreal MuleSoft_Meetup_16-Aug.pptxshubhamkalsi2
 
Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015aspyker
 

Similar to How Pulsar Enables Netdata to Offer Unlimited Infrastructure Monitoring for Free - Pulsar Summit NA 2021 (20)

IoT Story: From Edge to HDP
IoT Story: From Edge to HDPIoT Story: From Edge to HDP
IoT Story: From Edge to HDP
 
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed ServiceCloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
Cloud-Native Patterns and the Benefits of MySQL as a Platform Managed Service
 
AWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data AnalyticsAWS Sydney Summit 2013 - Big Data Analytics
AWS Sydney Summit 2013 - Big Data Analytics
 
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
Why Micro Focus Chose Pulsar for Data Ingestion - Pulsar Summit NA 2021
 
Commit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architecture
Commit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architectureCommit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architecture
Commit Conf 2018 - Hotelbeds' journey to a microservice cloud-based architecture
 
Dagster @ R&S MNT
Dagster @ R&S MNTDagster @ R&S MNT
Dagster @ R&S MNT
 
RethinkConn 2022!
RethinkConn 2022!RethinkConn 2022!
RethinkConn 2022!
 
Ultimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on KubernetesUltimate Guide to Microservice Architecture on Kubernetes
Ultimate Guide to Microservice Architecture on Kubernetes
 
Improving performance and efficiency with Network Virtualization Overlays
Improving performance and efficiency with Network Virtualization OverlaysImproving performance and efficiency with Network Virtualization Overlays
Improving performance and efficiency with Network Virtualization Overlays
 
APAC Kafka Summit - Best Of
APAC Kafka Summit - Best Of APAC Kafka Summit - Best Of
APAC Kafka Summit - Best Of
 
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
Data Engineer, Patterns & Architecture The future: Deep-dive into Microservic...
 
prodops.io k8s presentation
prodops.io k8s presentationprodops.io k8s presentation
prodops.io k8s presentation
 
Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021
Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021
Function Mesh: Complex Streaming Jobs Made Simple - Pulsar Summit NA 2021
 
Pivotal cloud cache for .net microservices
Pivotal cloud cache for .net microservicesPivotal cloud cache for .net microservices
Pivotal cloud cache for .net microservices
 
Implement a Universal Data Distribution Architecture to Manage All Streaming ...
Implement a Universal Data Distribution Architecture to Manage All Streaming ...Implement a Universal Data Distribution Architecture to Manage All Streaming ...
Implement a Universal Data Distribution Architecture to Manage All Streaming ...
 
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst ITThings You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
Things You MUST Know Before Deploying OpenStack: Bruno Lago, Catalyst IT
 
Zenko @Cloud Native Foundation London Meetup March 6th 2018
Zenko @Cloud Native Foundation London Meetup March 6th 2018Zenko @Cloud Native Foundation London Meetup March 6th 2018
Zenko @Cloud Native Foundation London Meetup March 6th 2018
 
Confluent Partner Tech Talk with SVA
Confluent Partner Tech Talk with SVAConfluent Partner Tech Talk with SVA
Confluent Partner Tech Talk with SVA
 
Montreal MuleSoft_Meetup_16-Aug.pptx
Montreal MuleSoft_Meetup_16-Aug.pptxMontreal MuleSoft_Meetup_16-Aug.pptx
Montreal MuleSoft_Meetup_16-Aug.pptx
 
Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015Triangle Devops Meetup 10/2015
Triangle Devops Meetup 10/2015
 

More from StreamNative

Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022StreamNative
 
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...StreamNative
 
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...StreamNative
 
Distributed Database Design Decisions to Support High Performance Event Strea...
Distributed Database Design Decisions to Support High Performance Event Strea...Distributed Database Design Decisions to Support High Performance Event Strea...
Distributed Database Design Decisions to Support High Performance Event Strea...StreamNative
 
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022StreamNative
 
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022StreamNative
 
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...StreamNative
 
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...StreamNative
 
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022StreamNative
 
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...StreamNative
 
Understanding Broker Load Balancing - Pulsar Summit SF 2022
Understanding Broker Load Balancing - Pulsar Summit SF 2022Understanding Broker Load Balancing - Pulsar Summit SF 2022
Understanding Broker Load Balancing - Pulsar Summit SF 2022StreamNative
 
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...StreamNative
 
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022StreamNative
 
Event-Driven Applications Done Right - Pulsar Summit SF 2022
Event-Driven Applications Done Right - Pulsar Summit SF 2022Event-Driven Applications Done Right - Pulsar Summit SF 2022
Event-Driven Applications Done Right - Pulsar Summit SF 2022StreamNative
 
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022StreamNative
 
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022StreamNative
 
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022StreamNative
 
Welcome and Opening Remarks - Pulsar Summit SF 2022
Welcome and Opening Remarks - Pulsar Summit SF 2022Welcome and Opening Remarks - Pulsar Summit SF 2022
Welcome and Opening Remarks - Pulsar Summit SF 2022StreamNative
 
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...StreamNative
 
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...StreamNative
 

More from StreamNative (20)

Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
Is Using KoP (Kafka-on-Pulsar) a Good Idea? - Pulsar Summit SF 2022
 
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
 
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
Blue-green deploys with Pulsar & Envoy in an event-driven microservice ecosys...
 
Distributed Database Design Decisions to Support High Performance Event Strea...
Distributed Database Design Decisions to Support High Performance Event Strea...Distributed Database Design Decisions to Support High Performance Event Strea...
Distributed Database Design Decisions to Support High Performance Event Strea...
 
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
Simplify Pulsar Functions Development with SQL - Pulsar Summit SF 2022
 
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
Towards a ZooKeeper-less Pulsar, etcd, etcd, etcd. - Pulsar Summit SF 2022
 
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
Validating Apache Pulsar’s Behavior under Failure Conditions - Pulsar Summit ...
 
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
Cross the Streams! Creating Streaming Data Pipelines with Apache Flink + Apac...
 
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
Message Redelivery: An Unexpected Journey - Pulsar Summit SF 2022
 
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
Unlocking the Power of Lakehouse Architectures with Apache Pulsar and Apache ...
 
Understanding Broker Load Balancing - Pulsar Summit SF 2022
Understanding Broker Load Balancing - Pulsar Summit SF 2022Understanding Broker Load Balancing - Pulsar Summit SF 2022
Understanding Broker Load Balancing - Pulsar Summit SF 2022
 
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
Building an Asynchronous Application Framework with Python and Pulsar - Pulsa...
 
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022
 
Event-Driven Applications Done Right - Pulsar Summit SF 2022
Event-Driven Applications Done Right - Pulsar Summit SF 2022Event-Driven Applications Done Right - Pulsar Summit SF 2022
Event-Driven Applications Done Right - Pulsar Summit SF 2022
 
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
Pulsar @ Scale. 200M RPM and 1K instances - Pulsar Summit SF 2022
 
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
Data Democracy: Journey to User-Facing Analytics - Pulsar Summit SF 2022
 
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
Beam + Pulsar: Powerful Stream Processing at Scale - Pulsar Summit SF 2022
 
Welcome and Opening Remarks - Pulsar Summit SF 2022
Welcome and Opening Remarks - Pulsar Summit SF 2022Welcome and Opening Remarks - Pulsar Summit SF 2022
Welcome and Opening Remarks - Pulsar Summit SF 2022
 
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
Log System As Backbone – How We Built the World’s Most Advanced Vector Databa...
 
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
MoP(MQTT on Pulsar) - a Powerful Tool for Apache Pulsar in IoT - Pulsar Summi...
 

Recently uploaded

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machinePadma Pradeep
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonetsnaman860154
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticscarlostorres15106
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxnull - The Open Security Community
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationRidwan Fadjar
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsMark Billinghurst
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphNeo4j
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024BookNet Canada
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksSoftradix Technologies
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking MenDelhi Call girls
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreternaman860154
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersThousandEyes
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitecturePixlogix Infotech
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking MenDelhi Call girls
 

Recently uploaded (20)

Install Stable Diffusion in windows machine
Install Stable Diffusion in windows machineInstall Stable Diffusion in windows machine
Install Stable Diffusion in windows machine
 
The transition to renewables in India.pdf
The transition to renewables in India.pdfThe transition to renewables in India.pdf
The transition to renewables in India.pdf
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
How to convert PDF to text with Nanonets
How to convert PDF to text with NanonetsHow to convert PDF to text with Nanonets
How to convert PDF to text with Nanonets
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmaticsKotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
Kotlin Multiplatform & Compose Multiplatform - Starter kit for pragmatics
 
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptxMaking_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
Making_way_through_DLL_hollowing_inspite_of_CFG_by_Debjeet Banerjee.pptx
 
My Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 PresentationMy Hashitalk Indonesia April 2024 Presentation
My Hashitalk Indonesia April 2024 Presentation
 
Human Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR SystemsHuman Factors of XR: Using Human Factors to Design XR Systems
Human Factors of XR: Using Human Factors to Design XR Systems
 
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge GraphSIEMENS: RAPUNZEL – A Tale About Knowledge Graph
SIEMENS: RAPUNZEL – A Tale About Knowledge Graph
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptxVulnerability_Management_GRC_by Sohang Sengupta.pptx
Vulnerability_Management_GRC_by Sohang Sengupta.pptx
 
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
Transcript: #StandardsGoals for 2024: What’s new for BISAC - Tech Forum 2024
 
Benefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other FrameworksBenefits Of Flutter Compared To Other Frameworks
Benefits Of Flutter Compared To Other Frameworks
 
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men08448380779 Call Girls In Greater Kailash - I Women Seeking Men
08448380779 Call Girls In Greater Kailash - I Women Seeking Men
 
Presentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreterPresentation on how to chat with PDF using ChatGPT code interpreter
Presentation on how to chat with PDF using ChatGPT code interpreter
 
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for PartnersEnhancing Worker Digital Experience: A Hands-on Workshop for Partners
Enhancing Worker Digital Experience: A Hands-on Workshop for Partners
 
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
Neo4j - How KGs are shaping the future of Generative AI at AWS Summit London ...
 
Understanding the Laravel MVC Architecture
Understanding the Laravel MVC ArchitectureUnderstanding the Laravel MVC Architecture
Understanding the Laravel MVC Architecture
 
08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men08448380779 Call Girls In Civil Lines Women Seeking Men
08448380779 Call Girls In Civil Lines Women Seeking Men
 

How Pulsar Enables Netdata to Offer Unlimited Infrastructure Monitoring for Free - Pulsar Summit NA 2021

  • 1. How Pulsar enables Netdata to offer unlimited infrastructure monitoring for free Pulsar Virtual Summit North America 2021
  • 2. Speaker Pulsar Virtual Summit North America 2021 Christopher Akritidis COO, Netdata Christopher rallies the day-to-day efforts of the Netdata team with 20 years of experience in delivering IT-empowered business solutions. Before Netdata, he focused on optimizing performance and efficiency for telecom companies. When he’s not working, he enjoys science, philosophy, science fiction, strategy games, reading, and writing.
  • 3. Agenda ● Introduction / Presentation summary ● Who we are and what we want to achieve ● The challenges of a free infrastructure monitoring solution ● Netdata Cloud Architecture ● Pulsar features that we rely on ● Pulsar features missed - Challenges for the future Pulsar Virtual Summit North America 2021
  • 5. Presentation Summary ● The Netdata Agent is free, open source single-node monitoring software. Netdata Cloud is a free, closed source, software-as-a-service that brings together metadata from endpoints running the Netdata Agent, giving a complete view of the health and performance of an infrastructure. ● All the metrics remain on the Netdata Agent, making Netdata Cloud the focal point of a decentralized, scalable, low cost solution. ● The heart of Netdata Cloud is Pulsar. Almost every message coming from and going to the open source agents passes through it, often generating a series of other messages. ○ Pulsar's millions of topics and key-shared subscriptions allow us to deal with an arbitrary number of agents and requests from the front-end. ○ The reliable persistence of messages has allowed us to replay old events to rebuild old and build new materialized views and debug specific production issues. It's also what will enable us to implement an event sourcing pattern, for a new set of features we want to introduce shortly. ○ Decoupled and tiered storage help keep costs low, as the infrastructure expands. ● We have had a few challenges with Pulsar, especially regarding the Go client with shared subscriptions and future needs for event sourcing, but we rely on it heavily. Pulsar Virtual Summit North America 2021
  • 6. Who we are and what we want to achieve Pulsar Virtual Summit North America 2021
  • 7. Some History 2014 👨💻 Out of frustration for the current solutions, Costa Tsaousis starts working on a side-project. Netdata GitHub launch Almost 2 years in development, the project launches as an Open Source project 2016 Netdata Inc. With tens of thousands of GitHub ✨ in a matter of weeks. Costa founds Netdata Inc. 2018 Netdata Cloud launch Netdata delivers free-forever Cloud solution for easily and visually monitoring entire infrastructures 2020 Pulsar Virtual Summit North America 2021
  • 8. Reach ● Over 54K ✨ on GitHub ● Hundreds of thousands of active installations ● 440 individual contributors to the core Netdata codebase ● You can find us on: ○ Community Forums : https://community.netdata.cloud ○ Reddit : https://www.reddit.com/r/netdata/ ○ Twitter: https://twitter.com/linuxnetdata Pulsar Virtual Summit North America 2021
  • 9. Why the success? ● Built by monitoring professionals. ● Empower user by removing requirement to set everything up. ○ Run a single command to install it on every machine. ○ Sane defaults for data source detection (200+) and OOB alerts. ○ Instant stunning metric visualizations of all detected sources. ● Open-source, with a dedication to the success of the user. ● Extendable (easily collect data from any source and export to common TSDBs) ● Every metric, every second, but ridiculously efficient. ○ Programmed in C ○ Per-second metrics with minimal overhead because the data are stored on the data source ○ Data queried only when required ○ In-house TSDB for short to medium term storage Pulsar Virtual Summit North America 2021
  • 10. Limitations of the FOSS agent ● Great to monitor a single, traditional machine, but what about: ○ Data replication ○ Ephemeral instances ○ Infrastructure-level metrics, alerts, patterns ● Step 1 - Centralization points in the user infrastructure ● Step 2 - Netdata Cloud Pulsar Virtual Summit North America 2021
  • 11. Centralization points (streaming) Pulsar Virtual Summit North America 2021 Caveats: ● See only one node at at a time ● Access management ● Slow and unreliable feedback cycle for new features ● Slow rollout ● Difficult to monetize
  • 12. Enter Netdata Cloud ● Organize Netdata Agents into groups (War Rooms) ● Collaborate with your team by joining the same Space ● Instantly view charts of all the nodes in a group for faster root-cause analysis for the entire infrastructure ● Centralize Alarm management from all agents ● Offer unlimited monitoring for free forever, charge later for advanced user control and auditing, increased metadata retention, and enterprise plugins. Monitor and troubleshoot the entire infrastructure, immediately, collaboratively. Pulsar Virtual Summit North America 2021
  • 13. The challenges of free infrastructure monitoring Pulsar Virtual Summit North America 2021
  • 14. Unique challenges ● Needs to: ○ Be real time, but without sacrificing the number of metrics or the per sec sampling rate (eventual consistency problematic). ○ Scale to hundreds of thousands (eventually millions) of monitored instances ○ Provide strong auditing capabilities of any significant change, including every alarm status update, metrics monitored etc. ○ Be free forever! Pulsar Virtual Summit North America 2021
  • 15. Unique solution ● Don’t centralize metrics. ○ Cloud needs to have metadata about the monitored nodes, the metrics collected and individual alarms raised. ○ Queries about the metrics themselves need to be sent to agents and served by them. ● Have the FOSS agent execute most of the required processing. ○ Even centralized alert thresholds require agents to evaluate individual thresholds. ○ ML can’t be done centrally. ● Conclusion: We need persistent, bidirectional channels with the agents and near-real-time updates to the metadata and alerts in the cloud. Pulsar Virtual Summit North America 2021
  • 17. Bird’s eye view Pulsar Virtual Summit North America 2021
  • 18. HL Context Diagram Pulsar Virtual Summit North America 2021
  • 19. Backend and agent communication Pulsar Virtual Summit North America 2021
  • 20. Pulsar features we rely on Pulsar Virtual Summit North America 2021
  • 21. Decoupled storage from brokers This feature allows us to scale horizontally much more efficiently than with any solution that would couple storage with message handling. Our brokers tend to be 6 under normal load, with 4 bookkeepers. Under load, we usually don’t currently need to autoscale to more than 8 brokers. The 4 bookkeepers seem to keep up, this far. Pulsar Virtual Summit North America 2021
  • 22. Tiered Storage / offloading ● Tiered storage allows us to reduce costs, by keeping recent data in fast (and expensive) storage, close to Pulsar, while offloading older data that is only used occasionally (e.g. when replaying a topic to materialize a view for some new functionality) in cheaper, "cold" storage Pulsar Virtual Summit North America 2021
  • 23. Unlimited retention ● We call CockroachDB our source of truth but the reality is that any time we want to spin up a new service and populate its materialized views, what we usually do is replay the Pulsar messages that this service needs to subscribe to. ● We are currently in the process of creating jobs that would actually read the entries in CockroachDB in order to update materialized views, but even that will rely on creating individual messages in Pulsar, exactly like the ones that the service is supposed to process. Pulsar Virtual Summit North America 2021
  • 24. Millions of topics ● We mainly use the almost unlimited number of topics for our communication with the front end. A call to a REST API may cause our microservices to issue requests via Pulsar. While the request is in-flight we need to make sure that the required messages are picked up by the microservice instance that is serving each request. This is why we need a topic per pod to handle the responses. All these topics live in a dedicated Pulsar namespace with no persistence. With pods always getting created and destroyed, we end up with many such topics that need to be routinely cleaned up. Pulsar Virtual Summit North America 2021
  • 25. Key-shared subscriptions ● We leverage key-shared subscriptions to guarantee in-order delivery of messages. This allows us to write idempotent consumers with decreased code complexity. It also allows us to avoid costly operations like transactions when side effects take place, thanks to the fact that we know for sure that only one consumer at a time can process a message about a given key, thus removing any potential race condition. Pulsar Virtual Summit North America 2021
  • 26. Delayed publishing Some Netdata alarms are configured to trigger notifications after a given “delay”. This feature prevents the flurry of notifications that can arise when a certain metrics moves quickly above and below a certain threshold within a short period of time. Pulsar’s delayed publishing permitted us to implement this feature without introducing repeating jobs that would constantly check timestamps of pending notifications. So we are able to preserve an event-based pattern that guarantees near-real-time processing of the pending requests, without maintaining additional tables and running additional queries. Pulsar Virtual Summit North America 2021
  • 27. Pulsar features missed - Future challenges Pulsar Virtual Summit North America 2021
  • 28. Multi-tenancy and Geo-replication ● We haven’t used these features yet, but they were key in our selection of a message broker, to guarantee that we won’t have issues in the future. ● For us, it’s not just a matter of high availability/DR. Our users and more importantly the infrastructures they monitor are all over the world. Since we communicate heavily with the agents running on those infrastructures, we will need to have presence in all cloud providers, to guarantee the lowest possible latency. Pulsar Virtual Summit North America 2021
  • 29. Schema support ● Schema support is an interesting feature, because validation is especially important for us. The FOSS agent is not fully in our control and the wide variety of OSs and infrastructures our agents run on create a lot of unpredictable edge cases. Of course that’s without even talking about the ability of any user to modify the source code either with good intentions or not. ● However, when we implemented our first services we weren’t aware of the feature and ended up validating ProtoBufs manually. This is certainly one feature we will try out soon. Pulsar Virtual Summit North America 2021
  • 30. Subscription message selector support ● Our next big challenge and a key to our path to monetization is the “Feed”. We toyed extensively with the idea of event sourcing using Pulsar but, without powerful subscription message selectors, we can’t offer the ability to filter the messages that the front-end requires to: a. Provide a historical event log. b. Update its state in real time, without polling for changes. Pulsar Virtual Summit North America 2021
  • 31. Go client feature parity with java client ● We have faced challenges with the Pulsar Go client and especially for shared-key subscriptions for many months. Successive attempts to fix the issues we had with race conditions and stuck producers / consumers had been largely unsuccessful for a while, forcing us to restart practically all services every 30 minutes. We have recently engaged StreamNative for a managed services agreement and the latest Go client version does seem to be behaving better, but we still haven’t been able to stop the automated restarts by May 24, 2021 Pulsar Virtual Summit North America 2021
  • 32. Pulsar Virtual Summit North America 2021

Editor's Notes

  1. AlexM: Programmed in C - do we need it this way? Why? What is the reason? Suggestion: Programmed in C and Go for the best performance, efficiency and maintainability. AlexM: General suggestion - not everybody will understand abbreviations like OOB and TSDB
  2. AlexM: the same for FOSS - we understand what it means but others?
  3. AlexM: As a preparation for the next slide we need to focus people here that Parent Node aggregates Data and keeps your data within your infrastructure but how to use this data, how to make it more useful -> Cloud solution
  4. AlexM: It is safer to use Unique monitoring challenges - as we are saying here “free forever”, but we are planning to start charging clients for reasons explained before AlexM: Nodes - outside of Netdata control, managed by clients, challenging to synchronize and aggregate data for presentation on the Cloud
  5. AlexM - We need to be clear across presentation what is Node and what is Agent