Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ื“ืึธืก ืื™ื– ืžื™ื™ืŸ ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงืŸ ืคืจื™ื™ึทืขืจื“ื™ืง ื‘ืขื ื˜ืฉืžืึทืจืง, ื•ื•ืึธืก ืื™ืฆื˜ ืœื•ื™ืคื˜ ืื•ื™ืฃ Kubernetes 1.14 ืžื™ื˜ ื“ื™ ืœืขืฆื˜ืข CNI ื•ื•ืขืจืกื™ืข ื–ื™ื ื˜ ืืคืจื™ืœ 2019.

ืขืจืฉื˜ืขืจ ืคื•ืŸ ืึทืœืข, ืื™ืš ื•ื•ื™ืœืŸ ืฆื• ื“ืึทื ืงืขืŸ ื“ื™ ืกื™ืœื™ื•ื ืžืึทื ืฉืึทืคึฟื˜: ื“ื™ ื’ื™ื™ื– ื’ืขื”ืึธืœืคึฟืŸ ืžื™ืจ ืงืึธื ื˜ืจืึธืœื™ืจืŸ ืื•ืŸ ืจื™ื›ื˜ื™ืง ื“ื™ ืžืขื˜ืจื™ืง ืžืึธื ื™ื˜ืึธืจื™ื ื’ ืกืงืจื™ืคึผืก.

ื•ื•ืึธืก ื”ืื˜ ื’ืขื‘ื™ื˜ืŸ ื–ื™ื ื˜ ื ืื•ื•ืขืžื‘ืขืจ 2018

ื“ืึธ ืก ื•ื•ืึธืก ืื™ื– ื’ืขื‘ื™ื˜ืŸ ื–ื™ื ื˜ ื“ืขืžืึธืœื˜ (ืื•ื™ื‘ ืื™ืจ ื–ืขื ื˜ ืื™ื ื˜ืขืจืขืกื™ืจื˜):

ืคืœืึทื ืึทืœ ื‘ืœื™ื™ื‘ื˜ ื“ื™ ืคืึทืกื˜ืึทืกื˜ ืื•ืŸ ืกื™ืžืคึผืœืึทืกื˜ CNI ืฆื•ื‘ื™ื ื“, ืึธื‘ืขืจ ื ืึธืš ื˜ื•ื˜ ื ื™ืฉื˜ ืฉื˜ื™ืฆืŸ ื ืขืฅ ืคึผืึทืœืึทืกื™ื– ืื•ืŸ ืขื ืงืจื™ืคึผืฉืึทืŸ.

ืจืึธืžืึทื ืึท ืื™ื– ื ื™ื˜ ืžืขืจ ื’ืขืฉื˜ื™ืฆื˜, ืึทื–ื•ื™ ืžื™ืจ ื”ืึธื‘ืŸ ืึทื•ื•ืขืงื’ืขื ื•ืžืขืŸ ืขืก ืคื•ืŸ ื“ื™ ื‘ืขื ื˜ืฉืžืึทืจืง.

WeaveNet ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ ื ืขืฅ ืคึผืึทืœืึทืกื™ื– ืคึฟืึทืจ ื™ื ื’ืจืขืกืก ืื•ืŸ ืขื’ืจืขืกืก! ืึธื‘ืขืจ ืคึผืจืึธื•ื“ืึทืงื˜ื™ื•ื•ืึทื˜ื™ ืื™ื– ื“ื™ืงืจื™ืกื˜.

ืื™ืŸ Calico, ืื™ืจ ื ืึธืš ื“ืึทืจืคึฟืŸ ืฆื• ืžืึทื ื™ื•ืึทืœื™ ืงืึทื ืคื™ื’ื™ืขืจ ื“ื™ ืžืึทืงืกื™ืžื•ื ืคึผืึทืงืึทื˜ ื’ืจื™ื™ืก (MTU) ืคึฟืึทืจ ื‘ืขืกื˜ืขืจ ืคืึธืจืฉื˜ืขืœื•ื ื’. Calico ืึธืคืคืขืจืก ืฆื•ื•ื™ื™ ืึธืคึผืฆื™ืขืก ืคึฟืึทืจ ื™ื ืกื˜ืึธืœื™ื ื’ CNI, ืึทื–ื•ื™ ืื™ืจ ืงืขื ืขืŸ ื˜ืึธืŸ ืึธืŸ ืึท ื‘ืึทื–ื•ื ื“ืขืจ ETCD ืจื™ืคึผืึทื–ืึทื˜ืึธืจื™:

  • ืกื˜ืึธืจื™ื ื’ ืฉื˜ืึทื˜ ืื™ืŸ ื“ื™ Kubernetes API ื•ื•ื™ ืึท ื“ืึทื˜ืŸ ืงืจืึธื (ืงื ื•ื™ืœ ื’ืจื™ื™ืก <50 ื ืึธื•ื“ื–);
  • ืกื˜ืึธืจื™ื ื’ ืฉื˜ืึทื˜ ืื™ืŸ ื“ื™ Kubernetes API ื•ื•ื™ ืึท ื“ืึทื˜ืŸ ืงืจืึธื ืžื™ื˜ ืึท Typha ืคืจืืงืกื™ ืฆื• ื‘ืึทืคืจื™ื™ึทืขืŸ ื“ื™ ืžืึทืกืข ืื•ื™ืฃ ื“ื™ K8S API (ืงื ื•ื™ืœ ื’ืจื™ื™ืก> 50 ื ืึธื•ื“ื–).

ืงืึทืœื™ืงืึธ ืžื•ื“ื™ืข ืฉื˜ื™ืฆืŸ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืžื“ืจื’ื” ืคึผืึทืœืึทืกื™ื– ืื•ื™ืฃ ืฉืคึผื™ืฅ ืคื•ืŸ Istio ืคึฟืึทืจ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ-ืžื“ืจื’ื” ื–ื™ื›ืขืจื”ื™ื™ื˜.

ืกื™ืœื™ื•ื ืื™ืฆื˜ ืฉื˜ื™ืฆื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ! ืกื™ืœื™ื•ื ื’ื™ื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ ืžื™ื˜ IPSec ื˜ืึทื ืึทืœื– ืื•ืŸ ืึธืคืคืขืจืก ืึทืŸ ืึธืœื˜ืขืจื ืึทื˜ื™ื•ื• ืฆื• ื“ื™ ื™ื ืงืจื™ืคึผื˜ื™ื“ WeaveNet ื ืขืฅ. ืึธื‘ืขืจ WeaveNet ืื™ื– ืคืึทืกื˜ืขืจ ื•ื•ื™ ืกื™ืœื™ื•ื ืžื™ื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ ืขื ื™ื™ื‘ืึทืœื“.

