SlideShare a Scribd company logo
Pulsar's Cloud Journey in Yahoo!
On-prem, Cloud, and Hybrid
Rajan Dhabalia rdhabalia@yahooinc.com
Ludwig Pummer ludwig@yahooinc.com
Pulsar summit 2022
1
Speakers
Rajan Dhabalia
Sr. Principal Software Engineer, Yahoo!
Ludwig Pummer
Principal Production Engineer, Yahoo!
2
Agenda
1. Pulsar in Yahoo!
2. Cloud challenges for a messaging system
3. Why platforms should choose Pulsar for public cloud
4. Why users choose Pulsar on cloud
5. Summary
6. QA
3
● Developed by Yahoo! in 2014 to serve a hosted pub-sub service
○ open-sourced in 2016
● Global deployment
○ 6 DC (Asia, Europe, US)
○ Public cloud present on AWS
○ Full mesh replication
● Mission critical use cases
○ Lower latency bus for use by other low latency services
○ Write availability
○ Sherpa (PNUTS), Mail, Finance, News, Monitoring system, etc.
Pulsar's Journey in Yahoo!
4
Challenges on Cloud for Messaging Systems
Managed
Service
• Multi-tenancy (shared by different usecases)
• Cost calculation
Security
Connectivity
• Data security (EKS support)
• Network security (VPC, Security Groups,
Network ACLs)
• Auth
• Secured enterprise Proxy support (ATS,
HAProxy, etc.)
Performance
Reliability
Availability
• Availability even after all replicas crashed
• Fault tolerance
• Durability (EBS) vs performance (local
storage)
5
Cost effective
● High performance
with less cost
● Durability and
availability without
cost overhead
Availability and
Performance
● High availability
● Low latency Bus
● Native load balancer
and fault tolerance
● Data durability and
No data loss
Managed Service
● Multi-tenancy
● Enterprise proxy
support for secure
connectivity
● Hard/Soft isolation
● Cost management
Deployment and
Monitoring
● Easy deployment
● Zero downtime
● Blue-green cluster
support
● Stats and Monitoring
Why Platforms Should Choose Pulsar on Public Cloud
6
● Multi tenancy
○ Multiple use cases on same cluster: Low latency publish, cold reads,
high fan-out supported due to Bookie’s I/O isolation (Figure 1)
○ Soft and Hard isolation at broker and bookie
● Cost calculation and management
● Enterprise proxy support to allow connectivity on cloud (PIP-60)
○ eg: ATS, HAProxy, etc.
● Support Hybrid mode by syncing cluster and ACLs metadata (PIP-136)
● Users do not require Pulsar expertise
● Reduce maintenance and upgrade efforts by maintaining shared cluster
Managed Service
Figure 1: Bookie I/O isolation and WAL
architecture
Writer Reader
Journal
Data
File
Data
Device
Journal Device
Write Reads (cold)
(High performance
small EBS storage
(eg: io1/io2))
(Less expensive
persistent EBS
storage (eg: gp3))
7
Availability and Performance
● Availability
- High availability during rolling upgrade or node crash due to
segmented oriented architecture. (Figure 2)
● Durability
- Bookie using highly durable EBS storage that allows crashed bookie
pods to recover and read
● Performance
- Maximize utilization and high performance on EBS
- WAL (journal) on high performance : small size io2/gp3
- Data storage on less expensive : gp3
● Scalability
- Container friendly deployment on kubernetes
- Auto scaling group for stateless brokers
Figure 2: Bookie segmentation
8
Effortless Deployment
● Rolling upgrade: Zero downtime and Durability
- High availability during rolling upgrade or node crash due to
segmented oriented architecture.
- Bookie using highly durable EBS storage that allows crashed
bookie pods to recover and read.
● Deployment component
- Deploying to EKS cluster using Helm-chart.
- Prometheus, and monitoring dashboard for alerts and monitoring
● Blue-Green deployment support
- Easy EKS cluster upgrade and migration using blue-green cluster
migration support (PIP-188)
● Legacy on-prem topic migration with custom topic factory
- Pulsar supports custom topic-Factory to manage custom topic
behavior for legacy topic migration. (PIP-100)
9
Cost Effective
● EBS Storage Vs Local storage on cloud
- Pulsar on EBS : cost effective, high performance, and durable
- EBS is more durable and cheaper than Local storage. But local storage is faster.
● High performance WAL and Cheaper durable storage
- Use high performance EBS storage only for WAL (requires small storage size) to achieve low latency. Eg: io2 or gp3 with high iops and
throughput thresholds
- Use cheaper durable EBS for durable storage (eg: gp3) that doesn’t impact publish latency
● Do not pay for extra replica to manage Availability
- During deployment Partitioned oriented architecture requires extra replica (RF=3) for availability vs Segment oriented Bookie
requires RF=2
- Bookie segments are created on the fly to continue topic writes
● Cheaper broker compute for high fanout
10
Why Users Choose Pulsar on Public Cloud
11
Secure Connectivity: Mutual TLS
● Mutual TLS for transport and authentication
- Each Tenant has distinct CN
- Cloud Brokers and On-Prem Brokers have distinct CNs
12
Secure Connectivity: SNI Routing
ClientBuilder clientBuilder = PulsarClient.builder()
.serviceUrl("pulsar+ssl://uw2broker.n.svc.cluster.local:6651")
.proxyServiceUrl("pulsar+ssl://xyz.elb.us-west-2.amazonaws.com:6651", ProxyProtocol.SNI)
13
Secure Connectivity: SNI Routing
us-west-2 trafficserver pods
SNI Proxy NLB: xyz.elb.us-west-2.amazonaws.com
sni:
- fqdn: 'uw2broker.n.svc.cluster.local'
tunnel_route: 'uw2broker.n.svc.cluster.local:6651'
- fqdn: 'uw2broker-1.uw2broker.n.svc.cluster.local'
tunnel_route: 'uw2broker-1.uw2broker.n.svc.cluster.local:6651'
- fqdn: 'pulsar-lb.nyc.example.com'
tunnel_route: 'pulsar-sni.nyc.example.com:6651'
- fqdn: '*.nyc.example.com'
tunnel_route: 'pulsar-sni.nyc.example.com:6651'
"nyc" trafficserver pods
SNI Proxy LB: pulsar-lb.nyc.example.com
sni:
- fqdn: 'pulsar-lb.nyc.example.com'
tunnel_route: 'pulsar-lb.nyc.example.com:6651'
- fqdn: 'broker1.nyc.example.com'
tunnel_route: 'broker1.nyc.example.com:6651'
- fqdn: 'uw2broker.n.svc.cluster.local'
tunnel_route: 'xyz.elb.us-west-2.amazonaws.com:6651'
- fqdn: '*.uw2broker.n.svc.cluster.local'
tunnel_route: 'xyz.elb.us-west-2.amazonaws.com:6651'
Apache Traffic Server SNI Routing Example - AWS to On-Prem
14
Secure Connectivity
● Between Cloud
Clusters
- VPC peering
- Private IP
SNI Proxy
15
Secure Connectivity
● Between Cloud Cluster and On-Prem Cluster
- Network ACLs permit only Cluster SNI
Proxies
- Public IP SNI Proxy
16
Secure Connectivity
● Cloud Tenant to Cloud Cluster
- PrivateLink
- Private IP SNI Proxy
17
Availability, Performance, and Price
● Availability
- Cluster online through all maintenance operations
- EKS and Pulsar recovers nodes/pods/topics automatically
- Client Library reconnects and retries automatically
● Persistence Guarantee
- Every Acknowledged message is f-synced on 2 EBS volumes
● Low Latency
- < 8ms 99%ile publish latency @ 1KB (c5.4xlarge with gp3) with mTLS and Disk encryption
● Price
- About one-seventh of MSK for equivalent MB/s
18
Security and Encryption
● End-to-end (Envelope) Encryption
- Encrypt/Decrypt available in client library
- Pulsar platform never sees your keys or plaintext
- Multi-tenant friendly
● Multi-tenant Authorization
- Granular authorization from namespace to subscription name
- You grant other tenants access to your topics
19
Security and Encryption
● Network Encryption
- Encrypted during transport
- Mutual TLS between client, brokers, and bookies
● Storage Encryption
- Encrypted at rest
- Encrypted EBS volumes already included in publish latency
● Network Security
- PrivateLink simplifies Network ACLs, Security Groups, and Routing
- SNI Routing + mTLS protects against MITM
20
Geo Replication and Hybrid Access
● Full Mesh Replication under tenant control
- Cloud cluster and On-prem cluster are equals
- Publish anywhere, consume anywhere
- Replicate a topic into a new Cloud cluster with one pulsar-admin
command
● Hybrid Access
- Tenant in Cloud to Pulsar in Cloud: PrivateLink with SNI Proxy
- Tenant in Cloud to Pulsar On-Prem: Pulsar Proxy or SNI Proxy
- Tenant on Prem to Pulsar in Cloud: Public NLB with SNI Proxy
- Tenant on Prem to Pulsar on Prem: Direct Connect
- Same topic name
- Only change connect parameters: Service URL, Proxy Scheme,
Proxy Service URL
21
Summary
1. Cluster management requires little operational resources
2. Super secure ecosystem
3. Cost effective and highly performant
4. Multi and hybrid cloud geo replication
5. Happy platform and happy customers
22
Q&A
23
Thank You
Ludwig Pummer
https://www.linkedin.com/in/ludwigpummer/
Rajan Dhabalia
https://www.linkedin.com/in/rajan-dhabalia
@dhabaliaraj
24

