ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

TL; DR: ื›ืœ ื”-CNIs ืขื•ื‘ื“ื™ื ื›ืžื• ืฉื”ื ืฆืจื™ื›ื™ื, ืœืžืขื˜ Kube-Router ื•-Kube-OVN, Calico, ืœืžืขื˜ ื–ื™ื”ื•ื™ MTU ืื•ื˜ื•ืžื˜ื™, ื”ื•ื ื”ื˜ื•ื‘ ื‘ื™ื•ืชืจ.

ืขื“ื›ื•ืŸ ืžืืžืจ ืฉืœ ื‘ื“ื™ืงื•ืช ื”ืขื‘ืจ ืฉืœื™ (2018 ะธ 2019), ื‘ื–ืžืŸ ื”ื‘ื“ื™ืงื” ืื ื™ ืžืฉืชืžืฉ ื‘-Kubernetes 1.19 ื‘-Ubuntu 18.04 ืขื CNIs ืžืขื•ื“ื›ื ื™ื ื”ื—ืœ ืžืื•ื’ื•ืกื˜ 2020.

ืœืคื ื™ ืฉื ืฆืœื•ืœ ืœืžื“ื“ื™ื...

ืžื” ื—ื“ืฉ ืžืื– ืืคืจื™ืœ 2019?

  • ื™ื›ื•ืœ ืœื‘ื“ื•ืง ื‘ืืฉื›ื•ืœ ืžืฉืœืš: ืืชื” ื™ื›ื•ืœ ืœื”ืจื™ืฅ ื‘ื“ื™ืงื•ืช ื‘ืืฉื›ื•ืœ ืžืฉืœืš ื‘ืืžืฆืขื•ืช ื”ื›ืœื™ ืฉืœื ื• Benchmark ืฉืœ ืจืฉืช Kubernetes: knb
  • ื—ื‘ืจื™ื ื—ื“ืฉื™ื ื”ื•ืคื™ืขื•
  • ืชืจื—ื™ืฉื™ื ื—ื“ืฉื™ื: ื‘ื“ื™ืงื•ืช ื ื•ื›ื—ื™ื•ืช ืžืจืฆื•ืช ืžื‘ื—ื ื™ ื‘ื™ืฆื•ืขื™ ืจืฉืช "Pod-to-Pod", ื•ื ื•ืกืฃ ืกืงืจื™ืคื˜ ื—ื“ืฉ ืฉืœ "Pod-to-Service" ืฉืžืจื™ืฅ ื‘ื“ื™ืงื•ืช ืงืจื•ื‘ ื™ื•ืชืจ ืœืชื ืื™ื ื‘ืขื•ืœื ื”ืืžื™ืชื™. ื‘ืคื•ืขืœ, Pod with API ืฉืœืš ืขื•ื‘ื“ ืขื ื”ื‘ืกื™ืก ื›ืฉื™ืจื•ืช, ื•ืœื ื“ืจืš ื›ืชื•ื‘ืช ื”-IP ืฉืœ Pod (ื›ืžื•ื‘ืŸ ืฉืื ื—ื ื• ื‘ื•ื“ืงื™ื ื’ื TCP ื•ื’ื UDP ืขื‘ื•ืจ ืฉื ื™ ื”ืชืจื—ื™ืฉื™ื).
  • ืฆืจื™ื›ืช ืžืฉืื‘ื™ื: ืœื›ืœ ื‘ื“ื™ืงื” ื™ืฉ ื›ืขืช ื”ืฉื•ื•ืืช ืžืฉืื‘ื™ื ืžืฉืœื”
  • ื”ืกืจืช ื‘ื“ื™ืงื•ืช ื™ื™ืฉื•ืžื™ื: ืื™ื ื ื• ืžื‘ืฆืขื™ื ืขื•ื“ ื‘ื“ื™ืงื•ืช HTTP, FTP ื•-SCP ืžื›ื™ื•ื•ืŸ ืฉืฉื™ืชื•ืฃ ื”ืคืขื•ืœื” ื”ืคื•ืจื” ืฉืœื ื• ืขื ื”ืงื”ื™ืœื” ื•ืขื ืžืชื—ืžื™ ื”-CNI ื’ื™ืœื” ืคืขืจ ื‘ื™ืŸ ืชื•ืฆืื•ืช iperf ืขืœ ืคื ื™ TCP ืœื‘ื™ืŸ ืชื•ืฆืื•ืช ืกืœืกื•ืœ ืขืงื‘ ืขื™ื›ื•ื‘ ื‘ื”ืคืขืœืช CNI (ื”ืฉื ื™ื•ืช ื”ืจืืฉื•ื ื•ืช ืฉืœ Pod ื”ืคืขืœื”, ืฉืื™ื ื” ืื•ืคื™ื™ื ื™ืช ื‘ืชื ืื™ื ืืžื™ืชื™ื™ื).
  • ืงื•ื“ ืคืชื•ื—: ื›ืœ ืžืงื•ืจื•ืช ื”ื‘ื“ื™ืงื” (ืกืงืจื™ืคื˜ื™ื, ื”ื’ื“ืจื•ืช yml ื•ื ืชื•ื ื™ "ื’ื•ืœืžื™ื™ื" ืžืงื•ืจื™ื™ื) ื–ืžื™ื ื™ื ื›ืืŸ

ืคืจื•ื˜ื•ืงื•ืœ ื‘ื“ื™ืงืช ื”ืชื™ื™ื—ืกื•ืช

ื”ืคืจื•ื˜ื•ืงื•ืœ ืžืชื•ืืจ ื‘ืคื™ืจื•ื˜ ื›ืืŸืฉื™ืžื• ืœื‘ ืฉืžืืžืจ ื–ื” ืขื•ืกืง ื‘ืื•ื‘ื•ื ื˜ื• 18.04 ืขื ืœื™ื‘ืช ื‘ืจื™ืจืช ื”ืžื—ื“ืœ.

ื‘ื—ื™ืจืช CNI ืœื”ืขืจื›ื”

ื‘ื“ื™ืงื” ื–ื• ื ื•ืขื“ื” ืœื”ืฉื•ื•ืช CNIs ื”ืžื•ื’ื“ืจื™ื ืขื ืงื•ื‘ืฅ yaml ืื—ื“ (ืœื›ืŸ, ื›ืœ ืืœื” ืฉื”ื•ืชืงื ื• ืขืœ ื™ื“ื™ ืกืงืจื™ืคื˜ื™ื, ื›ื’ื•ืŸ VPP ื•ืื—ืจื™ื, ืื™ื ื ื ื›ืœืœื™ื).

ื”-CNI ืฉื ื‘ื—ืจื• ืœื”ืฉื•ื•ืื”:

  • Antrea v.0.9.1
  • Calico v3.16
  • Canal v3.16 (ืžื“ื™ื ื™ื•ืช ืจืฉืช ืคืœื ืœ + Calico)
  • Cilium 1.8.2
  • ืคืœื ืœ 0.12.0
  • ื”ืขื“ื›ื ื™ืช ื‘ื™ื•ืชืจ ืฉืœ ื ืชื‘ Kube (2020โ€“08โ€“25)
  • WeaveNet 2.7.0

ื”ื’ื“ืจืช MTU ืขื‘ื•ืจ CNI

ืงื•ื“ื ื›ืœ, ืื ื• ื‘ื•ื“ืงื™ื ืืช ื”ื”ืฉืคืขื” ืฉืœ ื–ื™ื”ื•ื™ MTU ืื•ื˜ื•ืžื˜ื™ ืขืœ ื‘ื™ืฆื•ืขื™ TCP:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืฉืคืขืช MTU ืขืœ ื‘ื™ืฆื•ืขื™ TCP

ืคืขืจ ื’ื“ื•ืœ ืขื•ื“ ื™ื•ืชืจ ื ืžืฆื ื‘ืขืช ืฉื™ืžื•ืฉ ื‘-UDP:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)
ื”ืฉืคืขืช MTU ืขืœ ื‘ื™ืฆื•ืขื™ UDP

