Skip to content

Commit a28f73d

Browse files
Merge pull request #201 from ByteInternet/cluster
2 parents e05afc1 + 95babe2 commit a28f73d

File tree

2 files changed

+82
-0
lines changed

2 files changed

+82
-0
lines changed

docs/hypernode-platform/cluster.md

Lines changed: 82 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,82 @@
1+
---
2+
myst:
3+
html_meta:
4+
description: Hypernode clusters allow you to scale your setup to your needs, both
5+
horizontally and vertically.
6+
title: Cluster | Hypernode platform
7+
---
8+
9+
# Hypernode Cluster
10+
11+
Hypernode comes as a single server setup by default. This is to make sure that latency between services is as low as possible,
12+
and that the server is as fast as possible. However, if you have a lot of traffic, or a lot of data, you might want to consider a
13+
cluster setup. This is a setup where you have multiple servers, each with their own task. This way, you can scale your setup to
14+
your needs.
15+
16+
Hypernode Cluster is available for both cloud and dedicated nodes. Dedicated nodes benefit extra from a cluster setup, as they
17+
are more prone to going down because of hardware failures. With a cluster setup, you can make sure that your setup stays up
18+
even if one of your servers fails.
19+
20+
## Cluster vs single server
21+
22+
Choosing between a single server setup and a cluster setup is a trade-off between performance and flexibility. A single server
23+
setup is the fastest, but a cluster setup is more flexible as it allows for more ways of scaling up the available resources.
24+
You can add more servers to your cluster, allowing you to scale your setup to your needs. However, a cluster setup does come
25+
with a performance penalty. The latency between services is higher, which causes a slight overhead in performance.
26+
27+
## Up/downgrading between plans
28+
29+
You're able to up or downgrade your plan with Hypernode whenever you want. This applies to both single server setups and
30+
cluster setups.
31+
32+
In a Hypernode cluster this goes per Hypernode. So if you have a cluster with 3 Hypernodes, you can upgrade 1 Hypernode to a
33+
higher plan, and the other 2 Hypernodes can stay on the old plan. This allows you to scale your setup to your needs while
34+
the rest of the cluster stays up.
35+
36+
## Connecting between cluster Hypernodes
37+
38+
All Hypernodes within the same cluster are connected to each other. You can see how the Hypernodes relate to each other in the
39+
map:
40+
41+
![](cluster/_res/hypernode-cluster-map.png)
42+
43+
You can generate this map on the fly using the CLI command `hypernode-cluster-map`. You can also get a detailed overview of the
44+
state of the cluster using the CLI command `hypernode-cluster-info`:
45+
46+
```bash
47+
app@1fosk3-hnclusterweb1-magweb-hetz:~$ hypernode-cluster-info
48+
+---------------+--------------------------+-------------+----------------+------------+
49+
| Hypernode | Roles | Private_IP | Private_subnet | Cluster_IP |
50+
+---------------+--------------------------+-------------+----------------+------------+
51+
| hnclusterdb1 | mysql | 192.168.1.5 | 192.168.1.0/24 | 10.0.0.2 |
52+
| hnclusterlb1 | redis, nfs, loadbalancer | 192.168.1.2 | 192.168.1.0/24 | 10.0.0.3 |
53+
| hnclusterweb1 | web | 192.168.1.3 | 192.168.1.0/24 | 10.0.0.1 |
54+
| hnclusterweb2 | web | 192.168.1.4 | 192.168.1.0/24 | 10.0.0.5 |
55+
+---------------+--------------------------+-------------+----------------+------------+
56+
```
57+
58+
### Wireguard
59+
60+
All nodes within the cluster can communicate with each other over their cluster IP addresses. These are private IP addresses
61+
that are only accessible within the cluster, as they are [Wireguard](https://www.wireguard.com/) tunnels between each Hypernode
62+
in the cluster.
63+
64+
```bash
65+
app@1fosk3-hnclusterweb1-magweb-hetz:~$ ssh hnclusterdb1.hypernode.io hostname
66+
cj8jv7-hnclusterdb1-magweb-hetz.nodes.hypernode.io
67+
68+
# For convenience, you can also use the short hostname
69+
app@1fosk3-hnclusterweb1-magweb-hetz:~$ ssh hnclusterdb1.h hostname
70+
cj8jv7-hnclusterdb1-magweb-hetz.nodes.hypernode.io
71+
```
72+
73+
### Private network switch
74+
75+
We can provide you with a private network so that your Hypernodes can communicate with each other with a larger bandwidth than
76+
over a regular internet connection. This is especially useful if you have a lot of traffic between your Hypernodes, or if you
77+
have a lot of data that needs to be transferred between your Hypernodes.
78+
79+
For this we provide a subnet where every Hypernode has its own private network IP address, which is only accessible to Hypernodes
80+
in the same cluster and in the same datacenter/regions. Just like with Wireguard connections you can connect between Hypernodes
81+
over the same private network. When available, we automatically configure the use of the private network over Wireguard
82+
connections because of the larger bandwidth.
7.03 KB
Loading

0 commit comments

Comments
 (0)