More Related Content

Similar to Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022

Redpanda and ClickHouse
Redpanda and ClickHouseRedpanda and ClickHouse
Redpanda and ClickHouse
Altinity Ltd
 
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
Yahoo Developer Network
 
2018 Infortrend EonStor GSe Pro Family Introduction
2018 Infortrend EonStor GSe Pro Family Introduction2018 Infortrend EonStor GSe Pro Family Introduction
2018 Infortrend EonStor GSe Pro Family Introduction
infortrendgroup
 
Linked In Stream Processing Meetup - Apache Pulsar
Linked In Stream Processing Meetup - Apache PulsarLinked In Stream Processing Meetup - Apache Pulsar
Linked In Stream Processing Meetup - Apache Pulsar
Karthik Ramasamy
 
Dependable Storage and Computing using Multiple Cloud Providers
Dependable Storage and Computing using Multiple Cloud ProvidersDependable Storage and Computing using Multiple Cloud Providers
Dependable Storage and Computing using Multiple Cloud Providers
Alysson Bessani
 
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-CasesRed Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red_Hat_Storage
 
Modern Distributed Messaging and RPC
Modern Distributed Messaging and RPCModern Distributed Messaging and RPC
Modern Distributed Messaging and RPC
Max Alexejev
 
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messagesMulti-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
LINE Corporation
 
