Skip to content

Instantly share code, notes, and snippets.

@akutz
Last active December 20, 2019 16:27
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save akutz/3306529e74d87d0b890793dc68f9ba8c to your computer and use it in GitHub Desktop.
Save akutz/3306529e74d87d0b890793dc68f9ba8c to your computer and use it in GitHub Desktop.

Based on fergal's description:

So we sit behind a VPN. Users create a Network Domain and VLAN (done through F5) and then deploy machines on that VLAN. Machines automatically get a Public IPV6 accessible from outside the VLAN (once connected to VPN) and an IPV4 local to the VLAN. So i want to be able to have the same network setup, where i create a Cluster API Management Node on my own VLAN. But i want that cluster manager to be able to create a Cluster via IPV6 on other VLANs. I dont mind how the cluster itself is set to communicate between its own nodes once set up

The following diagram was created (puml):

fergal-network

@startuml fergal-deployment
package "VPN" as vpn {
package "VLAN 1" as vlan_1 {
package "Management cluster" as mc {
[Control plane] as mccp
[Worker node 1] as mcwn1
[Worker node 2] as mcwn2
mccp ~~> mcwn1 : ipv4
mccp ~~> mcwn2 : ipv4
}
}
package "VLAN 2" as vlan_2 {
package "Workload cluster A" as wca {
[Control plane] as wcacp
[Worker node 1] as wcawn1
[Worker node 2] as wcawn2
wcacp ~~> wcawn1 : ipv4
wcacp ~~> wcawn2 : ipv4
}
package "Workload cluster B" as wcb {
[Control plane] as wcbcp
[Worker node 1] as wcbwn1
[Worker node 2] as wcbwn2
wcbcp ~~> wcbwn1 : ipv4
wcbcp ~~> wcbwn2 : ipv4
}
}
package "VLAN 3" as vlan_3 {
package "Workload cluster C" as wcc {
[Control plane] as wcccp
[Worker node 1] as wccwn1
[Worker node 2] as wccwn2
wcccp ~~> wccwn1 : ipv4
wcccp ~~> wccwn2 : ipv4
}
}
package "VLAN 4" as vlan_4 {
package "Workload cluster D" as wcd {
[Control plane] as wcdcp
[Worker node 1] as wcdwn1
[Worker node 2] as wcdwn2
wcdcp ~~> wcdwn1 : ipv4
wcdcp ~~> wcdwn2 : ipv4
}
}
}
mc ~~> wca : ipv6
mc ~~> wcb : ipv6
mc ~~> wcc : ipv6
mc ~~> wcd : ipv6
@enduml
Display the source blob
Display the rendered blob
Raw
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment