Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

docs: add message brokers section PEM-6141 #4818

Merged
merged 5 commits into from
Nov 28, 2024
Merged
Changes from 1 commit
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
26 changes: 26 additions & 0 deletions docs/docs-content/architecture/architecture-overview.md
Original file line number Diff line number Diff line change
Expand Up @@ -87,3 +87,29 @@ be optionally downloaded from a self-hosted private repository instead of pullin
repository.

![Self-hosted Palette architecture diagram](/architecture_architecture-on-prem-detailed.webp)

### Message Brokers

Palette requires reliable, scalable and secure communication. The internal microservices use a Publish-Subscribe pattern
addetz marked this conversation as resolved.
Show resolved Hide resolved
implemented with [gRPC](https://grpc.io/) to achieve this. In order to support this communication pattern, a message
broker service acts as the central hub for message exchange. Palette message brokers are automatically scaled, ensuring
that a quorum is available for each cluster. The broker system is designed to provide the following functionality.
addetz marked this conversation as resolved.
Show resolved Hide resolved

1. It efficiently distributes incoming gRPC requests across multiple replicas of the message broker to optimize resource
usage and platform performance. This capability supports Palette's ability to manage large, enterprise Kubernetes
addetz marked this conversation as resolved.
Show resolved Hide resolved
clusters.
addetz marked this conversation as resolved.
Show resolved Hide resolved
2. It provides high availability by enabling clients to failover to alternative replicas in the case of a pod failure.
addetz marked this conversation as resolved.
Show resolved Hide resolved
By default, two replicas of the message broker are created in each cluster.
addetz marked this conversation as resolved.
Show resolved Hide resolved
3. It automatically adjusts to changes in the number of broker replicas without manual reconfiguration, ensuring that
the platform dynamically scales in response to load changes.
4. It enforces message authentication and security by generating secondary certificates used for broker to broker
communication. This provides security in depth.

Any Enterprise and VerteX Palette cluster will have a message broker that you can inspect. First, ensure that you can
connect to the cluster. Refer to the
addetz marked this conversation as resolved.
Show resolved Hide resolved
[Access Cluster with CLI](../clusters/cluster-management/palette-webctl.md#access-cluster-with-cli) guide for further
infomation. You can then view your message broker by executing the following command.
addetz marked this conversation as resolved.
Show resolved Hide resolved

```bash
kubectl get statefulset msgbroker --namespace hubble-system
```
Loading