Big data analytics and docker the thrilla in manila
Big data analytics and docker  the thrilla in manilaBig data analytics and docker  the thrilla in manila
Big data analytics and docker the thrilla in manila
Dean Hildebrand
 
Challenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightChallenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan Lambright
Gluster.org
 
Apache CloudStack from API to UI
Apache CloudStack from API to UIApache CloudStack from API to UI
Apache CloudStack from API to UI
CloudStack - Open Source Cloud Computing Project
 
Apache Kafka
Apache KafkaApache Kafka
Apache Kafka
Saroj Panyasrivanit
 
Deploying Apache CloudStack from API to UI
Deploying Apache CloudStack from API to UIDeploying Apache CloudStack from API to UI
Deploying Apache CloudStack from API to UI
Joe Brockmeier
 
CSCfi Computing Services 12/2014
CSCfi Computing Services 12/2014CSCfi Computing Services 12/2014
CSCfi Computing Services 12/2014
Olli-Pekka Lehto
 
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storageWebinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
MayaData Inc
 
Cncf storage-final-filip
Cncf storage-final-filipCncf storage-final-filip
Cncf storage-final-filip
Juraj Hantak
 
Timothy Spann: Apache Pulsar for ML
Timothy Spann: Apache Pulsar for MLTimothy Spann: Apache Pulsar for ML
Timothy Spann: Apache Pulsar for ML
Edunomica
 
Energy Saving ARM Server Cluster Born for Distributed Storage & Computing
Energy Saving ARM Server Cluster Born for Distributed Storage & ComputingEnergy Saving ARM Server Cluster Born for Distributed Storage & Computing
Energy Saving ARM Server Cluster Born for Distributed Storage & Computing
Aaron Joue
 
Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4
Tony Pearson
 
Instaclustr Kafka Meetup Sydney Presentation
Instaclustr Kafka Meetup Sydney PresentationInstaclustr Kafka Meetup Sydney Presentation
Instaclustr Kafka Meetup Sydney Presentation
Ben Slater
 

Similar to Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022 (20)

