Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
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
1 change: 1 addition & 0 deletions docs/victorialogs/cluster-ha.excalidraw

Large diffs are not rendered by default.

Binary file added docs/victorialogs/cluster-ha.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
46 changes: 2 additions & 44 deletions docs/victorialogs/cluster.md
Original file line number Diff line number Diff line change
Expand Up @@ -131,50 +131,8 @@ while queries return full responses from the remaining AZ. When the AZ becomes a
can be used for querying full responses. This HA scheme can be built with the help of [vlagent](https://docs.victoriametrics.com/victorialogs/vlagent/)
for data replication and buffering, and [vmauth](https://docs.victoriametrics.com/victoriametrics/vmauth/) for data querying:

```mermaid
flowchart TB
subgraph haSolution["HA Solution"]
direction TB

subgraph ingestion["Ingestion Layer"]
direction TB
LS["Log Sources<br/>(Applications)"]
VLAGENT["Log Collector<br/>• Buffering<br/>• Replication<br/>• Delivery Guarantees"]
LS --> VLAGENT
end

subgraph storage["Storage Layer"]
direction TB

subgraph zoneA["Zone A"]
VLA["VictoriaLogs Cluster A"]
end

subgraph zoneB["Zone B"]
VLB["VictoriaLogs Cluster B"]
end

VLAGENT -->|"Replicate logs to<br/>Zone A cluster"| VLA
VLAGENT -->|"Replicate logs to<br/>Zone B cluster"| VLB
end

subgraph query["Query Layer"]
direction TB
LB["Load Balancer<br/>(vmauth)<br/>• Health Checks<br/>• Failover<br/>• Query Distribution"]
QC["Query Clients<br/>(Grafana, API)"]
VLA -->|"Serve queries from<br/>Zone A cluster"| LB
VLB -->|"Serve queries from<br/>Zone B cluster"| LB
LB --> QC
end
end

style VLAGENT fill:#9bc7e4
style VLA fill:#ae9be4
style VLB fill:#ae9be4
style LB fill:#9bc7e4
style QC fill:#9fe49b
style LS fill:#9fe49b
```
![cluster-ha.webp](cluster-ha.webp)
{width="600"}

- [vlagent](https://docs.victoriametrics.com/victorialogs/vlagent/) receives and replicates logs to two VictoriaLogs clusters.
If one cluster becomes unavailable, the log shipper continues sending logs to the remaining healthy cluster. It also buffers logs that cannot be delivered to the unavailable cluster.
Expand Down
1 change: 1 addition & 0 deletions docs/victorialogs/security-and-lb-search-auth.excalidraw

Large diffs are not rendered by default.

Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
1 change: 1 addition & 0 deletions docs/victorialogs/security-and-lb-tenants.excalidraw

Large diffs are not rendered by default.

Binary file added docs/victorialogs/security-and-lb-tenants.webp
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
41 changes: 4 additions & 37 deletions docs/victorialogs/security-and-lb.md
Original file line number Diff line number Diff line change
Expand Up @@ -65,28 +65,8 @@ Enumerate all the `vlselect` instances in the cluster under the `url_prefix` con

The diagram below illustrates this architecture in the clustered version of VictoriaLogs:

```mermaid
flowchart BT
subgraph Remote2["VictoriaLogs 2"]
direction BT
vlselect-az2["vlselect"]
vlselect-az2 --> vlstorage2-1["vlstorage 1"]
vlselect-az2 --> vlstorage2-2["vlstorage 2"]
end
subgraph Remote1["VictoriaLogs 1"]
direction BT
vlselect-az1["vlselect"]
vlselect-az1 --> vlstorage1-1["vlstorage 1"]
vlselect-az1 --> vlstorage1-2["vlstorage 2"]
end

vmui -->|Basic auth| vmauth
Grafana -->|Bearer auth| vmauth
curl -->|mTLS| vmauth

vmauth --> vlselect-az1
vmauth --> vlselect-az2
```
![security-and-lb-search-auth.webp](security-and-lb-search-auth.webp)
Comment thread
hagen1778 marked this conversation as resolved.
{width="600"}

Update the connection settings in all clients (like Grafana) after configuring the `vmauth` in order
to match the selected authentication method and the `vmauth` endpoint.
Expand Down Expand Up @@ -424,21 +404,8 @@ users:

Below is a diagram of this architecture for the clustered version of VictoriaLogs:

```mermaid
flowchart BT
subgraph Remote2["VictoriaLogs cluster"]
direction BT
vlinsert-az1["vlinsert"]
vlinsert-az1 --> vlstorage2-1["vlstorage 1"]
vlinsert-az1 --> vlstorage2-2["vlstorage 2"]
end

vector -->|Basic auth<br> /my-account/kubernetes-logs| vmauth
vlagent -->|Bearer auth<br>/my-account/mobile-logs| vmauth
filebeat -->|mTLS<br>/my-account/frontend-logs| vmauth

vmauth -->|AccountID: X<br>ProjectID: Y| vlinsert-az1
```
![security-and-lb-tenants.webp](security-and-lb-tenants.webp)
Comment thread
hagen1778 marked this conversation as resolved.
{width="600"}

### Tenant-based proxying of data ingestion requests

Expand Down