ืกื™ืœื™ื•ื ืื™ื– ืื™ืฆื˜ ื’ืจื™ื ื’ืขืจ ืฆื• ืฆืขื•ื•ื™ืงืœืขืŸ ื“ืึทื ืง ืฆื• ื“ื™ ื’ืขื‘ื•ื™ื˜-ืื™ืŸ ETCD ืึธืคึผืขืจืึทื˜ืึธืจ.

ื“ื™ Cilium ืžืึทื ืฉืึทืคึฟื˜ ื”ืื˜ ื’ืขืคืจื•ื•ื•ื˜ ืฆื• ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ ื•ื•ืึธื’ ืคื•ืŸ ื–ื™ื™ืŸ CNI ื“ื•ืจืš ืจื™ื“ื•ืกื™ื ื’ ื–ื™ืงืึธืจืŸ ืงืึทื ืกืึทืžืฉืึทืŸ ืื•ืŸ ืงืคึผื• ืงืึธืก, ืึธื‘ืขืจ ื“ื™ ืงืึธืžืคึผืขื˜ื™ื˜ืึธืจืก ื–ืขื ืขืŸ ื ืึธืš ืœื™ื™ื˜ืขืจ.

ื‘ืขื ื˜ืฉืžืึทืจืง ืงืึธื ื˜ืขืงืกื˜

ื“ื™ ื‘ืขื ื˜ืฉืžืึทืจืง ืื™ื– ืœื•ื™ืคืŸ ืื•ื™ืฃ ื“ืจื™ื™ ื ื™ื˜-ื•ื•ื™ืจื˜ื•ืึทืœื™ื–ืขื“ ืกื•ืคึผืขืจืžื™ืงืจืึธ ืกืขืจื•ื•ืขืจืก ืžื™ื˜ ืึท 10 ื’ื™ื’ืื‘ื™ื™ื˜ ืกื•ืคึผืขืจืžื™ืงืจืึธ ื‘ืึทืฉื˜ื™ืžืขืŸ. ื“ื™ ืกืขืจื•ื•ืขืจืก ื–ืขื ืขืŸ ืงืึธื ื ืขืงื˜ืขื“ ื’ืœื™ื™ึทืš ืฆื• ื“ื™ ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ื•ืจืš ืคึผืึทืกื™ื•ื• DAC SFP + ืงื™ื™ื‘ืึทืœื– ืื•ืŸ ื–ืขื ืขืŸ ืงืึทื ืคื™ื’ื™ืขืจื“ ืื•ื™ืฃ ื“ืขืจ ื–ืขืœื‘ื™ืงืขืจ ื•ื•ืœืึทืŸ ืžื™ื˜ ื“ื–ืฉืึทืžื‘ืึธื• ืจืึธืžืขืŸ (MTU 9000).

Kubernetes 1.14.0 ืื™ื ืกื˜ืึทืœื™ืจืŸ ืื•ื™ืฃ Ubuntu 18.04 LTS ืžื™ื˜ Docker 18.09.2 (ื“ื™ ืคืขืœื™ืงื™ื™ึทื˜ ื“ืึธืงืงืขืจ ื•ื•ืขืจืกื™ืข ืื™ืŸ ื“ืขื ืžืขืœื“ื•ื ื’).

ืฆื• ืคึฟืึทืจื‘ืขืกืขืจืŸ ืจืขืคึผืจืึธื“ื•ืกื™ื‘ื™ืœื™ื˜ื™, ืžื™ืจ ื‘ืึทืฉืœืึธืกืŸ ืฆื• ืฉื˜ืขื ื“ื™ืง ืงืึทื ืคื™ื’ื™ืขืจ ื“ื™ ื‘ืขืœ ืื•ื™ืฃ ื“ืขืจ ืขืจืฉื˜ืขืจ ื ืึธื“ืข, ืฉื˜ืขืœืŸ ื“ื™ ืกืขืจื•ื•ืขืจ ื˜ื™ื™ืœ ืคื•ืŸ ื“ื™ ื‘ืขื ื˜ืฉืžืึทืจืง ืื•ื™ืฃ ื“ื™ ืจื’ืข ืกืขืจื•ื•ืขืจ ืื•ืŸ ื“ืขืจ ืงืœื™ืขื ื˜ ื˜ื™ื™ืœ ืื•ื™ืฃ ื“ื™ ื“ืจื™ื˜. ืฆื• ื˜ืึธืŸ ื“ืึธืก, ืžื™ืจ ื ื•ืฆืŸ NodeSelector ืื™ืŸ Kubernetes ื“ื™ืคึผืœื•ื™ืžืึทื ืฅ.

ืžื™ืจ ื•ื•ืขืœืŸ ื‘ืึทืฉืจื™ื™ึทื‘ืŸ ื“ื™ ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื•ื™ืฃ ื“ื™ ืคืืœื’ืขื ื“ืข ื•ื•ืึธื’:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

ืกืขืœืขืงื˜ื™ื ื’ ืึท CNI ืคึฟืึทืจ ืึท ื‘ืขื ื˜ืฉืžืึทืจืง

ื“ืึธืก ืื™ื– ืึท ื‘ืขื ื˜ืฉืžืึทืจืง ื‘ืœื•ื™ื– ืคึฟืึทืจ CNI ืคึฟื•ืŸ ื“ืขืจ ืจืฉื™ืžื” ืื™ืŸ ื“ืขืจ ืึธืคึผื˜ื™ื™ืœื•ื ื’ ื•ื•ืขื’ืŸ ืฉืึทืคึฟืŸ ืื™ื™ืŸ ื‘ืขืœ ืงื ื•ื™ืœ ืžื™ื˜ ืงื•ื‘ืขืึทื“ื ื–ืขืŸ ื“ื™ ื‘ืึทืึทืžื˜ืขืจ Kubernetes ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ. ืคื•ืŸ ื“ื™ 9 CNIs, ืžื™ืจ ื•ื•ืขืœืŸ ื ืขืžืขืŸ ื‘ืœื•ื™ื– 6: ืžื™ืจ ื•ื™ืกืฉืœื™ืกืŸ ื“ื™ ื•ื•ืึธืก ื–ืขื ืขืŸ ืฉื•ื•ืขืจ ืฆื• ื™ื ืกื˜ืึทืœื™ืจืŸ ืื•ืŸ / ืึธื“ืขืจ ื˜ืึธืŸ ื ื™ื˜ ืึทืจื‘ืขื˜ืŸ ืึธืŸ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืœื•ื™ื˜ ื“ื™ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ (Romana, Contiv-VPP ืื•ืŸ JuniperContrail/TungstenFabric).

