-
Notifications
You must be signed in to change notification settings - Fork 122
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Signed-off-by: Joshua Fernandes <joshua.fernandes@consensys.net>
- Loading branch information
1 parent
396bc61
commit 40402c0
Showing
1 changed file
with
86 additions
and
0 deletions.
There are no files selected for viewing
86 changes: 86 additions & 0 deletions
86
docs/private-networks/tutorials/kubernetes/multi-cluster.md
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,86 @@ | ||
--- | ||
title: Deploy Besu across multiple Kubernetes clusters across multiple cloud providers | ||
description: Deploy Besu across multiple Kubernetes clusters across multiple cloud providers | ||
sidebar_position: 7 | ||
tags: | ||
- private networks | ||
--- | ||
|
||
# Deploy Besu across multiple Kubernetes clusters across multiple cloud providers | ||
|
||
The following tutorial is just one of many ways to connect nodes in one K8S cluster to nodes in another K8S | ||
cluster across multiple cloud provider - in this case [Amazon Elastic Kubernetes Service (EKS)](https://aws.amazon.com/eks/) | ||
and [Azure Kubernetes Service (AKS)](https://azure.microsoft.com/en-au/products/kubernetes-service) | ||
|
||
This tutorial walks you through using AWS as the main cluster and adding an extra node in Azure to the existing pool | ||
|
||
## Overview | ||
|
||
### Steps | ||
|
||
#### 1. Create an AWC VPC | ||
|
||
1. Use a CIDR block that doesn't overlap with that of Azure eg `10.0.0.0/16` | ||
2. Create the EKS cluster as normal and use the default Kubernetes service range `172.20.0.0/16` | ||
|
||
#### 2. Create an Azure Virtual Network | ||
|
||
1. Use a CIDR block that doesn't overlap with that of AWS eg `10.1.0.0/16` | ||
2. It is also recommended to create a subnet for the Gateway and use a CIDR of `/24` eg `10.1.1.0/24` | ||
3. Create the AKS cluster as normal and use the different Kubernetes service range | ||
`10.2.0.0/16` (the default `10.0.0.0/16` overlaps with the AWS VPC CIDR block) | ||
|
||
#### 3. Connect the AWS VPC and Azure VNet with a site to site VPN | ||
|
||
##### 3.1 On the Azure side create a Virtual Network Gateway | ||
|
||
In the AZure VNet, create a Virtual Network Gateway with the following settings | ||
|
||
| Setting | Value | | ||
|----------------------|-------------| | ||
| SKU | VpnGw2AZ (default) | | ||
| Gateway Type | VPN | | ||
| VPN Type | Route-based | | ||
| Virtual Network | Use the network in step 2.1 | | ||
| Gateway subnet | Use the subnet from step 2.2 | | ||
| Public IP Address | Create new | | ||
| Enable active-active mode | Disabled | | ||
| Configure BGP | Disabled | | ||
|
||
The other setttings can remain as defaults or set to suit your requirements. Once this is complete | ||
please note down the IP address that was created for the Virtual Network Gateway | ||
|
||
##### 3.2 On the AWS side create a Customer Gateway | ||
|
||
This Customer Gateway points to the Azure Virtual Network Gateay from step 3.1 | ||
|
||
| Setting | Value | | ||
|----------------------|-------------| | ||
| Routing | Static | | ||
| IP Address | Use the IP of the Virtual Network Gateway in step 3.1 | | ||
|
||
The other setttings can remain as defaults or set to suit your requirements | ||
|
||
##### 3.2 On the AWS side create a Virtual Private Gateway | ||
|
||
Create an AWS Virtual Private Gateway and specify the name. | ||
|
||
| Setting | Value | | ||
|----------------------|-------------| | ||
| ASN | Amazon Default ASN | | ||
|
||
##### 3.3 On the AWS side attach the Virtual Private Gateway to the VPC | ||
|
||
Select the Virtual Private Gateway and then select Actions and `Attach to VPC` and select | ||
the VPC in step 1 | ||
|
||
##### 3.4 On the AWS side create the Site to Site VPN Connection | ||
|
||
|
||
Create an AWS Virtual Private Gateway and specify the name. | ||
|
||
| Setting | Value | | ||
|----------------------|-------------| | ||
| ASN | Amazon Default ASN | | ||
|
||
|