ื‘ื”ืชื—ืฉื‘ ื‘ื”ืฉืคืขืช ื”ื‘ื™ืฆื•ืขื™ื ื”ืขืฆื•ืžื” ืฉื”ืชื’ืœืชื” ื‘ื‘ื“ื™ืงื•ืช, ื‘ืจืฆื•ื ื ื• ืœืฉืœื•ื— ืžื›ืชื‘ ืชืงื•ื•ื” ืœื›ืœ ืžืชื—ื–ืงื™ ื”-CNI: ืื ื ื”ื•ืกืฃ ื–ื™ื”ื•ื™ MTU ืื•ื˜ื•ืžื˜ื™ ืœ-CNI. ืชื•ื›ืœื• ืœื”ืฆื™ืœ ื—ืชืœืชื•ืœื™ื, ื—ื“ื™ ืงืจืŸ ื•ืืคื™ืœื• ืืช ื”ื—ืžื•ื“ ื‘ื™ื•ืชืจ: ื”-Devop ื”ืงื˜ืŸ.

ืขื ื–ืืช, ืื ืืชื” ืฆืจื™ืš ืœื”ืฉืชืžืฉ ื‘-CNI ืœืœื ืชืžื™ื›ื” ื‘ื–ื™ื”ื•ื™ MTU ืื•ื˜ื•ืžื˜ื™, ืืชื” ื™ื›ื•ืœ ืœื”ื’ื“ื™ืจ ืื•ืชื• ื‘ืื•ืคืŸ ื™ื“ื ื™ ื›ื“ื™ ืœืงื‘ืœ ื‘ื™ืฆื•ืขื™ื. ืฉื™ืžื• ืœื‘ ืฉื–ื” ื—ืœ ืขืœ Calico, Canal ื•-WeaveNet.

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)
ื‘ืงืฉืชื™ ื”ืงื˜ื ื” ืœ-CNI ื”ื ืœื•ื•ื™ื...

ื‘ื“ื™ืงืช CNI: ื ืชื•ื ื™ื ื’ื•ืœืžื™ื™ื

ื‘ื—ืœืง ื–ื” ื ืฉื•ื•ื” ืืช ื”-CNI ืขื ื”-MTU ื”ื ื›ื•ืŸ (ื ืงื‘ืข ืื•ื˜ื•ืžื˜ื™ืช ืื• ืžื•ื’ื“ืจ ื™ื“ื ื™ืช). ื”ืžื˜ืจื” ื”ืขื™ืงืจื™ืช ื›ืืŸ ื”ื™ื ืœื”ืฆื™ื’ ืืช ื”ื ืชื•ื ื™ื ื”ื’ื•ืœืžื™ื™ื ื‘ื’ืจืคื™ื.

ืื’ื“ืช ืฆื‘ืข:

  • ืืคื•ืจ - ืžื“ื’ื (ื›ืœื•ืžืจ ื‘ืจื–ืœ ื—ืฉื•ืฃ)
  • ื™ืจื•ืง - ืจื•ื—ื‘ ืคืก ืžืขืœ 9500 Mbps
  • ืฆื”ื•ื‘ - ืจื•ื—ื‘ ืคืก ืžืขืœ 9000 Mbps
  • ื›ืชื•ื - ืจื•ื—ื‘ ืคืก ืžืขืœ 8000 Mbps
  • ืื“ื•ื - ืจื•ื—ื‘ ืคืก ืžืชื—ืช ืœ-8000 Mbps
  • ื›ื—ื•ืœ - ื ื™ื˜ืจืœื™ (ืœื ืงืฉื•ืจ ืœืจื•ื—ื‘ ืคืก)

ืฆืจื™ื›ืช ืžืฉืื‘ื™ื ืœืœื ืขื•ืžืก

ืงื•ื“ื ื›ืœ, ื‘ื“ื•ืง ืืช ืฆืจื™ื›ืช ื”ืžืฉืื‘ื™ื ื›ืืฉืจ ื”ืืฉื›ื•ืœ "ื™ืฉืŸ".

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)
ืฆืจื™ื›ืช ืžืฉืื‘ื™ื ืœืœื ืขื•ืžืก

ืชืจืžื™ืœ ืืœ ืชืจืžื™ืœ