ืžื™ืจ ื•ื•ืขืœืŸ ืคืึทืจื’ืœื™ื™ึทื›ืŸ ื“ื™ ืคืืœื’ืขื ื“ืข CNIs:

  • Calico v3.6
  • ืงืึทื ืึทืœ ื•ื• 3.6 (ื™ืกืขื ืฉืึทืœื™ ืคืœืึทื ืึทืœ ืคึฟืึทืจ ื ืขื˜ื•ื•ืึธืจืงื™ื ื’ + ืงืึทืœื™ืงืึธ ื•ื•ื™ ืึท ืคื™ื™ืจื•ื•ืึทืœ)
  • ืกื™ืœื™ื•ื 1.4.2
  • ืคืœืึทื ืึทืœ 0.11.0
  • ืงื•ื‘ืข-ืจืึธื•ื˜ืขืจ 0.2.5
  • WeaveNet 2.5.1

ื™ื ืกื˜ืึทืœื™ืจื•ื ื’

ื“ื™ ื’ืจื™ื ื’ืขืจ ื“ื™ CNI ืื™ื– ืฆื• ื™ื ืกื˜ืึทืœื™ืจืŸ, ื“ื™ ื‘ืขืกืขืจ ืื•ื ื“ื–ืขืจ ืขืจืฉื˜ืขืจ ืจื•ืฉื ื•ื•ืขื˜ ื–ื™ื™ืŸ. ืึทืœืข CNIs ืคึฟื•ืŸ ื“ื™ ื‘ืขื ื˜ืฉืžืึทืจืง ื–ืขื ืขืŸ ื–ื™ื™ืขืจ ื’ืจื™ื ื’ ืฆื• ื™ื ืกื˜ืึทืœื™ืจืŸ (ืžื™ื˜ ืื™ื™ืŸ ืึธื“ืขืจ ืฆื•ื•ื™ื™ ืงืึทืžืึทื ื“ื–).

ื•ื•ื™ ืžื™ืจ ื’ืขื–ืื’ื˜, ื“ื™ ืกืขืจื•ื•ืขืจืก ืื•ืŸ ื‘ืึทืฉื˜ื™ืžืขืŸ ื–ืขื ืขืŸ ืงืึทื ืคื™ื’ื™ืขืจื“ ืžื™ื˜ ื“ื–ืฉืึทืžื‘ืึธื• ืจืึธืžืขืŸ ืขื ื™ื™ื‘ืึทืœื“ (ืžื™ืจ ืฉื˜ืขืœืŸ ื“ื™ MTU ืฆื• 9000). ืžื™ืจ ื•ื•ืึธืœื˜ ื–ื™ื™ืŸ ืฆื•ืคืจื™ื“ืŸ ืื•ื™ื‘ CNI ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ื‘ืืฉืœืืกืŸ ื“ื™ MTU ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ื“ื™ ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ ืคื•ืŸ ื“ื™ ืึทื“ืึทืคึผื˜ืขืจื–. ืึธื‘ืขืจ, ื‘ืœื•ื™ื– ืกื™ืœื™ื•ื ืื•ืŸ ืคืœืึทื ืึทืœ ื’ืขืจืื˜ืŸ ื“ืขื. ื“ื™ ืจืขืฉื˜ ืคื•ืŸ ื“ื™ CNIs ื”ืึธื‘ืŸ ืจื™ืงื•ื•ืขืก ืื•ื™ืฃ GitHub ืฆื• ืœื™ื™ื’ืŸ ืึธื˜ืึทืžืึทื˜ื™ืง MTU ื•ืคื“ืขืงื•ื ื’, ืึธื‘ืขืจ ืžื™ืจ ื•ื•ืขืœืŸ ืงืึทื ืคื™ื’ื™ืขืจ ืขืก ืžืึทื ื™ื•ืึทืœื™ ื“ื•ืจืš ื˜ืฉืึทื ื’ื™ื ื’ ื“ื™ ConfigMap ืคึฟืึทืจ ืงืึทืœื™ืงืึธ, ืงืึทื ืึทืœ ืื•ืŸ ืงื•ื‘ืข-ืจืึธื•ื˜ืขืจ, ืึธื“ืขืจ ืคืึธืจืŸ ืึท ืกื•ื•ื™ื•ื•ืข ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง ืคึฟืึทืจ WeaveNet.

ื•ื•ืึธืก ืื™ื– ื“ื™ ืคึผืจืึธื‘ืœืขื ืžื™ื˜ ืคืึทืœืฉ MTU? ื“ืขืจ ื“ื™ืึทื’ืจืึทืžืข ื•ื•ื™ื™ื–ื˜ ื“ื™ ื—ื™ืœื•ืง ืฆื•ื•ื™ืฉืŸ WeaveNet ืžื™ื˜ ืคืขืœื™ืงื™ื™ึทื˜ MTU ืื•ืŸ ื“ื–ืฉืึทืžื‘ืึธื• ืจืึธืžืขืŸ ืขื ื™ื™ื‘ืึทืœื“:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ื•ื•ื™ ืงืขืŸ ื“ืขืจ MTU ืคึผืึทืจืึทืžืขื˜ืขืจ ื•ื•ื™ืจืงืŸ ื˜ืจื•ืคึผื•ื˜?

ืžื™ืจ ื”ืึธื‘ืŸ ื’ืขื–ืขืŸ ื•ื•ื™ ื•ื•ื™ื›ื˜ื™ืง MTU ืื™ื– ืคึฟืึทืจ ืคืึธืจืฉื˜ืขืœื•ื ื’, ืื™ืฆื˜ ืœืึธื–ืŸ ืื•ื ื“ื– ื–ืขืŸ ื•ื•ื™ ืื•ื ื“ื–ืขืจ CNIs ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ื‘ืึทืฉื˜ื™ืžืขืŸ ืขืก:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
CNI ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ื“ื™ื˜ืขืงืฅ MTU

ื“ื™ ื’ืจืึทืคื™ืง ื•ื•ื™ื™ื–ื˜ ืึทื– ืื™ืจ ื“ืึทืจืคึฟืŸ ืฆื• ืงืึทื ืคื™ื’ื™ืขืจ ื“ื™ MTU ืคึฟืึทืจ Calico, Canal, Kube-router ืื•ืŸ WeaveNet ืคึฟืึทืจ ืึธืคึผื˜ื™ืžืึทืœ ืคืึธืจืฉื˜ืขืœื•ื ื’. ืกื™ืœื™ื•ื ืื•ืŸ ืคืœืึทื ืึทืœ ื–ืขื ืขืŸ ื‘ื™ื›ื•ืœืช ืฆื• ืจื™ื›ื˜ื™ืง ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ื™ MTU ื–ื™ืš ืึธืŸ ืงื™ื™ืŸ ืกืขื˜ื˜ื™ื ื’ืก.

ื–ื™ื›ืขืจืงื™ื™ึทื˜

ืžื™ืจ ื•ื•ืขืœืŸ ืคืึทืจื’ืœื™ื™ึทื›ืŸ CNI ื–ื™ื›ืขืจื”ื™ื™ื˜ ืื™ืŸ ืฆื•ื•ื™ื™ ืึทืกืคึผืขืงืฅ: ื“ื™ ืคื™ื™ื™ืงื™ื™ื˜ ืฆื• ืขื ืงืจื™ืคึผื˜ ื˜ืจืึทื ืกืžื™ื˜ื˜ืขื“ ื“ืึทื˜ืŸ ืื•ืŸ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ Kubernetes ื ืขืฅ ืคึผืึทืœืึทืกื™ื– (ื‘ืื–ื™ืจื˜ ืื•ื™ืฃ ืคืึทืงื˜ื™ืฉ ื˜ืขืกืฅ, ื ื™ืฉื˜ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ).

ื‘ืœื•ื™ื– ืฆื•ื•ื™ื™ CNIs ื™ื ืงืจื™ืคึผื˜ ื“ืึทื˜ืŸ: ืกื™ืœื™ื•ื ืื•ืŸ ื•ื•ืขืึทื•ื•ื ืขื˜. ืขื ืงืจื™ืคึผืฉืึทืŸ WeaveNet ืขื ื™ื™ื‘ืึทืœื“ ื“ื•ืจืš ื‘ืึทืฉื˜ืขื˜ื™ืงืŸ ื“ื™ ืขื ืงืจื™ืคึผืฉืึทืŸ ืคึผืึทืจืึธืœ ื•ื•ื™ ืึท CNI ืกื•ื•ื™ื•ื•ืข ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง. ืื™ืŸ ื“ืึทืงื™ื•ืžืขื ื˜ื™ื™ืฉืึทืŸ WeaveNet ื‘ืืฉืจื™ื™ื‘ื˜ ืขืก ืื•ื™ืฃ ืึท ืงืึธืžืคึผืœื™ืฆื™ืจื˜ ื•ื•ืขื’, ืึธื‘ืขืจ ืึทืœืฅ ืื™ื– ืคึผืฉื•ื˜. ืขื ืงืจื™ืคึผืฉืึทืŸ ืกื™ืœื™ื•ื ืงืึทื ืคื™ื’ื™ืขืจื“ ื“ื•ืจืš ืงืึทืžืึทื ื“ื–, ื“ื•ืจืš ืงืจื™ื™ื™ื˜ื™ื ื’ Kubernetes ืกื™ืงืจื™ืฅ, ืื•ืŸ ื“ื•ืจืš ืžืึธื“ื™ืคื™ืงืึทื˜ื™ืึธืŸ ืคื•ืŸ ื“ื™ daemonSet (ืึท ื‘ื™ืกืœ ืžืขืจ ืงืึธืžืคึผืœื™ืฆื™ืจื˜ ื•ื•ื™ ืื™ืŸ WeaveNet, ืึธื‘ืขืจ Cilium ื”ืื˜ ืฉืจื™ื˜-ืคึฟืึทืจ-ืฉืจื™ื˜ ื™ื ืกื˜ืจืึทืงืฉืึทื ื–).

ื•ื•ื™ ืคึฟืึทืจ ื“ื™ ื™ืžืคึผืœืึทืžืขื ื˜ื™ื™ืฉืึทืŸ ืคื•ืŸ ื ืขืฅ ืคึผืึธืœื™ื˜ื™ืง, ื–ื™ื™ ื”ืึธื‘ืŸ ืกืึทืงืกื™ื“ืึทื“ ืงืึทืœื™ืงืึธ, ืงืึทื ืึทืœ, ืกื™ืœื™ื•ื ืื•ืŸ ื•ื•ืขืึทื•ื•ื ืขื˜, ืื™ืŸ ื•ื•ืึธืก ืื™ืจ ืงืขื ืขืŸ ืงืึทื ืคื™ื’ื™ืขืจ Ingress ืื•ืŸ Egress ื›ึผืœืœื™ื. ืคึฟืึทืจ ืงื•ื‘ืข-ืจืึธื•ื˜ืขืจ ืขืก ื–ืขื ืขืŸ ื›ึผืœืœื™ื ื‘ืœื•ื™ื– ืคึฟืึทืจ ื™ื ื’ืจืขืกืก, ืื•ืŸ ืคืœืึทื ืึทืœ ืขืก ื–ืขื ืขืŸ ืงื™ื™ืŸ ื ืขืฅ ืคึผืึทืœืึทืกื™ื– ื‘ื™ื™ึท ืึทืœืข.

ื“ืึธ ื–ืขื ืขืŸ ื“ื™ ืงื•ื™ืœืขืœื“ื™ืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ื–ื™ื›ืขืจืงื™ื™ึทื˜ ืคืึธืจืฉื˜ืขืœื•ื ื’ ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ

ืคืึธืจืฉื˜ืขืœื•ื ื’

ื“ืขืจ ื‘ืขื ื˜ืฉืžืึทืจืง ื•ื•ื™ื™ื–ื˜ ื“ื™ ื“ื•ืจื›ืฉื ื™ื˜ืœืขืš ื˜ืจื•ืคึผื•ื˜ ืื™ื‘ืขืจ ื‘ื™ื™ึท ืžื™ื ื“ืกื˜ืขืจ ื“ืจื™ื™ ืœื•ื™ืคื˜ ืคื•ืŸ ื™ืขื“ืขืจ ืคึผืจืึธื‘ืข. ืžื™ืจ ืคึผืจื•ื‘ื™ืจืŸ ื“ื™ ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคื•ืŸ TCP ืื•ืŸ UDP (ื ื™ืฆืŸ iperf3), ืคืึทืงื˜ื™ืฉ ืึทืคึผืœืึทืงื™ื™ืฉืึทื ื– ื•ื•ื™ ื”ื˜ื˜ืคึผ (ืžื™ื˜ ื ื’ื™ื ืงืก ืื•ืŸ ืงืขืจืœ) ืึธื“ืขืจ ืคื˜ืคึผ (ืžื™ื˜ ื•ื•ืกืคื˜ืคึผื“ ืื•ืŸ ืงืขืจืœ) ืื•ืŸ ืœืขืกืึธืฃ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ื ื™ืฆืŸ ืกืงืคึผ-ื‘ืื–ื™ืจื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ (ื ื™ืฆืŸ ืงืœื™ืขื ื˜ ืื•ืŸ ืกืขืจื•ื•ืขืจ ืึธืคึผืขื ืกืฉ).