Redpanda and ClickHouse
Redpanda and ClickHouseRedpanda and ClickHouse
Redpanda and ClickHouse
 
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
October 2016 HUG: Pulsar,  a highly scalable, low latency pub-sub messaging s...
 
2018 Infortrend EonStor GSe Pro Family Introduction
2018 Infortrend EonStor GSe Pro Family Introduction2018 Infortrend EonStor GSe Pro Family Introduction
2018 Infortrend EonStor GSe Pro Family Introduction
 
Linked In Stream Processing Meetup - Apache Pulsar
Linked In Stream Processing Meetup - Apache PulsarLinked In Stream Processing Meetup - Apache Pulsar
Linked In Stream Processing Meetup - Apache Pulsar
 
Dependable Storage and Computing using Multiple Cloud Providers
Dependable Storage and Computing using Multiple Cloud ProvidersDependable Storage and Computing using Multiple Cloud Providers
Dependable Storage and Computing using Multiple Cloud Providers
 
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-CasesRed Hat Gluster Storage - Direction, Roadmap and Use-Cases
Red Hat Gluster Storage - Direction, Roadmap and Use-Cases
 
Modern Distributed Messaging and RPC
Modern Distributed Messaging and RPCModern Distributed Messaging and RPC
Modern Distributed Messaging and RPC
 
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messagesMulti-Tenancy Kafka cluster for LINE services with 250 billion daily messages
Multi-Tenancy Kafka cluster for LINE services with 250 billion daily messages
 
Big data analytics and docker the thrilla in manila
Big data analytics and docker  the thrilla in manilaBig data analytics and docker  the thrilla in manila
Big data analytics and docker the thrilla in manila
 
Challenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan LambrightChallenges with Gluster and Persistent Memory with Dan Lambright
Challenges with Gluster and Persistent Memory with Dan Lambright
 
Apache CloudStack from API to UI
Apache CloudStack from API to UIApache CloudStack from API to UI
Apache CloudStack from API to UI
 
Apache Kafka
Apache KafkaApache Kafka
Apache Kafka
 
Deploying Apache CloudStack from API to UI
Deploying Apache CloudStack from API to UIDeploying Apache CloudStack from API to UI
Deploying Apache CloudStack from API to UI
 
CSCfi Computing Services 12/2014
CSCfi Computing Services 12/2014CSCfi Computing Services 12/2014
CSCfi Computing Services 12/2014
 
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storageWebinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
Webinar: OpenEBS - Still Free and now FASTEST Kubernetes storage
 
Cncf storage-final-filip
Cncf storage-final-filipCncf storage-final-filip
Cncf storage-final-filip
 
Timothy Spann: Apache Pulsar for ML
Timothy Spann: Apache Pulsar for MLTimothy Spann: Apache Pulsar for ML
Timothy Spann: Apache Pulsar for ML
 
Energy Saving ARM Server Cluster Born for Distributed Storage & Computing
Energy Saving ARM Server Cluster Born for Distributed Storage & ComputingEnergy Saving ARM Server Cluster Born for Distributed Storage & Computing
Energy Saving ARM Server Cluster Born for Distributed Storage & Computing
 
Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4Inter connect2016 yss1841-cloud-storage-options-v4
Inter connect2016 yss1841-cloud-storage-options-v4
 
Instaclustr Kafka Meetup Sydney Presentation
Instaclustr Kafka Meetup Sydney PresentationInstaclustr Kafka Meetup Sydney Presentation
Instaclustr Kafka Meetup Sydney Presentation
 

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 2022
StreamNative
 
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 2022
StreamNative
 
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
StreamNative
 
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 2022
StreamNative
 
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 2022
StreamNative
 
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
 
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
StreamNative
 
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
StreamNative
 
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
StreamNative
 
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
StreamNative
 
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
StreamNative
 
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
 
Improvements Made in KoP 2.9.0 - Pulsar Summit Asia 2021
Improvements Made in KoP 2.9.0  - Pulsar Summit Asia 2021Improvements Made in KoP 2.9.0  - Pulsar Summit Asia 2021
Improvements Made in KoP 2.9.0 - Pulsar Summit Asia 2021
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...
 
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...
 
Improvements Made in KoP 2.9.0 - Pulsar Summit Asia 2021
Improvements Made in KoP 2.9.0  - Pulsar Summit Asia 2021Improvements Made in KoP 2.9.0  - Pulsar Summit Asia 2021
Improvements Made in KoP 2.9.0 - Pulsar Summit Asia 2021
 

