The need for message queue in Kubernetes (1) · 2020. 8. 31. · A message queue system in...

Post on 04-Aug-2021

1 views 0 download

transcript

Lior Nabat, CTO E-mail:lior.nabat@kubemq.io

The Need for:Kubernetes Native Message Queue Broker

Twitter:@lior_nabat

2www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

MQ

- Decoupling creates potential for massive amount of connections- Point to Point- No Multicast- No Queuing

The need for messaging in Kubernetes

4 services12 connections

8 services56 connections

8 services, 8 connections

Direct connection (such as HTTP/REST) With message queue

3www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

The need for Kubernetes Native message queue (1)

• Robust messaging queue system

• Secured system

• Low DevOps maintenance

• Well-connected ecosystem for all Kubernetes services

• Rapid development and deployment

Kubernetes effectiveA messaging system cannot be effective if it is not native to Kubernetes. Enterprises must ensure that when implementing a message queue system, it is native to Kubernetes to leverage the advantages:

4www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Ease of Use A message queue system in microservices architecture can save time, money, as long as it is super easy to use in Kubernetes

The need for Kubernetes Native message queue (2)

• Dedicated IT experts is not needed

• Unifies operation workflows and development

• Saves costs

5www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

The need for Kubernetes Native message queue (3)

• Security

• Double traffic

• Additional environment maintenance

• Additional operational overhead

• Enable ability to serve edge and small clusters

Integrated in the Kubernetes cluster and to the edgeUse the message queue inside the K8S cluster to avoid issues of

6www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Cloud native integration

Cache Connector KubeMQ

Queues

EventsEvents Store

Commands Queries

SQL Connector

NoSQL Connector

Storage Connector

Search Connector

The need for Kubernetes Native message queue (4)

7www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

The need for Kubernetes Native message queue (5)

• Multi-stage pipeline

• Task / Job Distributed Queue

• Streaming data workflows

• Pub/Sub in real time

• Application decoupling - microservices

Use casesSupporting most common use cases of the messaging in Kubernetes

8www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Multistage Data Processing Pipeline

9www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Task / Job Distributed Queue

10www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Stream Messages Processing

11www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Pub/Sub Realtime Messaging

12www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Application decoupling / Microservices

13www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Demo

14www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Let’s look on Users domain

Register Create a user and get verification code

Verify Send verification code and activate user account

Login Login with credentials

Logout Logout from user account

15www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

SQL Connector

Search Connector

Cache Connector

Kibana

Web API

The Setup

Monitor Point

Monitor Point

Monitor Point

16www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

SQL Connector

Search Connector

Kibana

Web APINotification Event

History Event

Users Query

Register Flow

17www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

SQL Connector

Search Connector

Kibana

Web APIHistory Event

Users Command

Verify Flow

18www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

SQL Connector

Search Connector

Cache Connector

Kibana

Web APIHistory Event

Users Query

Cache Commands / Query

Login Flow

19www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

SQL Connector

Search Connector

Cache Connector

Kibana

Web APIHistory Event

Users Query

Cache Commands / Query

Logout Flow

20www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Users Service

History Service

Cache Service

Kibana

Web API

Let’s See Some Errors

21

www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Migration to microservices environment

Companies with legacy IT infrastructure need

to gradually migrate to microservices or start

building new components separately.

Using a bridge to provide connectivity

between legacy on-prem monolithic and new

microservices architecture

This bridging capability enables gradual

migration by implementing a step-by-step

replacement of components from the old

environment or the creation of new services

that can still connect with the legacy

resources.

22www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Demo

23www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Migrating Financial Based app from MSMQ to Kubernetes

24www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMq

Migration to AKS

25www.kubemq.ioLior Nabat, CTO lior.nabat@kubemq.io Twitter: @KubeMqLior Nabat, CTO

KubeMQ is an enterprise grade message broker for Kubernetes

VISIT US AT: www.kubemq.ioCONTACT US AT: info@kubemq.io

Thank you