ืคึฟืึทืจ ืึทืœืข ื˜ืขืกืฅ, ืžื™ืจ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ืึท ื ืึทืงืขื˜ ืžืขื˜ืึทืœ ื‘ืขื ื˜ืฉืžืึทืจืง (ื’ืจื™ืŸ ืฉื•ืจื”) ืฆื• ืคืึทืจื’ืœื™ื™ึทื›ืŸ CNI ืคืึธืจืฉื˜ืขืœื•ื ื’ ืžื™ื˜ ื’ืขื‘ื•ื™ืจืŸ ื ืขืฅ ืคืึธืจืฉื˜ืขืœื•ื ื’. ื“ืึธ ืžื™ืจ ื ื•ืฆืŸ ื“ื™ ื–ืขืœื‘ืข ื•ื•ืึธื’, ืึธื‘ืขืจ ืื™ืŸ ืงืึธืœื™ืจืŸ:

  • ื’ืขืœ = ื–ื™ื™ืขืจ ื’ื•ื˜
  • ืžืึทืจืึทื ืฅ = ื’ื•ื˜
  • ื‘ืœื•ื™ = ืึทื–ื•ื™-ืึทื–ื•ื™
  • ืจื•ื™ื˜ = ืฉืœืขื›ื˜

ืžื™ืจ ื•ื•ืขืœืŸ ื ื™ืฉื˜ ื ืขืžืขืŸ ืคืึทืœืฉ ืงืึทื ืคื™ื’ื™ืขืจื“ CNIs ืื•ืŸ ื•ื•ืขืœืŸ ื‘ืœื•ื™ื– ื•ื•ื™ื™ึทื–ืŸ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืคึฟืึทืจ CNIs ืžื™ื˜ ื“ื™ ืจื™ื›ื˜ื™ืง MTU. (ื‘ืึทืžืขืจืงื•ื ื’: ืกื™ืœื™ื•ื ืงืขืŸ ื ื™ืฉื˜ ืจื™ื›ื˜ื™ืง ืจืขื›ืขื ืขืŸ ื“ื™ MTU ืื•ื™ื‘ ืื™ืจ ื’ืขื‘ืŸ ืขื ืงืจื™ืคึผืฉืึทืŸ, ืึทื–ื•ื™ ืื™ืจ ื•ื•ืขื˜ ื”ืึธื‘ืŸ ืฆื• ืžืึทื ื™ื•ืึทืœื™ ืจืขื“ื•ืฆื™ืจืŸ ื“ื™ MTU ืฆื• 8900 ืื™ืŸ ื•ื•ืขืจืกื™ืข 1.4. ื“ื™ ื•ื•ื™ื™ึทื˜ืขืจ ื•ื•ืขืจืกื™ืข, 1.5, ื˜ื•ื˜ ื“ืึธืก ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ.)

ื“ืึธ ื–ืขื ืขืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ื˜ืงืคึผ ืคืึธืจืฉื˜ืขืœื•ื ื’

ืึทืœืข CNIs ื”ืึธื‘ืŸ ื“ื•ืจื›ื’ืขืงืึธื›ื˜ ื’ื•ื˜ ืื™ืŸ ื“ื™ TCP ื‘ืขื ื˜ืฉืžืึทืจืง. CNI ืžื™ื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ ืœืึทื’ื– ื•ื•ื™ื™ึทื˜ ื”ื™ื ื˜ืขืจ ื•ื•ื™ื™ึทืœ ืขื ืงืจื™ืคึผืฉืึทืŸ ืื™ื– ื˜ื™ื™ึทืขืจ.

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
UDP ืคืึธืจืฉื˜ืขืœื•ื ื’

ืื•ื™ืš ื“ืึธ ืึทืœืข CNIs ื–ืขื ืขืŸ ื’ื•ื˜. CNI ืžื™ื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ ื’ืขื•ื•ื™ื–ืŸ ื›ึผืžืขื˜ ื“ื™ ื–ืขืœื‘ืข ืจืขื–ื•ืœื˜ืึทื˜. ืกื™ืœื™ื•ื ืื™ื– ืึท ื‘ื™ืกืœ ื”ื™ื ื˜ืขืจ ื“ื™ ืคืึทืจืžืขืกื˜, ืึธื‘ืขืจ ืขืก ืื™ื– ื‘ืœื•ื™ื– 2,3% ืคื•ืŸ ื ืึทืงืขื˜ ืžืขื˜ืึทืœ, ืึทื–ื•ื™ ืขืก ืื™ื– ื ื™ืฉื˜ ืึท ืฉืœืขื›ื˜ ืจืขื–ื•ืœื˜ืึทื˜. ื“ื• ื–ืืœืกื˜ ื ื™ืฉื˜ ืคืึทืจื’ืขืกืŸ ืึทื– ื‘ืœื•ื™ื– ืกื™ืœื™ื•ื ืื•ืŸ ืคืœืึทื ืึทืœ ื‘ืืฉืœืืกืŸ ื“ื™ MTU ืจื™ื›ื˜ื™ืง, ืื•ืŸ ื“ืึธืก ื–ืขื ืขืŸ ื–ื™ื™ืขืจ ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืึธืŸ ืงื™ื™ืŸ ื ืึธืš ืงืึทื ืคื™ื’ื™ืขืจื™ื™ืฉืึทืŸ.

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

ื•ื•ืึธืก ื•ื•ืขื’ืŸ ืึท ืคืึทืงื˜ื™ืฉ ืึทืคึผืœืึทืงื™ื™ืฉืึทืŸ? ื•ื•ื™ ืื™ืจ ืงืขื ืขืŸ ื–ืขืŸ, ื“ื™ ืงื•ื™ืœืขืœื“ื™ืง ืคืึธืจืฉื˜ืขืœื•ื ื’ ืคึฟืึทืจ HTTP ืื™ื– ืึท ื‘ื™ืกืœ ื ื™ื“ืขืจื™ืงืขืจ ื•ื•ื™ ืคึฟืึทืจ TCP. ืืคื™ืœื• ืื•ื™ื‘ ืื™ืจ ื ื•ืฆืŸ ื”ื˜ื˜ืคึผ ืžื™ื˜ ื˜ืงืคึผ, ืžื™ืจ ืงืึทื ืคื™ื’ื™ืขืจื“ iperf3 ืื™ืŸ ื“ื™ ื˜ืงืคึผ ื‘ืขื ื˜ืฉืžืึทืจืง ืฆื• ื•ื™ืกืžื™ื™ื“ืŸ ืึท ืคึผืึทืžืขืœืขืš ืึธื ื”ื™ื™ื‘ ื•ื•ืึธืก ื•ื•ืึธืœื˜ ื•ื•ื™ืจืงืŸ ื“ื™ ื”ื˜ื˜ืคึผ ื‘ืขื ื˜ืฉืžืึทืจืง. ืืœืข ื”ืื‘ืŸ ื“ื ื ื’ื•ื˜ืข ืืจื‘ืขื˜. ืงื•ื‘ืข-ืจืึธื•ื˜ืขืจ ื”ืื˜ ืึท ืงืœืึธืจ ืžื™ื™ึทืœืข, ืึธื‘ืขืจ WeaveNet ื”ืื˜ ื ื™ืฉื˜ ื“ื•ืจื›ืคื™ืจืŸ ื’ืขื–ื•ื ื˜: ื•ื•ืขื’ืŸ 20% ืขืจื’ืขืจ ื•ื•ื™ ื ืึทืงืขื˜ ืžืขื˜ืึทืœ. ืกื™ืœื™ื•ื ืื•ืŸ ื•ื•ืขืึทื•ื•ื ืขื˜ ืžื™ื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ ืงื•ืง ื˜ืึทืงืข ื˜ืจื•ื™ืขืจื™ืง.

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

ืžื™ื˜ ืคื˜ืคึผ, ืืŸ ืื ื“ืขืจ ื˜ืงืคึผ-ื‘ืื–ื™ืจื˜ ืคึผืจืึธื˜ืึธืงืึธืœ, ืจืขื–ื•ืœื˜ืึทื˜ืŸ ื‘ื™ื™ึทื˜ืŸ. ืคืœืึทื ืึทืœ ืื•ืŸ ืงื•ื‘ืข-ืจืึธื•ื˜ืขืจ ื˜ืึธืŸ ื“ื™ ืึทืจื‘ืขื˜, ืึธื‘ืขืจ ืงืึทืœื™ืงืึธ, ืงืึทื ืึทืœ ืื•ืŸ ืกื™ืœื™ื•ื ื–ืขื ืขืŸ ืึท ื‘ื™ืกืœ ื”ื™ื ื˜ืขืจ ืื•ืŸ ื–ืขื ืขืŸ ื•ื•ืขื’ืŸ 10% ืกืœืึธื•ืขืจ ื•ื•ื™ ื ืึทืงืขื˜ ืžืขื˜ืึทืœ. WeaveNet ืื™ื– ื”ื™ื ื˜ืขืจ ื•ื•ื™ ืคื™ืœ ื•ื•ื™ 17%, ืึธื‘ืขืจ ื™ื ืงืจื™ืคึผื˜ื™ื“ WeaveNet ืื™ื– 40% ืคืึธืจื•ื™ืก ืคื•ืŸ ื™ื ืงืจื™ืคึผื˜ื™ื“ ืกื™ืœื™ื•ื.

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

ืžื™ื˜ SCP ืžื™ืจ ืงืขื ืขืŸ ื’ืœื™ื™ืš ื–ืขืŸ ื•ื•ื™ ืคื™ืœ SSH ืขื ืงืจื™ืคึผืฉืึทืŸ ืงืึธืก ืื•ื ื“ื–. ื›ึผืžืขื˜ ืึทืœืข CNIs ื˜ืึธืŸ ื’ื•ื˜, ืึธื‘ืขืจ WeaveNet ืื™ื– ืœืึทื’ื™ื ื’ ื”ื™ื ื˜ืขืจ ื•ื•ื™ื“ืขืจ. ืกื™ืœื™ื•ื ืื•ืŸ ื•ื•ืขืึทื•ื•ื ืขื˜ ืžื™ื˜ ืขื ืงืจื™ืคึผืฉืึทืŸ ื–ืขื ืขืŸ ื’ืขืจื™ื›ื˜ืœื™ ื“ื™ ืขืจื’ืกื˜ ืจืขื›ื˜ ืฆื• ื˜ืึธืคึผืœ ืขื ืงืจื™ืคึผืฉืึทืŸ (SSH + CNI).

ื“ืึธ ืื™ื– ืึท ืงื™ืฆืขืจ ื˜ื™ืฉ ืžื™ื˜ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

ืžื™ื˜ืœ ืงืึทื ืกืึทืžืฉืึทืŸ

ืื™ืฆื˜ ืœืึธื–ืŸ ืก ืคืึทืจื’ืœื™ื™ึทื›ืŸ ื•ื•ื™ CNI ืงืึทื ืกื•ืžื– ืจืขืกื•ืจืกืŸ ืื•ื ื˜ืขืจ ืฉื•ื•ืขืจ ืœืึธื•ื“ื– (ื‘ืขืฉืึทืก TCP ืึทืจื™ื‘ืขืจืคื™ืจืŸ, 10 ื’ื‘ืคึผืก). ืื™ืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ ื˜ืขืกืฅ ืžื™ืจ ืคืึทืจื’ืœื™ื™ึทื›ืŸ CNI ืžื™ื˜ ื ืึทืงืขื˜ ืžืขื˜ืึทืœ (ื’ืจื™ืŸ ืฉื•ืจื”). ืคึฟืึทืจ ืžื™ื˜ืœ ืงืึทื ืกืึทืžืฉืึทืŸ, ืœืึธื–ืŸ ืื•ื ื“ื– ื•ื•ื™ื™ึทื–ืŸ ืจื™ื™ืŸ ืงื•ื‘ืขืจื ืขื˜ืขืก (ืœื™ืœืึท ืฉื•ืจื”) ืึธืŸ CNI ืื•ืŸ ื–ืขืŸ ื•ื•ื™ ืคื™ืœืข ืขืงืกื˜ืจืข ืจืขืกื•ืจืกืŸ CNI ืงืึทื ืกื•ืžื–.

ืœืึธืžื™ืจ ืึธื ื”ื™ื™ื‘ืŸ ืžื™ื˜ ื–ื›ึผืจื•ืŸ. ื“ืึธ ืื™ื– ื“ื™ ื“ื•ืจื›ืฉื ื™ื˜ืœืขืš ื•ื•ืขืจื˜ ืคึฟืึทืจ ื‘ืึทืจืึทืŸ ืคื•ืŸ ื ืึธื•ื“ื– (ืขืงืกืงืœื•ื“ื™ื ื’ ื‘ืึทืคืขืจื– ืื•ืŸ ืงืึทืฉ) ืื™ืŸ ืžื‘ ื‘ืขืฉืึทืก ืึทืจื™ื‘ืขืจืคื™ืจืŸ.

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ื–ื›ึผืจื•ืŸ ืงืึทื ืกืึทืžืฉืึทืŸ