Recently uploaded

Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
Vlad Stirbu
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
Jemma Hussein Allen
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
BookNet Canada
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
KAMESHS29
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
nkrafacyberclub
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
Peter Spielvogel
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
Laura Byrne
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
Globus
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
Jen Stirrup
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
Dorra BARTAGUIZ
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
ThousandEyes
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
Thijs Feryn
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
Ralf Eggert
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
Adtran
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
DianaGray10
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
Pierluigi Pugliese
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
DanBrown980551
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
James Anderson
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
Guy Korland
 

Recently uploaded (20)

Quantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIsQuantum Computing: Current Landscape and the Future Role of APIs
Quantum Computing: Current Landscape and the Future Role of APIs
 
The Future of Platform Engineering
The Future of Platform EngineeringThe Future of Platform Engineering
The Future of Platform Engineering
 
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...Transcript: Selling digital books in 2024: Insights from industry leaders - T...
Transcript: Selling digital books in 2024: Insights from industry leaders - T...
 
RESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for studentsRESUME BUILDER APPLICATION Project for students
RESUME BUILDER APPLICATION Project for students
 
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptxSecstrike : Reverse Engineering & Pwnable tools for CTF.pptx
Secstrike : Reverse Engineering & Pwnable tools for CTF.pptx
 
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdfSAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
SAP Sapphire 2024 - ASUG301 building better apps with SAP Fiori.pdf
 
The Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and SalesThe Art of the Pitch: WordPress Relationships and Sales
The Art of the Pitch: WordPress Relationships and Sales
 
Enhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZEnhancing Performance with Globus and the Science DMZ
Enhancing Performance with Globus and the Science DMZ
 
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...The Metaverse and AI: how can decision-makers harness the Metaverse for their...
The Metaverse and AI: how can decision-makers harness the Metaverse for their...
 
Elevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object CalisthenicsElevating Tactical DDD Patterns Through Object Calisthenics
Elevating Tactical DDD Patterns Through Object Calisthenics
 
Assure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyesAssure Contact Center Experiences for Your Customers With ThousandEyes
Assure Contact Center Experiences for Your Customers With ThousandEyes
 
FIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdfFIDO Alliance Osaka Seminar: Overview.pdf
FIDO Alliance Osaka Seminar: Overview.pdf
 
Accelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish CachingAccelerate your Kubernetes clusters with Varnish Caching
Accelerate your Kubernetes clusters with Varnish Caching
 
PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)PHP Frameworks: I want to break free (IPC Berlin 2024)
PHP Frameworks: I want to break free (IPC Berlin 2024)
 
Pushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 daysPushing the limits of ePRTC: 100ns holdover for 100 days
Pushing the limits of ePRTC: 100ns holdover for 100 days
 
UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4UiPath Test Automation using UiPath Test Suite series, part 4
UiPath Test Automation using UiPath Test Suite series, part 4
 
By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024By Design, not by Accident - Agile Venture Bolzano 2024
By Design, not by Accident - Agile Venture Bolzano 2024
 
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
LF Energy Webinar: Electrical Grid Modelling and Simulation Through PowSyBl -...
 
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
GDG Cloud Southlake #33: Boule & Rebala: Effective AppSec in SDLC using Deplo...
 
GraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge GraphGraphRAG is All You need? LLM & Knowledge Graph
GraphRAG is All You need? LLM & Knowledge Graph
 

Pulsar's Journey in Yahoo!: On-prem, Cloud and Hybrid - Pulsar Summit SF 2022

  • 1. Pulsar's Cloud Journey in Yahoo! On-prem, Cloud, and Hybrid Rajan Dhabalia rdhabalia@yahooinc.com Ludwig Pummer ludwig@yahooinc.com Pulsar summit 2022 1
  • 2. Speakers Rajan Dhabalia Sr. Principal Software Engineer, Yahoo! Ludwig Pummer Principal Production Engineer, Yahoo! 2
  • 3. Agenda 1. Pulsar in Yahoo! 2. Cloud challenges for a messaging system 3. Why platforms should choose Pulsar for public cloud 4. Why users choose Pulsar on cloud 5. Summary 6. QA 3
  • 4. ● Developed by Yahoo! in 2014 to serve a hosted pub-sub service ○ open-sourced in 2016 ● Global deployment ○ 6 DC (Asia, Europe, US) ○ Public cloud present on AWS ○ Full mesh replication ● Mission critical use cases ○ Lower latency bus for use by other low latency services ○ Write availability ○ Sherpa (PNUTS), Mail, Finance, News, Monitoring system, etc. Pulsar's Journey in Yahoo! 4
  • 5. Challenges on Cloud for Messaging Systems Managed Service • Multi-tenancy (shared by different usecases) • Cost calculation Security Connectivity • Data security (EKS support) • Network security (VPC, Security Groups, Network ACLs) • Auth • Secured enterprise Proxy support (ATS, HAProxy, etc.) Performance Reliability Availability • Availability even after all replicas crashed • Fault tolerance • Durability (EBS) vs performance (local storage) 5
  • 6. Cost effective ● High performance with less cost ● Durability and availability without cost overhead Availability and Performance ● High availability ● Low latency Bus ● Native load balancer and fault tolerance ● Data durability and No data loss Managed Service ● Multi-tenancy ● Enterprise proxy support for secure connectivity ● Hard/Soft isolation ● Cost management Deployment and Monitoring ● Easy deployment ● Zero downtime ● Blue-green cluster support ● Stats and Monitoring Why Platforms Should Choose Pulsar on Public Cloud 6
  • 7. ● Multi tenancy ○ Multiple use cases on same cluster: Low latency publish, cold reads, high fan-out supported due to Bookie’s I/O isolation (Figure 1) ○ Soft and Hard isolation at broker and bookie ● Cost calculation and management ● Enterprise proxy support to allow connectivity on cloud (PIP-60) ○ eg: ATS, HAProxy, etc. ● Support Hybrid mode by syncing cluster and ACLs metadata (PIP-136) ● Users do not require Pulsar expertise ● Reduce maintenance and upgrade efforts by maintaining shared cluster Managed Service Figure 1: Bookie I/O isolation and WAL architecture Writer Reader Journal Data File Data Device Journal Device Write Reads (cold) (High performance small EBS storage (eg: io1/io2)) (Less expensive persistent EBS storage (eg: gp3)) 7
  • 8. Availability and Performance ● Availability - High availability during rolling upgrade or node crash due to segmented oriented architecture. (Figure 2) ● Durability - Bookie using highly durable EBS storage that allows crashed bookie pods to recover and read ● Performance - Maximize utilization and high performance on EBS - WAL (journal) on high performance : small size io2/gp3 - Data storage on less expensive : gp3 ● Scalability - Container friendly deployment on kubernetes - Auto scaling group for stateless brokers Figure 2: Bookie segmentation 8
  • 9. Effortless Deployment ● Rolling upgrade: Zero downtime and Durability - High availability during rolling upgrade or node crash due to segmented oriented architecture. - Bookie using highly durable EBS storage that allows crashed bookie pods to recover and read. ● Deployment component - Deploying to EKS cluster using Helm-chart. - Prometheus, and monitoring dashboard for alerts and monitoring ● Blue-Green deployment support - Easy EKS cluster upgrade and migration using blue-green cluster migration support (PIP-188) ● Legacy on-prem topic migration with custom topic factory - Pulsar supports custom topic-Factory to manage custom topic behavior for legacy topic migration. (PIP-100) 9
  • 10. Cost Effective ● EBS Storage Vs Local storage on cloud - Pulsar on EBS : cost effective, high performance, and durable - EBS is more durable and cheaper than Local storage. But local storage is faster. ● High performance WAL and Cheaper durable storage - Use high performance EBS storage only for WAL (requires small storage size) to achieve low latency. Eg: io2 or gp3 with high iops and throughput thresholds - Use cheaper durable EBS for durable storage (eg: gp3) that doesn’t impact publish latency ● Do not pay for extra replica to manage Availability - During deployment Partitioned oriented architecture requires extra replica (RF=3) for availability vs Segment oriented Bookie requires RF=2 - Bookie segments are created on the fly to continue topic writes ● Cheaper broker compute for high fanout 10
  • 11. Why Users Choose Pulsar on Public Cloud 11
  • 12. Secure Connectivity: Mutual TLS ● Mutual TLS for transport and authentication - Each Tenant has distinct CN - Cloud Brokers and On-Prem Brokers have distinct CNs 12
  • 13. Secure Connectivity: SNI Routing ClientBuilder clientBuilder = PulsarClient.builder() .serviceUrl("pulsar+ssl://uw2broker.n.svc.cluster.local:6651") .proxyServiceUrl("pulsar+ssl://xyz.elb.us-west-2.amazonaws.com:6651", ProxyProtocol.SNI) 13
  • 14. Secure Connectivity: SNI Routing us-west-2 trafficserver pods SNI Proxy NLB: xyz.elb.us-west-2.amazonaws.com sni: - fqdn: 'uw2broker.n.svc.cluster.local' tunnel_route: 'uw2broker.n.svc.cluster.local:6651' - fqdn: 'uw2broker-1.uw2broker.n.svc.cluster.local' tunnel_route: 'uw2broker-1.uw2broker.n.svc.cluster.local:6651' - fqdn: 'pulsar-lb.nyc.example.com' tunnel_route: 'pulsar-sni.nyc.example.com:6651' - fqdn: '*.nyc.example.com' tunnel_route: 'pulsar-sni.nyc.example.com:6651' "nyc" trafficserver pods SNI Proxy LB: pulsar-lb.nyc.example.com sni: - fqdn: 'pulsar-lb.nyc.example.com' tunnel_route: 'pulsar-lb.nyc.example.com:6651' - fqdn: 'broker1.nyc.example.com' tunnel_route: 'broker1.nyc.example.com:6651' - fqdn: 'uw2broker.n.svc.cluster.local' tunnel_route: 'xyz.elb.us-west-2.amazonaws.com:6651' - fqdn: '*.uw2broker.n.svc.cluster.local' tunnel_route: 'xyz.elb.us-west-2.amazonaws.com:6651' Apache Traffic Server SNI Routing Example - AWS to On-Prem 14
  • 15. Secure Connectivity ● Between Cloud Clusters - VPC peering - Private IP SNI Proxy 15
  • 16. Secure Connectivity ● Between Cloud Cluster and On-Prem Cluster - Network ACLs permit only Cluster SNI Proxies - Public IP SNI Proxy 16
  • 17. Secure Connectivity ● Cloud Tenant to Cloud Cluster - PrivateLink - Private IP SNI Proxy 17
  • 18. Availability, Performance, and Price ● Availability - Cluster online through all maintenance operations - EKS and Pulsar recovers nodes/pods/topics automatically - Client Library reconnects and retries automatically ● Persistence Guarantee - Every Acknowledged message is f-synced on 2 EBS volumes ● Low Latency - < 8ms 99%ile publish latency @ 1KB (c5.4xlarge with gp3) with mTLS and Disk encryption ● Price - About one-seventh of MSK for equivalent MB/s 18
  • 19. Security and Encryption ● End-to-end (Envelope) Encryption - Encrypt/Decrypt available in client library - Pulsar platform never sees your keys or plaintext - Multi-tenant friendly ● Multi-tenant Authorization - Granular authorization from namespace to subscription name - You grant other tenants access to your topics 19
  • 20. Security and Encryption ● Network Encryption - Encrypted during transport - Mutual TLS between client, brokers, and bookies ● Storage Encryption - Encrypted at rest - Encrypted EBS volumes already included in publish latency ● Network Security - PrivateLink simplifies Network ACLs, Security Groups, and Routing - SNI Routing + mTLS protects against MITM 20
  • 21. Geo Replication and Hybrid Access ● Full Mesh Replication under tenant control - Cloud cluster and On-prem cluster are equals - Publish anywhere, consume anywhere - Replicate a topic into a new Cloud cluster with one pulsar-admin command ● Hybrid Access - Tenant in Cloud to Pulsar in Cloud: PrivateLink with SNI Proxy - Tenant in Cloud to Pulsar On-Prem: Pulsar Proxy or SNI Proxy - Tenant on Prem to Pulsar in Cloud: Public NLB with SNI Proxy - Tenant on Prem to Pulsar on Prem: Direct Connect - Same topic name - Only change connect parameters: Service URL, Proxy Scheme, Proxy Service URL 21
  • 22. Summary 1. Cluster management requires little operational resources 2. Super secure ecosystem 3. Cost effective and highly performant 4. Multi and hybrid cloud geo replication 5. Happy platform and happy customers 22
  • 24. Thank You Ludwig Pummer https://www.linkedin.com/in/ludwigpummer/ Rajan Dhabalia https://www.linkedin.com/in/rajan-dhabalia @dhabaliaraj 24