ืชืจื—ื™ืฉ ื–ื” ืžื ื™ื— ืฉื”-Pod ืฉืœ ื”ืœืงื•ื— ืžืชื—ื‘ืจ ื™ืฉื™ืจื•ืช ืœ-Pod ืฉืœ ื”ืฉืจืช ื‘ืืžืฆืขื•ืช ื›ืชื•ื‘ืช ื”-IP ืฉืœื•.

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)
ืชืจื—ื™ืฉ ืฉืœ ืชืจืžื™ืœ

TCP

ืชื•ืฆืื•ืช TCP ืฉืœ Pod-to-Pod ื•ืฆืจื™ื›ืช ืžืฉืื‘ื™ื ืžืชืื™ืžื”:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

UDP

ืชื•ืฆืื•ืช UDP ืฉืœ Pod-to-Pod ื•ืฆืจื™ื›ืช ืžืฉืื‘ื™ื ืžืชืื™ืžื”:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

Pod-to-Service

ืกืขื™ืฃ ื–ื” ืจืœื•ื•ื ื˜ื™ ืœืžืงืจื™ ืฉื™ืžื•ืฉ ืืžื™ืชื™ื™ื, Pod ื”ืœืงื•ื— ืžืชื—ื‘ืจ ืœืคื•ื“ ื”ืฉืจืช ื‘ืืžืฆืขื•ืช ืฉื™ืจื•ืช ClusterIP.

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)
ืกืงืจื™ืคื˜ Pod-to-Service

TCP

ืชื•ืฆืื•ืช TCP ืฉืœ Pod-to-Service ื•ืฆืจื™ื›ืช ืžืฉืื‘ื™ื ืžืชืื™ืžื”:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

UDP

ืชื•ืฆืื•ืช UDP ืฉืœ Pod-to-Service ื•ืฆืจื™ื›ืช ืžืฉืื‘ื™ื ืžืชืื™ืžื”:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ืชืžื™ื›ื” ื‘ืžื“ื™ื ื™ื•ืช ืจืฉืช

ื‘ื™ืŸ ื›ืœ ื”ืืžื•ืจ ืœืขื™ืœ, ื”ื™ื—ื™ื“ ืฉืœื ืชื•ืžืš ื‘ืคื•ืœื™ื˜ื™ืงื” ื”ื•ื ืคืœื ืœ. ื›ืœ ื”ืฉืืจ ืžื™ื™ืฉืžื™ื ื ื›ื•ืŸ ืืช ืžื“ื™ื ื™ื•ืช ื”ืจืฉืช, ื›ื•ืœืœ ื ื›ื ืกื™ื ื•ื™ื•ืฆืื™ื. ืขื‘ื•ื“ื” ื˜ื•ื‘ื”!

ื”ืฆืคื ืช CNI

ื‘ื™ืŸ ื”-CNIs ืฉื ื‘ื“ืงื• ื™ืฉ ื›ืืœื” ืฉื™ื›ื•ืœื™ื ืœื”ืฆืคื™ืŸ ื—ื™ืœื•ืคื™ ืจืฉืช ื‘ื™ืŸ Pods:

  • Antrea ื‘ืืžืฆืขื•ืช IPsec
  • Calico ื‘ืืžืฆืขื•ืช ืžื’ืŸ ืชื™ืœ
  • Cilium ื‘ืืžืฆืขื•ืช IPsec
  • WeaveNet ื‘ืืžืฆืขื•ืช IPsec

ืชืคื•ืงื”

ืžื›ื™ื•ื•ืŸ ืฉื ื•ืชืจื• ืคื—ื•ืช CNIs, ื‘ื•ืื• ื ืฉื™ื ืืช ื›ืœ ื”ืชืจื—ื™ืฉื™ื ื‘ื’ืจืฃ ืื—ื“:

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ืฆืจื™ื›ืช ืžืฉืื‘ื™ื

ื‘ืกืขื™ืฃ ื–ื”, ื ืขืจื™ืš ืืช ื”ืžืฉืื‘ื™ื ื”ืžืฉืžืฉื™ื ื‘ืขืช ืขื™ื‘ื•ื“ ืชืงืฉื•ืจืช Pod-to-Pod ื‘-TCP ื•-UDP. ืื™ืŸ ื˜ืขื ืœืฆื™ื™ืจ ื’ืจืฃ Pod-to-Service ืžื›ื™ื•ื•ืŸ ืฉื”ื•ื ืื™ื ื• ืžืกืคืง ืžื™ื“ืข ื ื•ืกืฃ.

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ืžื—ื‘ืจื™ื ืืช ื”ื›ืœ ื‘ื™ื—ื“

ื”ื‘ื” ื ื ืกื” ืœื—ื–ื•ืจ ืขืœ ื›ืœ ื”ื’ืจืคื™ื, ื”ืฆื’ื ื• ื›ืืŸ ืžืขื˜ ืกื•ื‘ื™ื™ืงื˜ื™ื‘ื™ื•ืช, ื•ื”ื—ืœืคื ื• ืืช ื”ืขืจื›ื™ื ื‘ืคื•ืขืœ ื‘ืžื™ืœื™ื "ืžื”ื™ืจ ืžื”ืจ", "ื ืžื•ืš" ื•ื›ื•'.

ื”ืขืจื›ืช ื‘ื™ืฆื•ืขื™ CNI ืขื‘ื•ืจ ืจืฉืช Kubernetes ืžืขืœ 10G (ืื•ื’ื•ืกื˜ 2020)

ืžืกืงื ื” ื•ืžืกืงื ื•ืช ืฉืœื™

ื–ื” ืงืฆืช ืกื•ื‘ื™ื™ืงื˜ื™ื‘ื™, ืžื›ื™ื•ื•ืŸ ืฉืื ื™ ืžืขื‘ื™ืจ ืืช ื”ืคืจืฉื ื•ืช ืฉืœื™ ืœืชื•ืฆืื•ืช.

ืื ื™ ืฉืžื— ืฉื”ื•ืคื™ืขื• CNIs ื—ื“ืฉื™ื, Antrea ื‘ื™ืฆืขื” ื”ื™ื˜ื‘, ืคื•ื ืงืฆื™ื•ืช ืจื‘ื•ืช ื™ื•ืฉืžื• ืืคื™ืœื• ื‘ื’ืจืกืื•ืช ืžื•ืงื“ืžื•ืช: ื–ื™ื”ื•ื™ MTU ืื•ื˜ื•ืžื˜ื™, ื”ืฆืคื ื” ื•ื”ืชืงื ื” ืงืœื”.

ืื ื ืฉื•ื•ื” ื‘ื™ืฆื•ืขื™ื, ื›ืœ ื”-CNI ืคื•ืขืœื™ื ื”ื™ื˜ื‘, ืžืœื‘ื“ Kube-OVN ื•-Kube-Router. Kube-Router ื’ื ืœื ื”ืฆืœื™ื— ืœื–ื”ื•ืช ืืช ื”-MTU, ืœื ืžืฆืืชื™ ื“ืจืš ืœื”ื’ื“ื™ืจ ืื•ืชื• ื‘ืฉื•ื ืžืงื•ื ื‘ืชื™ืขื•ื“ (ื›ืืŸ ื‘ืงืฉื” ื‘ื ื•ืฉื ื–ื” ืคืชื•ื—ื”).

ื‘ืžื•ื ื—ื™ื ืฉืœ ืฆืจื™ื›ืช ืžืฉืื‘ื™ื, Cilium ืขื“ื™ื™ืŸ ืžืฉืชืžืฉ ื™ื•ืชืจ ื‘-RAM ืžืื—ืจื™ื, ืื‘ืœ ื”ื™ืฆืจืŸ ืžื›ื•ื•ืŸ ื‘ื‘ื™ืจื•ืจ ืœืืฉื›ื•ืœื•ืช ื’ื“ื•ืœื™ื, ื•ื–ื” ื‘ื‘ื™ืจื•ืจ ืœื ื–ื”ื” ืœื‘ื“ื™ืงื” ืขืœ ืืฉื›ื•ืœ ื‘ืขืœ ืฉืœื•ืฉื” ืฆืžืชื™ื. Kube-OVN ื’ื ืฆื•ืจืš ื”ืจื‘ื” ืžืฉืื‘ื™ CPU ื•-RAM, ืื‘ืœ ื–ื” CNI ืฆืขื™ืจ ื”ืžื‘ื•ืกืก ืขืœ Open vSwitch (ื›ืžื• Antrea, ื”ื•ื ืžืชืคืงื“ ื˜ื•ื‘ ื™ื•ืชืจ ื•ืฆื•ืจืš ืคื—ื•ืช).

ืœื›ื•ืœื ืžืœื‘ื“ ืคืœื ืœ ื™ืฉ ืžื“ื™ื ื™ื•ืช ืจืฉืช. ืกื‘ื™ืจ ืžืื•ื“ ืฉื”ื•ื ืœืขื•ืœื ืœื ื™ืชืžื•ืš ื‘ื”ื, ืฉื›ืŸ ื”ืžื˜ืจื” ืคืฉื•ื˜ื” ื™ื•ืชืจ ืžืœืคืช ืžืื•ื“ื”: ื›ืžื” ืฉื™ื•ืชืจ ืงืœ, ื™ื•ืชืจ ื˜ื•ื‘.

ื›ืžื• ื›ืŸ, ื‘ื™ืŸ ื”ื™ืชืจ, ื‘ื™ืฆื•ืขื™ ื”ื”ืฆืคื ื” ืžื“ื”ื™ืžื™ื. Calico ื”ื•ื ืื—ื“ ื”-CNIs ื”ื•ื•ืชื™ืงื™ื ื‘ื™ื•ืชืจ, ืืš ื”ืฆืคื ื” ื ื•ืกืคื” ืจืง ืœืคื ื™ ืฉื‘ื•ืขื™ื™ื. ื”ื ื‘ื—ืจื• ื‘-wireguard ื‘ืžืงื•ื ื‘-IPsec, ื•ื‘ืคืฉื˜ื•ืช, ื–ื” ืขื•ื‘ื“ ื ื”ื“ืจ ื•ืžื“ื”ื™ื, ืžืืคื™ืœ ืœื—ืœื•ื˜ื™ืŸ ืขืœ CNIs ืื—ืจื™ื ื‘ื—ืœืง ื”ื–ื” ืฉืœ ื”ื‘ื“ื™ืงื”. ื›ืžื•ื‘ืŸ ืฉืฆืจื™ื›ืช ื”ืžืฉืื‘ื™ื ืขื•ืœื” ื‘ื’ืœืœ ื”ื”ืฆืคื ื”, ืื‘ืœ ื”ืชืคื•ืงื” ืฉื”ื•ืฉื’ื” ืฉื•ื•ื” ืืช ื–ื” (Calico ื”ืฆื™ื’ื” ืฉื™ืคื•ืจ ืฉืœ ืคื™ ืฉื™ืฉื” ื‘ืžื‘ื—ืŸ ื”ื”ืฆืคื ื” ืœืขื•ืžืช Cilium ืฉื ืžืฆื ื‘ืžืงื•ื ื”ืฉื ื™). ื™ืชืจื” ืžื›ืš, ืืชื” ื™ื›ื•ืœ ืœื”ืคืขื™ืœ wireguard ื‘ื›ืœ ืขืช ืœืื—ืจ ืคืจื™ืกืช Calico ืœืืฉื›ื•ืœ, ื•ืชื•ื›ืœ ื’ื ืœื”ืฉื‘ื™ืช ืื•ืชื• ืœื–ืžืŸ ืงืฆืจ ืื• ืœืฆืžื™ืชื•ืช ืื ืชืจืฆื”. ืขื ื–ืืช, ื–ื” ื ื•ื— ืœื”ืคืœื™ื! ืื ื• ืžื–ื›ื™ืจื™ื ืœื›ื ืฉ-Calico ืœื ืžื–ื”ื” ื›ืขืช MTU ื‘ืื•ืคืŸ ืื•ื˜ื•ืžื˜ื™ (ืชื›ื•ื ื” ื–ื• ืžืชื•ื›ื ื ืช ืœื’ืจืกืื•ืช ืขืชื™ื“ื™ื•ืช), ืœื›ืŸ ื”ืงืคื™ื“ื• ืœื”ื’ื“ื™ืจ ืืช ื”-MTU ืื ื”ืจืฉืช ืฉืœื›ื ืชื•ืžื›ืช ื‘ืžืกื’ืจื•ืช Jumbo (MTU 9000).

ื‘ื™ืŸ ื”ื™ืชืจ, ืฉื™ืžื• ืœื‘ ืฉ-Cilium ื™ื›ื•ืœ ืœื”ืฆืคื™ืŸ ืชืขื‘ื•ืจื” ื‘ื™ืŸ ืฆืžืชื™ ืืฉื›ื•ืœื•ืช (ื•ืœื ืจืง ื‘ื™ืŸ Pods), ืžื” ืฉื™ื›ื•ืœ ืœื”ื™ื•ืช ื—ืฉื•ื‘ ืžืื•ื“ ืœืฆืžืชื™ ืืฉื›ื•ืœ ืฆื™ื‘ื•ืจื™.

ืœืกื™ื›ื•ื, ืื ื™ ืžืฆื™ืข ืืช ืžืงืจื™ ื”ืฉื™ืžื•ืฉ ื”ื‘ืื™ื:

  • ืฆืจื™ืš CNI ืœืืฉื›ื•ืœ ืงื˜ืŸ ืžืื•ื“ ืื• ืฉืื ื™ ืœื ืฆืจื™ืš ืื‘ื˜ื—ื”: ืœืขื‘ื•ื“ ืขื ืคืœึธื ึถืœ, ื”-CNI ื”ืงืœ ื•ื”ื™ืฆื™ื‘ ื‘ื™ื•ืชืจ (ื”ื•ื ื’ื ืื—ื“ ื”ืขืชื™ืงื™ื ื‘ื™ื•ืชืจ, ืœืคื™ ื”ืื’ื“ื” ื”ื•ื ื”ื•ืžืฆื ืขืœ ื™ื“ื™ Homo Kubernautus ืื• Homo Contaitorus). ืื•ืœื™ ื™ืขื ื™ื™ืŸ ืื•ืชืš ื’ื ื‘ืคืจื•ื™ืงื˜ ื”ื’ืื•ื ื™ ื‘ื™ื•ืชืจ k3, ื—ืฉื‘ื•ืŸ!
  • ืฆืจื™ืš CNI ืœืืฉื›ื•ืœ ืจื’ื™ืœ: ืงืืœื™ืงื• - ื‘ื—ื™ืจืชืš, ืืš ืืœ ืชืฉื›ื— ืœื”ื’ื“ื™ืจ ืืช ื”-MTU ื‘ืžื™ื“ืช ื”ืฆื•ืจืš. ืืชื” ื™ื›ื•ืœ ื‘ืงืœื•ืช ื•ื‘ืื•ืคืŸ ื˜ื‘ืขื™ ืœืฉื—ืง ืขื ืžื“ื™ื ื™ื•ืช ืจืฉืช, ืœื”ืคืขื™ืœ ื•ืœื›ื‘ื•ืช ื”ืฆืคื ื” ื•ื›ื•'.
  • ืฆืจื™ืš CNI ืขื‘ื•ืจ ืืฉื›ื•ืœ ื‘ืงื ื” ืžื™ื“ื” ื’ื“ื•ืœ (ืžืื•ื“).: ื•ื‘ื›ืŸ, ื”ื‘ื“ื™ืงื” ืœื ืžืจืื” ืืช ื”ื”ืชื ื”ื’ื•ืช ืฉืœ ืืฉื›ื•ืœื•ืช ื’ื“ื•ืœื™ื, ืื ื™ ืืฉืžื— ืœืขืจื•ืš ื‘ื“ื™ืงื•ืช, ืื‘ืœ ืื™ืŸ ืœื ื• ืžืื•ืช ืฉืจืชื™ื ืขื ื—ื™ื‘ื•ืจ ืฉืœ 10Gbps. ืื– ื”ืืคืฉืจื•ืช ื”ื˜ื•ื‘ื” ื‘ื™ื•ืชืจ ื”ื™ื ืœื”ืจื™ืฅ ื‘ื“ื™ืงื” ืฉื•ื ื” ืขืœ ื”ืฆืžืชื™ื ืฉืœืš, ืœืคื—ื•ืช ืขื Calico ื•-Cilium.

ืžืงื•ืจ: www.habr.com

ื”ื•ืกืคืช ืชื’ื•ื‘ื”