Kubernetes Build: Difference between revisions

From Wizard Rants
Jump to navigation Jump to search
m Reverted edits by 10.0.6.3 (talk) to last revision by JohnNorthrup
Tag: Rollback
Add network layout
Line 1: Line 1:
===Physical Build Out===
===Physical Build Out===


'''Physical Information'''<br>
'''Physical Information'''
Physical Node VLAN 50<br>
{| class="wikitable"
Physical Node Network 10.0.50.0/24
|+Network Layout
 
!VLAN Name
'''Kubernetes Network'''<br>
!VLAN ID
Pod Network CIDR 10.60.0.0/16
!Network
|-
|Management
|2
|10.1.2.0/24
|-
|Physical Nodes
|3
|10.1.3.0/24
|-
|NLB East
|10
|10.1.10.0/24
|-
|NLB West
|11
|10.1.11.0/24
|-
|K8S Edge East
|15
|10.1.15.0/24
|-
|K8S Edge West
|16
|10.1.16.0/24
|-
|K8S Masters East
|20
|10.1.20.0/24
|-
|K8S Masters West
|21
|10.1.21.0/24
|-
|K8S Nodes East
|30
|10.1.30.0/24
|-
|K8S Nodes West
|31
|10.1.31.0.24
|}
'''Kubernetes Network'''<br>Pod Network CIDR 10.60.0.0/16


====Node Build Out====
====Node Build Out====
Line 33: Line 75:
Heartbeat Configuration Files
Heartbeat Configuration Files


[[heartbeat ha.cf|ha.cf]]<br>
[[heartbeat ha.cf|ha.cf]]<br>[[heartbeat authkeys|authkeys]]<br>[[heartbeat haresources|haresources]]<br>
[[heartbeat authkeys|authkeys]]<br>
[[heartbeat haresources|haresources]]<br>


us-nlb-[01,02] have heartbeat installed to manage the shared IP addresses between the two.
us-nlb-[01,02] have heartbeat installed to manage the shared IP addresses between the two.
Line 55: Line 95:


===Building Upon Kubernetes===
===Building Upon Kubernetes===
CNI Networking : [[Cilium]] <br>
CNI Networking<span> </span>: [[Cilium]] <br>
Service Mesh : [https://istio.io Istio] <br>
Service Mesh<span> </span>: [https://istio.io Istio] <br>
LoadBalancing : [https://metallb.universe.tf MetalLB]
LoadBalancing<span> </span>: [https://metallb.universe.tf MetalLB]


===Services To Deploy===
===Services To Deploy===

Revision as of 07:11, 25 January 2022

Physical Build Out

Physical Information

Network Layout
VLAN Name VLAN ID Network
Management 2 10.1.2.0/24
Physical Nodes 3 10.1.3.0/24
NLB East 10 10.1.10.0/24
NLB West 11 10.1.11.0/24
K8S Edge East 15 10.1.15.0/24
K8S Edge West 16 10.1.16.0/24
K8S Masters East 20 10.1.20.0/24
K8S Masters West 21 10.1.21.0/24
K8S Nodes East 30 10.1.30.0/24
K8S Nodes West 31 10.1.31.0.24

Kubernetes Network
Pod Network CIDR 10.60.0.0/16

Node Build Out

Physical Node US Node Name EU Node Name Etcd Node NLB Node
j us-ctrl-01 eu-wrk-01 eu-etcd-01 us-nlb-01
a us-ctrl-02 eu-wrk-02 eu-etcd-02 us-nlb-02
r us-wrk-01 eu-wrk-03 eu-etcd-03 us-nlb-03
v us-wrk-02 eu-wrk-04 us-etcd-01 eu-nlb-01
i us-wrk-03 eu-ctrl-01 us-etcd-02 eu-nlb-02
s us-wrk-04 eu-ctrl-02 us-etcd-03 eu-nlb-03

HA Config for Etcd & K8S Masters

Two virtual IP addresses, 10.1.10.5 and 10.1.10.6, are shared between us-nlb-01 and us-nlb-02.

HAProxy Configuration

Heartbeat Configuration Files

ha.cf
authkeys
haresources

us-nlb-[01,02] have heartbeat installed to manage the shared IP addresses between the two.

10.1.10.5 is for usage as the Etcd load-balanced IP address
10.1.10.6 is for usage as the Kubernetes API endpoint

Kubernetes Installation

Certificate Authority
Kubernetes Config Files
Data Encryption
Bootstrapping etcd
Bootstrapping K8S Controllers
Bootstrapping K8S Workers
Configure Kubectl
Installing Cilium / Network Routing
Installing CoreDNS
Kubernetes Terms

Building Upon Kubernetes

CNI Networking : Cilium
Service Mesh : Istio
LoadBalancing : MetalLB

Services To Deploy

Vault

Prometheus

Fluentd

elasticsearch

grafana

Additional Elements

Harbor

Rook

GitLab

jaeger

Open Policy Agent

kured