ืคืœืึทื ืึทืœ ืื•ืŸ ืงื•ื‘ืข ืจืึทื•ื˜ืขืจ ื’ืขื•ื•ื™ื–ืŸ ื•ื™ืกื’ืขืฆื™ื™ื›ื ื˜ ืจืขื–ื•ืœื˜ืึทื˜ืŸ - ื‘ืœื•ื™ื– 50 ืžืขื’ืื‘ื™ื™ื˜ืŸ. ืงืึทืœื™ืงืึธ ืื•ืŸ ืงืึทื ืึทืœ ื™ืขื“ืขืจ ื”ืึธื‘ืŸ 70. WeaveNet ืงืึทื ืกื•ืžื– ืงืœืืจ ืžืขืจ ื•ื•ื™ ื“ื™ ืื ื“ืขืจืข - 130 ืžืขื’ืื‘ื™ื™ื˜ืŸ, ืื•ืŸ ืกื™ืœื™ื•ื ื ื™ืฆื˜ ืึทื–ื•ื™ ืคื™ืœ ื•ื•ื™ 400.
ืื™ืฆื˜ ืœืึธื–ืŸ ืก ืงืึธื ื˜ืจืึธืœื™ืจืŸ ื“ื™ ืงืคึผื• ืฆื™ื™ื˜ ืงืึทื ืกืึทืžืฉืึทืŸ. ื ืึธื•ื˜ื•ื•ืขืจื“ื™: ื“ื™ ื“ื™ืึทื’ืจืึทืžืข ื•ื•ื™ื™ื–ื˜ ื ื™ืฉื˜ ืคึผืขืจืกืขื ื˜ื™ื“ื–ืฉื™ื–, ืึธื‘ืขืจ ืคึผื™ืคึผื™ืขื, ื“ืึธืก ืื™ื–, 38 ืคึผื™ืคึผื™ืขื ืคึฟืึทืจ "ื ืึทืงืขื˜ ืคึผืจืขืกืŸ" ืื™ื– 3,8%. ื“ืึธ ื–ืขื ืขืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ืงืคึผื• ืงืึทื ืกืึทืžืฉืึทืŸ

ืงืึทืœื™ืงืึธ, ืงืึทื ืึทืœ, ืคืœืึทื ืึทืœ ืื•ืŸ ืงื•ื‘ืข-ืจืึธื•ื˜ืขืจ ื–ืขื ืขืŸ ื–ื™ื™ืขืจ ืงืคึผื• ืขืคืขืงื˜ื™ื•ื• - ื‘ืœื•ื™ื– 2% ืžืขืจ ื•ื•ื™ ืงื•ื‘ืขืจื ืขื˜ืขืก ืึธืŸ CNI. WeaveNet ืœืึทื’ื– ื•ื•ื™ื™ึทื˜ ื”ื™ื ื˜ืขืจ ืžื™ื˜ ืึทืŸ ืขืงืกื˜ืจืข 5%, ื ืื›ื’ืขื’ืื ื’ืขืŸ ื“ื•ืจืš ืกื™ืœื™ื•ื ื‘ื™ื™ 7%.

ื“ืึธ ืื™ื– ืึท ืงื™ืฆืขืจ ืคื•ืŸ ืžื™ื˜ืœ ืงืึทื ืกืึทืžืฉืึทืŸ:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)

ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืคื•ืŸ

ื˜ืึทื‘ืœืข ืžื™ื˜ ืึทืœืข ืจืขื–ื•ืœื˜ืึทื˜ืŸ:

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ืึทืœื’ืขืžื™ื™ื ืข ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ

ืกืึธืฃ

ืื™ืŸ ื“ื™ ืœืขืฆื˜ืข ื˜ื™ื™ืœ ืื™ืš ื•ื•ืขืœ ืื•ื™ืกื“ืจื™ืงืŸ ืžื™ื™ืŸ ืกืึทื‘ื“ื–ืฉืขืงื˜ื™ื•ื• ืžื™ื™ื ื•ื ื’ ื•ื•ืขื’ืŸ ื“ื™ ืจืขื–ื•ืœื˜ืึทื˜ืŸ. ื’ืขื“ืขื ืงื˜ ืึทื– ื“ืขืจ ื‘ืขื ื˜ืฉืžืึทืจืง ื‘ืœื•ื™ื– ื˜ืขืกืฅ ื“ื™ ื˜ืจื•ืคึผื•ื˜ ืคื•ืŸ ืึท ืื™ื™ืŸ ืงืฉืจ ืื•ื™ืฃ ืึท ื–ื™ื™ืขืจ ืงืœื™ื™ืŸ ืงื ื•ื™ืœ (3 ื ืึธื•ื“ื–). ืขืก ืื™ื– ื ื™ืฉื˜ ืึทืคึผืœื™ื™ื– ืฆื• ื’ืจื•ื™ืก ืงืœืึทืกื˜ืขืจื– (<50 ื ืึธื•ื“ื–) ืึธื“ืขืจ ืคึผืึทืจืึทืœืขืœ ืงืึทื ืขืงืฉืึทื ื–.

ืื™ืš ืจืขืงืึธืžืขื ื“ื™ืจืŸ ื ื™ืฆืŸ ื“ื™ ืคืืœื’ืขื ื“ืข CNIs ื“ื™ืคึผืขื ื“ื™ื ื’ ืื•ื™ืฃ ื“ื™ ืกืฆืขื ืึทืจ:

  • ืฆื™ ืื™ืจ ื”ืึธื‘ืŸ ืื™ืŸ ื“ื™ื™ืŸ ืงื ื•ื™ืœ ื ืึธื•ื“ื– ืžื™ื˜ ื•ื•ื™ื™ื ื™ืง ืจืขืกื•ืจืกืŸ (ืขื˜ืœืขื›ืข ื’ื™ื’ืื‘ื™ื™ื˜ ืคื•ืŸ ื‘ืึทืจืึทืŸ, ืขื˜ืœืขื›ืข ืงืึธืจืขืก) ืื•ืŸ ืื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื“ืึทืจืคึฟืŸ ื–ื™ื›ืขืจื”ื™ื™ื˜ ืคึฟืขื™ึดืงื™ื™ื˜ืŸ - ืงืœื™ื™ึทื‘ืŸ ืคืœืึทื ืึทืœ. ื“ืึธืก ืื™ื– ืื™ื™ื ืขืจ ืคื•ืŸ ื“ื™ ืžืขืจืกื˜ ืคึผืจื™ื™ึทื–-ืขืคืขืงื˜ื™ื•ื• CNIs. ืื•ืŸ ืขืก ืื™ื– ืงืึทืžืคึผืึทื˜ืึทื‘ืึทืœ ืžื™ื˜ ืึท ื‘ืจื™ื™ื˜ ืคืึทืจืฉื™ื™ื“ื ืงื™ื™ึทื˜ ืคื•ืŸ ืึทืจืงืึทื˜ืขืงื˜ืฉืขืจื– (ืึทืžื“64, ืึธืจืขื, ืึทืจืž64, ืืื–"ื• ื•). ืื™ืŸ ืึทื“ื™ืฉืึทืŸ, ื“ืึธืก ืื™ื– ืื™ื™ื ืขืจ ืคื•ืŸ ืฆื•ื•ื™ื™ (ื“ื™ ืื ื“ืขืจืข ืื™ื– ืกื™ืœื™ื•ื) CNI ื•ื•ืึธืก ืงืขื ืขืŸ ืื•ื™ื˜ืึธืžืึทื˜ื™ืฉ ื‘ืึทืฉื˜ื™ืžืขืŸ ื“ื™ MTU, ืึทื–ื•ื™ ืื™ืจ ื˜ืึธืŸ ื ื™ื˜ ื”ืึธื‘ืŸ ืฆื• ืงืึทื ืคื™ื’ื™ืขืจ ืขืคึผืขืก. Kube-router ืื™ื– ืื•ื™ืš ืคึผืึทืกื™ืง, ืึธื‘ืขืจ ืขืก ืื™ื– ื ื™ืฉื˜ ื•ื•ื™ ื ืึธืจืžืึทืœ ืื•ืŸ ืื™ืจ ื•ื•ืขื˜ ื“ืึทืจืคึฟืŸ ืฆื• ืžืึทื ื™ื•ืึทืœื™ ืงืึทื ืคื™ื’ื™ืขืจ ื“ื™ MTU.
  • ืื•ื™ื‘ ื“ืืจืฃ ืขื ืงืจื™ืคึผื˜ ื“ื™ ื ืขืฅ ืคึฟืึทืจ ื–ื™ื›ืขืจืงื™ื™ึทื˜, ื ืขืžืขืŸ WeaveNet. ื“ื• ื–ืืœืกื˜ ื ื™ืฉื˜ ืคืึทืจื’ืขืกืŸ ืฆื• ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ื“ื™ MTU ื’ืจื™ื™ืก ืื•ื™ื‘ ืื™ืจ ื ื•ืฆืŸ ื“ื–ืฉืึทืžื‘ืึธื• ืจืึธืžืขืŸ, ืื•ืŸ ื’ืขื‘ืŸ ืขื ืงืจื™ืคึผืฉืึทืŸ ื“ื•ืจืš ืกืคึผืขืฆื™ืคื™ืฆื™ืจืŸ ืึท ืคึผืึทืจืึธืœ ื“ื•ืจืš ืึทืŸ ื™ื ื•ื•ื™ื™ืจืึทื ืžืขื ืึทืœ ื‘ื™ื™ึทื˜ืขื•ื•ื“ื™ืง. ืื‘ืขืจ ืขืก ืื™ื– ื‘ืขืกืขืจ ืฆื• ืคืึทืจื’ืขืกืŸ ื•ื•ืขื’ืŸ ืคืึธืจืฉื˜ืขืœื•ื ื’ - ื“ืึธืก ืื™ื– ื“ื™ ืคึผืจื™ื™ึทื– ืคื•ืŸ ืขื ืงืจื™ืคึผืฉืึทืŸ.
  • ืคืึทืจ ื ืึธืจืžืึทืœ ื ื•ืฆืŸ ืื™ืš ืจืขืงืึธืžืขื ื“ื™ืจืŸ ืงืึทืœื™ืงืึธ. ื“ืขื CNI ืื™ื– ื•ื•ื™ื™ื“ืœื™ ื’ืขื ื™ืฆื˜ ืื™ืŸ ืคืึทืจืฉื™ื“ืŸ ื“ื™ืคึผืœื•ื™ืžืึทื ื˜ ืžื›ืฉื™ืจื™ื ืคื•ืŸ Kubernetes (Kops, Kubespray, Rancher, ืืื–"ื• ื•). ื•ื•ื™ ืžื™ื˜ WeaveNet, ื–ื™ื™ืŸ ื–ื™ื›ืขืจ ืฆื• ืงืึทื ืคื™ื’ื™ืขืจ ื“ื™ MTU ืื™ืŸ ConfigMap ืื•ื™ื‘ ืื™ืจ ื ื•ืฆืŸ ื“ื–ืฉืึทืžื‘ืึธื• ืจืึธืžืขืŸ. ืขืก ืื™ื– ืึท ืžืึทืœื˜ื™-ืคืึทื ื’ืงืฉืึทื ืึทืœ ื’ืขืฆื™ื™ึทื’ ื•ื•ืึธืก ืื™ื– ืขืคืขืงื˜ื™ื•ื• ืื™ืŸ ื˜ืขืจืžื™ื ืขืŸ ืคื•ืŸ ืžื™ื˜ืœ ืงืึทื ืกืึทืžืฉืึทืŸ, ืคืึธืจืฉื˜ืขืœื•ื ื’ ืื•ืŸ ื–ื™ื›ืขืจื”ื™ื™ื˜.

ืื•ืŸ ืœืขืกืึธืฃ, ืื™ืš ืจืขืงืึธืžืขื ื“ื™ืจืŸ ืื™ืจ ืฆื• ื ืึธื›ืคืึธืœื’ืŸ ื“ื™ ืึทื ื˜ื•ื•ื™ืงืœื•ื ื’ ืกื™ืœื™ื•ื. ื“ืขืจ CNI ื”ืื˜ ืึท ื–ื™ื™ืขืจ ืึทืงื˜ื™ื•ื• ืžืึทื ืฉืึทืคึฟื˜ ื•ื•ืึธืก ืึทืจื‘ืขื˜ ืึท ืคึผืœืึทืฅ ืื•ื™ืฃ ื–ื™ื™ืขืจ ืคึผืจืึธื“ื•ืงื˜ (ืคึฟืขื™ึดืงื™ื™ื˜ืŸ, ืจื™ืกืึธืจืก ืกื™ื™ื•ื•ื™ื ื’ื–, ืคืึธืจืฉื˜ืขืœื•ื ื’, ื–ื™ื›ืขืจื”ื™ื™ื˜, ืงืœืึทืกื˜ืขืจื™ื ื’ ...) ืื•ืŸ ื–ื™ื™ ื”ืึธื‘ืŸ ื–ื™ื™ืขืจ ื˜ืฉื™ืงืึทื•ื•ืข ืคึผืœืึทื ื–.

Kubernetes Network Plugin (CNI) ื‘ืขื ื˜ืฉืžืึทืจืง ืจืขื–ื•ืœื˜ืึทื˜ืŸ ืื™ื‘ืขืจ 10 Gbps ื ืขืฅ (ื“ืขืจื”ื™ื™ึทื ื˜ื™ืงื˜: ืืคืจื™ืœ 2019)
ื•ื•ื™ืกื•ืึทืœ ื“ื™ืึทื’ืจืึทืžืข ืคึฟืึทืจ CNI ืกืขืœืขืงืฆื™ืข

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

ืœื™ื™ื’ืŸ ืึท ื‘ืึทืžืขืจืงื•ื ื’