ื ืืืืฅ. ืืจืึทื ืกื.: ืืขืจ ืึทืจืืืงื, ืืขืฉืจืืื ืืืจื ืึท SRE ืื ืืฉืขื ืืจ ืคืื ืืื ืงืขืืื, ืืืื ืืื ืืขืืึทื ืืืขืื ืื ืื ืขืจ ืืึทืืืฉ ืืื Kubernetes - ืืขืจ ืืขื ืื, ืื ืื ืืขืจืึทืงืฉืึทื ืคืื CRI, CNI ืืื kube-apiserver - ืืืึธืก ืืึทืคึผืึทื ื ืืืขื ืืขืจ ืืืืึทืืขืจ ืคึผืึธื ืืึทืจืฃ ืืืื ืึทืกืืื ื ืึทื IP ืึทืืจืขืก.
ืืืื ืขืจ ืคืื ืื ืืงืขืจืืืง ืืืืขืจืคืขื ืืฉื
ืืืขื ืืื ืขืจืฉืืขืจ ืกืืึทืจืืขื ืืจืืขืื ืืื Kubernetes, ืขืก ืืื ืืขืืืขื ื ืื ืืึธืจ ืงืืึธืจ ืคึฟืึทืจ ืืืจ ืืื ืคึผืื ืงื ืคึผืึธืืก ืืึทืงืืืขื ืืืืขืจ IP ืึทืืจืขืกืขืก. ืืคืืื ืืื ืึท ืคืืจืฉืืื ื ืคืื ืืื ืื ืืืื ืงืึทืืคึผืึธืื ืึทื ืฅ ืคืึทื ืืงืฉืึทื ื, ืขืก ืืื ืฉืืืขืจ ืฆื ืืืึทืืืฉืึทื ืืื ืืจืืขืื ืฆืืืึทืืขื. ืคึฟืึทืจ ืืืึทืฉืคึผืื, ืืื ืืขืืืืืกื ืืืึธืก CNI ืคึผืืืืื ืก ืืขื ืขื ืคึฟืึทืจ, ืึธืืขืจ ืืื ืืื ืงืืื ืืขืืึทื ืง ืืื ืคึผืื ืงื ืืื ืืขื ืขื ืืขืจืืคื. ืืขืจืืืขืจ, ืืื ืืึทืฉืืึธืกื ืฆื ืฉืจืืึทืื ืืขื ืึทืจืืืงื ืฆื ืืืืื ืืืืกื ืืืขืื ืื ืคืึทืจืฉืืื ื ืขืฅ ืงืึทืืคึผืึธืื ืึทื ืฅ ืืื ืืื ืืื ืึทืจืืขืื ืฆืืืึทืืขื ืืื ืึท Kubernetes ืงื ืืื, ืืืึธืก ืึทืืึทืื ืืขืืขืจ ืคึผืึธื ืฆื ืืึทืงืืืขื ืืืื ืืืืืขื ืข ืืื ืฆืืง IP ืึทืืจืขืก.
ืขืก ืืขื ืขื ืคืึทืจืฉืืืขื ืข ืืืขืื ืฆื ืึธืจืืึทื ืืืืจื ื ืขืืืืึธืจืงืื ื ืืื Kubernetes, ืคึผืื ืงื ืืื ืขืก ืืขื ืขื ืคืึทืจืฉืืืขื ืข ืจืื ืืืืข ืึธืคึผืฆืืขืก ืคึฟืึทืจ ืงืึทื ืืืื ืขืจื. ืืขื ืืืืกืืืืข ืืืขื ื ืืฆื
ืขืืืขืืข ืืงืขืจืืืง ืงืึทื ืกืขืคึผืก
ืงืึทื ืืืื ืขืจื ืืื ืื ื ืขืืืืึธืจืง: ืึท ืงืืจืฅ ืืืืขืจืืืืง
ืขืก ืืขื ืขื ืคืืืข ืืืกืืขืฆืืืื ื ืืืืกืืืืขืก ืืืืฃ ืืขืจ ืืื ืืขืจื ืขืฅ ืืืึธืก ืืขืจืงืืขืจื ืืื ืงืึทื ืืืื ืขืจื ืืืขืจืืขืื ืืื ืืขืืขืจ ืื ืืขืจืข ืืืืขืจ ืื ื ืขืฅ. ืืขืจืืืขืจ, ืืื ืืืขื ืืืืื ืืขืื ืึท ืืขื ืขืจืึทื ืืืืขืจืืืืง ืคืื ืื ืืจืื ื ืงืึทื ืกืขืคึผืก ืืื ืืึทืืจืขื ืขืฆื ืืื ืฆื ืืืื ืฆืืืึทื ื, ืืืึธืก ืื ืืืึทืืืื ืงืจืืืืืื ื ืึท ืืื ืืงืก ืืจืืง ืืื ืขื ืงืึทืคึผืกืึทืืืืืื ื ืคึผืึทืงืึทืืืฉืึทื. ืืขืืึทืืืก ืืขื ืขื ืืืืขืจืืขืืืคึผืขืจื, ืืื ื ืื ืืขืืข ืคืื โโืงืึทื ืืืื ืขืจ ื ืขืืืืึธืจืงืื ื ืืื ืคืืจืืื ื ืึท ืืึทืืื ืืขืจ ืึทืจืืืงื. ืืื ืงืก ืฆื ืขืืืขืืข ืกืคึผืขืฆืืขื ืื ืกืืืืคืึทื ืืื ืืืืืื ืืงืจืืื ืืืืกืืืืขืก ืืืขื ืืืื ืฆืืืขืฉืืขืื ืืื ืื.
ืงืึทื ืืืื ืขืจื ืืืืฃ ืืืื ืืึทืืขืืึธืก
ืืืื ืืืขื ืฆื ืึธืจืืึทื ืืืืจื ืงืึธืืื ืืงืึทืฆืืข ืืืจื IP ืึทืืจืขืกืขืก ืฆืืืืฉื ืงืึทื ืืืื ืขืจื ืคืืืกื ืืืง ืืืืฃ ืืขืจ ืืขืืืืงืขืจ ืืึทืืขืืึธืก ืื ืืืึทืืืื ืงืจืืืืืื ื ืึท ืืื ืืงืก ืืจืืง. ืคึฟืึทืจ ืืขื ืฆืืืขืง, ืืืืจืืืึทื ืืขืืืืกืขืก ืืขื ืขื ืืืฉืืคื ืืื Kubernetes (ืืื Docker)
ืึทืืข ืงืึทื ืืืื ืขืจื ืืืืฃ ืืขืจ ืืขืืืืงืขืจ ืืึทืืขืืึธืก ืืึธืื ืืืื ืกืืฃ ืคืื ืื ืืืขืื ืคืืจืืื ืื ืฆื ืึท ืืจืืง ืืืจื ืืืึธืก ืืื ืงืขื ืขื ืืืขืจืืขืื ืืื ืืขืืขืจ ืื ืืขืจืข ืืืจื IP ืึทืืจืขืกืขืก. ืื ืืื ืืงืก ืืจืืง ืืืื ืืื ืึทื IP ืึทืืจืขืก ืืื ืึทืงื ืืื ืึท ืืืืืืืื ืคึฟืึทืจ ืืืจืขืกืก ืคืึทืจืงืขืจ ืคืื ืื ืคึผืึธืืก ืืึทืฉืขืจื ืคึฟืึทืจ ืื ืืขืจืข ื ืึธืืื.
ืงืึทื ืืืื ืขืจื ืืืืฃ ืคืึทืจืฉืืืขื ืข ืืื ืืช
ืคึผืึทืงืึทื ืขื ืงืึทืคึผืกืืืึทืืืึธื ืืื ืืืื ืืืคึฟื ืืืึธืก ืึทืืึทืื ืงืึทื ืืืื ืขืจื ืืืืฃ ืคืึทืจืฉืืืขื ืข ื ืึธืืื ืฆื ืืืขืจืืขืื ืืื ืืขืืขืจ ืื ืืขืจืข ื ืืฆื IP ืึทืืจืขืกืขืก. ืืื ืคืืึทื ืึทื, ืืขืื ืึธืืึธืืืข ืืื ืคืึทืจืึทื ืืืืึธืจืืืขื ืคึฟืึทืจ ืืขื ืืขืืขืื ืืืื.
ืืื ืึท Kubernetes ืงื ืืื, ืคืืึทื ืึทื ืงืจืืืืฅ ืึท ืืืงืกืืึทื ืืืื ืืื ืืขืจืืืึทื ืืืงื ืื ืืึทืจืฉืจืื ืืืฉ ืืืืฃ ืืขืืขืจ ื ืึธืืข ืึทืงืึธืจืืื ืืื. ืืขืืขืจ ืคึผืึทืงืึทื ืืึทืฉืขืจื ืคึฟืึทืจ ืึท ืงืึทื ืืืื ืขืจ ืืืืฃ ืึท ืึทื ืืขืจืฉ ืืึทืืขืืึธืก ืคึผืึทืกืื ืืืจื ืื ืืืงืกืืึทื ืืืื ืืื ืืื ืขื ืงืึทืคึผืกืึทืืืืืื ืืื ืึท UDP ืคึผืึทืงืึทื. ืืื ืืขืจ ืืขืกืืื ืืืฉืึทื, ืื ื ืขืกืืขื ืคึผืึทืงืึทื ืืื ืืงืกืืจืึทืงืืื ืืื ืคืึธืจืืืขืจืืื ืฆื ืื ืืขืืขืื ืคึผืึธื.
ืืึทืืขืจืงืื ื: ืืึธืก ืืื ืืืืื ืืืื ืืืขื ืฆื ืึธืจืืึทื ืืืืจื ื ืขืฅ ืงืึธืืื ืืงืึทืฆืืข ืฆืืืืฉื ืงืึทื ืืืื ืขืจื.
ืืืึธืก ืืื CRI?
ืืืึธืก ืืื CNI?
ืึทืืึทืงืืืฉืึทื ืคืื ืกืืื ืขืฅ ืฆื ื ืึธืืื ืคึฟืึทืจ ืึทืกืืื ืื ื IP ืึทืืจืขืกืขืก ืฆื ืคึผืึธืืก
ืืื ื ืืขืืขืจ ืคึผืึธื ืืื ืึท ืงื ืืื ืืืื ืืึธืื ืึทื IP ืึทืืจืขืก, ืขืก ืืื ืืืืืืืง ืฆื ืขื ืฉืืจ ืึทื ืื ืึทืืจืขืก ืืื ืืื ืฆืืง. ืืึธืก ืืื ืึทืืฉืืืื ืืืจื ืึทืกืืื ืื ื ืืขืืขืจ ื ืึธืืข ืึท ืืื ืฆืืง ืกืืื ืขื, ืคึฟืื ืืืึธืก ืื ืคึผืึธืืก ืืืืฃ ืืขื ื ืึธืืข ืืขื ืขื ืืขืืึธืื ืึทืกืืื ื IP ืึทืืจืขืกืขืก.
ื ืึธืืข IPAM ืงืึธื ืืจืึธืืืขืจ
ืืืขื nodeipam
ืืืจืืืขืืื ืืขื ืืื ืึท ืคืึธื ืคึผืึทืจืึทืืขืืขืจ --controllers
ื Kubernetes ื ืึธืืข ืืื ืึทืกืืื ื ืึท ืคึผืึธืืกืืืจ ืืืขื ืขืก ืืื ืืืืืขืก ืจืขืืืกืืจืืจื ืืื ืืขื ืงื ืืื. ืฆื ืืืืฉื ืื ืคึผืึธืืกืืืจ ืคืื ื ืึธืืื, ืืืจ ืืึทืจืคึฟื ืฆื ืืขืจืขืืืกืืจืืจื ืืื ืืื ืืึทื ืจืขืจืขืืืกืืจืืจื ืืื, ืืื ืืึทืื ืฆืื ืขืืขื ืขื ืืขืจืื ืืขื ืฆื ืื ืงืืืขืจื ืขืืขืก ืงืึธื ืืจืึธื ืฉืืืืข ืงืึทื ืคืืืืขืจืืืฉืึทื. ืืืจ ืงืขื ืขื ืึทืจืืืกืืืืึทืื ืื ืคึผืึธืืกืืืจ ืคืื ืึท ื ืึธืืข ืืื ืื ืคืืืืขื ืืข ืืึทืคึฟืขื:
$ kubectl get no <nodeName> -o json | jq '.spec.podCIDR'
10.244.0.0/24
ืงืืืขืืขื, ืงืึทื ืืืื ืขืจ ืจืื ืืืืข ืืื CNI ืคึผืืืืื ืก: ืืื ืืึธืก ืึทืืข ืึทืจืืขื
ืกืงืขืืืฉืืืื ื ืึท ืคึผืึธื ืคึผืขืจ ื ืึธืืข ืื ืืืึทืืืื ืึท ืคึผืืึทืฅ ืคืื ืคึผืจืืคึผืขืจืึทืืึธืจื ืกืืขืคึผืก. ืืื ืืขื ืึธืคึผืืืืืื ื, ืืื ืืืขื ืคืึธืงืืก ืืืืื ืืืืฃ ืื ืืืึธืก ืืขื ืขื ืืืืึทื ืฉืืึทืืืช ืฆื ืืึทืฉืืขืืืงื ืึท ืคึผืึธื ื ืขืฅ.
ืกืงืขืืืฉืืืื ื ืึท ืคึผืึธื ืฆื ืึท ืืืืขืจ ื ืึธืืข ืืจืืืขืจื ืื ืคืืืืขื ืืข ืงืืื ืคืื ืืขืฉืขืขื ืืฉื:
FAQ:
ืื ืืขืจืึทืงืฉืึทื ืฆืืืืฉื ืงืึทื ืืืื ืขืจ ืจืื ืืืืข ืืื CNI ืคึผืืืืื ืก
ืืขืืขืจ ื ืขืฅ ืฉืคึผืืึทืืขืจ ืืื ืืืื ืืืืืขื ืข CNI ืคึผืืืืื. ืื ืจืื ืืืืข ืคืื โโืืขื ืงืึทื ืืืื ืขืจ ืืืืคื ืขืก ืฆื ืงืึทื ืคืืืืขืจ ืื ื ืขืฅ ืคึฟืึทืจ ืื ืคึผืึธื ืืืขื ืขืก ืกืืึทืจืฅ ืึทืจืืืฃ. ืืื ืืขื ืคืึทื ืคืื ืงืึทื ืืืื ืขืจ, ืื CNI ืคึผืืืืื ืืื ืืึธื ืืฉื ืืืจื ืื ืคึผืืืืื
ืืขืจืฆื, ืืขืืขืจ ืฉืคึผืืึทืืขืจ ืืื ืืืื ืืืืืขื ืข ืึทืืขื ื. ืขืก ืืื ืืื ืกืืึทืืืจื ืืืืฃ ืึทืืข Kubernetes ื ืึธืืื ืืื ืืื ืคืึทืจืึทื ืืืืึธืจืืืขื ืคึฟืึทืจ ืื ื ืขืฅ ืงืึทื ืคืืืืขืจืืืฉืึทื ืคืื ืคึผืึธืืก. ืืขืจ ืึทืืขื ื ืืื ืึธืืขืจ ืื ืงืืืืขื ืืื ืื CNI ืงืึทื ืคืืืืขืจ ืึธืืขืจ ืื ืืืคึผืขื ืืึทื ืืื ืงืจืืืืฅ ืขืก ืืืืฃ ืื ื ืึธืืข. ืื ืงืึธื ืคืื ืืขืืคึผืก ืื CRI ืคึผืืืืื ืฉืืขืื ืืืึธืก CNI ืคึผืืืืื ืฆื ืจืืคื.
ืืขืจ ืึธืจื ืคืื ืื CNI ืงืึทื ืคืืืืขืจืืืฉืึทื ืงืขื ืขื ืืืื ืงืึทืกืืึทืืืืื; ืืืจื ืคืขืืืงืืึทื ืขืก ืืื ืืื /etc/cni/net.d/<config-file>
. ืงื ืืื ืึทืืืื ืืกืืจืึทืืึธืจืก ืืขื ืขื ืืืื ืคืึทืจืึทื ืืืืึธืจืืืขื ืคึฟืึทืจ ืื ืกืืึธืืื ื CNI ืคึผืืืืื ืก ืืืืฃ ืืขืืขืจ ืงื ืืื ื ืึธืืข. ืืืืขืจ ืึธืจื ืืื ืืืื ืงืืกืืึธืืืืึทืืืข; ืคืขืืืงืืึทื ืืืขืืืืืึทืืขืจ - /opt/cni/bin
.
ืืืขื ืืืจ ื ืืฆื ืงืึทื ืืืื ืขืจื, ืื ืคึผืึทืืก ืคึฟืึทืจ ืื ืคึผืืืืื ืงืึทื ืคืืืืขืจืืืฉืึทื ืืื ืืื ืึทืจืืขืก ืงืขื ืขื ืืืื ืฉืืขืื ืืื ืื ืึธืคึผืืืืืื ื [plugins.ยซio.containerd.grpc.v1.criยป.cni]
ะฒ
ืืื ื ืืืจ ื ืืฆื ืคืืึทื ืึทื ืืื ืืื ืืืขืจ ื ืขืฅ ืฉืคึผืืึทืืขืจ, ืืึธืื ืืื ืื ืจืขืื ืึท ืืืกื ืืืขืื ืืึทืฉืืขืืืงื ืขืก:
- ืคืืึทื ื ืขืื (ืคืืึทื ื ืขื ืก ืืืืืึทื) ืืื ืืืืฉืึทืืืึทืื ืืื ืกืืึทืืืจื ืืื ืึท ืงื ืืื ืืื ืึท ืืึทืขืืึธื ืกืขื ืืื
install-cni
ืืืืื ืื ืงืึทื ืืืื ืขืจ . Install-cni
ืงืจืืืืฅCNI ืงืึทื ืคืืืืขืจืืืฉืึทื ืืขืงืข (/etc/cni/net.d/10-flannel.conflist
) ืืืืฃ ืืขืืขืจ ื ืึธืืข.- ืคืืึทื ื ืขืื ืงืจืืืืฅ ืึท ืืืงืกืืึทื ืืืื, ืจืืืจืืืื ื ืขืฅ ืืขืืึทืืึทืืึท ืคืื ืื ืึทืคึผื ืกืขืจืืืขืจ ืืื ืืึธื ืืืึธืจืก ืคึผืึธื ืืขืจืืืึทื ืืืงืื ืืขื. ืืื ืืื ืืขื ืขื ืืืฉืืคื, ืขืก ืืืกืืจืืืืืฅ ืจืืฅ ืฆื ืึทืืข ืคึผืึธืืก ืืืืขืจ ืื ืงื ืืื.
- ืื ืจืืฅ ืืึธืื ืคึผืึธืืก ืฆื ืืืขืจืืขืื ืืื ืืขืืขืจ ืื ืืขืจืข ืืืจื IP ืึทืืจืขืกืขืก.
ืคึฟืึทืจ ืืขืจ ืืืืืืื ืืื ืคึฟืึธืจืืึทืฆืืข ืืืขืื ืื ืึทืจืืขื ืคืื ืคืืึทื ืึทื, ืืื ืจืขืงืึธืืขื ืืืจื ื ืืฆื ืื ืืื ืงืก ืืื ืื ืกืืฃ ืคืื ืืขื ืึทืจืืืงื.
ืืึธ ืืื ืึท ืืืึทืืจืึทืืข ืคืื โโืื ืื ืืขืจืึทืงืฉืึทื ืฆืืืืฉื ืื Containerd CRI ืคึผืืืืื ืืื ืื CNI ืคึผืืืืื ืก:
ืืื ืืืจ ืงืขื ืขื ืืขื ืืืืื, ืื ืงืืืขืืขื ืจืืคื ืื Containerd CRI ืคึผืืืืื ืฆื ืฉืึทืคึฟื ืื ืคึผืึธื, ืืืึธืก ืืึทื ืจืืคื ืื CNI ืคึผืืืืื ืฆื ืงืึทื ืคืืืืขืจ ืื ืคึผืึธื ื ืขืฅ. ืืื ืืื ืึทืืื, ืื ื ืขืฅ ืฉืคึผืืึทืืขืจ ืก CNI ืคึผืืืืื ืจืืคื ืื ืืขืจืข ืืึทืจืฅ CNI ืคึผืืืืื ืก ืฆื ืงืึทื ืคืืืืขืจ ืคืึทืจืฉืืื ืึทืกืคึผืขืงืฅ ืคืื ืื ื ืขืฅ.
ืื ืืขืจืึทืงืฉืึทื ืฆืืืืฉื CNI ืคึผืืืืื ืก
ืขืก ืืขื ืขื ืคืึทืจืฉืืื CNI ืคึผืืืืื ืก ืืืขืืขื ืก ืึทืจืืขื ืืื ืฆื ืืขืืคึฟื ืฉืืขืื ื ืขืฅ ืงืึธืืื ืืงืึทืฆืืข ืฆืืืืฉื ืงืึทื ืืืื ืขืจื ืืืืฃ ืืขืจ ืืึทืืขืืึธืก. ืืขืจ ืึทืจืืืงื ืืืขื ืืืกืงืืืืจื ืืจืืึท ืคืื ืืื.
CNI ืคึผืืืืื ืคืืึทื ืึทื
ืืืขื ื ืืฆื ืคืืึทื ืึทื ืืื ืึท ื ืขืฅ ืฉืคึผืืึทืืขืจ, ืื Containerd CRI ืงืึธืืคึผืึธื ืขื ื ืจืืคื /etc/cni/net.d/10-flannel.conflist
.
$ cat /etc/cni/net.d/10-flannel.conflist
{
"name": "cni0",
"plugins": [
{
"type": "flannel",
"delegate": {
"ipMasq": false,
"hairpinMode": true,
"isDefaultGateway": true
}
}
]
}
ืื ืคืืึทื ืึทื ืงื ื ืคึผืืืืื ืึทืจืืขื ืืื ืงืึทื ืืืฉืึทื ืืงืฉืึทื ืืื ืคืืึทื ื ืขืื. ืืขืฉืึทืก ืกืืึทืจืืึทืคึผ, ืคืืึทื ื ืขืื ืจืืืจืืืื ืคึผืึธืืกืืืจ ืืื ืื ืืขืจืข ื ืขืฅ-ืคึฟืึทืจืืื ืืขื ืข ืืขืืึทืืืก ืคืื ืื ืึทืคึผื ืกืขืจืืืขืจ ืืื ืกืึทืืืขืก ืืื ืฆื ืึท ืืขืงืข /run/flannel/subnet.env
.
FLANNEL_NETWORK=10.244.0.0/16
FLANNEL_SUBNET=10.244.0.1/24
FLANNEL_MTU=1450
FLANNEL_IPMASQ=false
ืื ืคืืึทื ืึทื ืงื ื ืคึผืืืืื ื ืืฆื ืืึทืื ืคึฟืื /run/flannel/subnet.env
ืฆื ืงืึทื ืคืืืืขืจ ืืื ืจืืคื ืื CNI ืืจืืง ืคึผืืืืื.
CNI ืคึผืืืืื ืืจืืง
ืืขื ืคึผืืืืื ืืื ืืขืจืืคื ืืื ืื ืคืืืืขื ืืข ืงืึทื ืคืืืืขืจืืืฉืึทื:
{
"name": "cni0",
"type": "bridge",
"mtu": 1450,
"ipMasq": false,
"isGateway": true,
"ipam": {
"type": "host-local",
"subnet": "10.244.0.0/24"
}
}
ืืืขื ืืขืจืืคื ืคึฟืึทืจ ืื ืขืจืฉืืขืจ ืืึธื, ืขืก ืงืจืืืืฅ ืึท ืืื ืืงืก ืืจืืง ืืื ยซnameยป: ยซcni0ยป
, ืืืึธืก ืืื ืืขืืืืื ืืื ืื ืงืึธื ืคืืืืจืึทืืืึธื. ืืขืจื ืึธื, ืึท ืื ืคึผืึธืจ ืืื ืืืฉืืคื ืคึฟืึทืจ ืืขืืขืจ ืคึผืึธื. ืืืื ืกืืฃ ืคืื ืขืก ืืื ืงืึธื ื ืขืงืืขื ืฆื ืื ื ืขืฅ ื ืึธืืขื ืคืื ืื ืงืึทื ืืืื ืขืจ, ืื ืื ืืขืจืข ืืื ืึทืจืืึทื ืืขืจืขืื ื ืืื ืื ืืื ืืงืก ืืจืืง ืืืืฃ ืืขืจ ืืึทืืขืืึธืก ื ืขืฅ.
ื ืึธื ืืึทืฉืืขืืืงื ืื ืืืขืื ืคึผืึธืจ, ืื ืืจืืง ืคึผืืืืื ืจืืคื ืื ืืึทืืขืืึธืก-ืืืืข IPAM CNI ืคึผืืืืื. ืื IPAM ืคึผืืืืื ืืืคึผ ืงืขื ืขื ืืืื ืงืึทื ืคืืืืขืจื ืืื ืื CNI ืงืึทื ืคืืืืขืจืืืฉืึทื ืืืึธืก ืื CRI ืคึผืืืืื ื ืืฆื ืฆื ืจืืคื ืื ืคืืึทื ืึทื ืงื ื ืคึผืืืืื.
ืืึธืกื-ืืืืข IPAM CNI ืคึผืืืืื ืก
ืืจืืง CNI ืจืืคื
{
"name": "cni0",
"ipam": {
"type": "host-local",
"subnet": "10.244.0.0/24",
"dataDir": "/var/lib/cni/networks"
}
}
ืืึธืกื-ืืืืข IPAM ืคึผืืืืื (IP Aืืืจืขืกืก Mืึทื ืึทืืขืืขื ื - ืืคึผ ืึทืืจืขืก ืคืึทืจืืืึทืืืื ื) ืงืขืจื ืื IP ืึทืืจืขืก ืคึฟืึทืจ ืืขื ืงืึทื ืืืื ืขืจ ืคึฟืื ืื ืกืืื ืขื ืืื ืกืืึธืจื ืื ืึทืืึทืงืืืืื IP ืืืืฃ ืืขืจ ืืึทืืขืืึธืก ืืื ืื ืืืขืืืืืึทืืขืจ ืกืคึผืขืกืืคืืขื ืืื ืื ืึธืคึผืืืืืื ื dataDir
- /var/lib/cni/networks/<network-name=cni0>/<ip>
. ืืขืจ ืืขืงืข ืึผืืื ืื ID ืคืื ืืขื ืงืึทื ืืืื ืขืจ ืฆื ืืืึธืก ืื IP ืึทืืจืขืก ืืื ืึทืกืืื ื.
ืืืขื ืืืจ ืจืืคื ืืขื ืืึทืืขืืึธืก-ืืืืข IPAM ืคึผืืืืื, ืขืก ืงืขืจื ืื ืคืืืืขื ืืข ืืึทืื:
{
"ip4": {
"ip": "10.244.4.2",
"gateway": "10.244.4.3"
},
"dns": {}
}
ืงืืฆืขืจ
Kube-controller-manager ืึทืกืืื ื ืึท ืคึผืึธืืกืืืจ ืฆื ืืขืืขืจ ื ืึธืืข. ืื ืคึผืึธืืก ืคืื ืืขืืขืจ ื ืึธืืข ืืึทืงืืืขื IP ืึทืืจืขืกืขืก ืคึฟืื ืื ืึทืืจืขืก ืคึผืืึทืฅ ืืื ืื ืึทืืึทืงืืืืื ืคึผืึธืืกืืืจ ืงืืื. ืืื ื ืื ืคึผืึธืืกืืืจืก ืคืื ืื ื ืึธืืื ืืึธื ื ืื ืึธืืืืขืจืืึทืคึผ, ืึทืืข ืคึผืึธืืก ืืึทืงืืืขื ืืื ืฆืืง IP ืึทืืจืขืกืขืก.
ืื Kubernetes ืงื ืืื ืึทืืืื ืืกืืจืึทืืึธืจ ืงืึทื ืคืืืืขืจ ืืื ืื ืกืืึธืื ืื ืงืืืขืืขื, ืงืึทื ืืืื ืขืจ ืจืื ืืืืข, ื ืขืฅ ืฉืคึผืืึทืืขืจ ืึทืืขื ื, ืืื ืงืึทืคึผืื ืื CNI ืคึผืืืืื ืก ืฆื ืืขืืขืจ ื ืึธืืข. ืืขืฉืึทืก ืกืืึทืจืืึทืคึผ, ืืขืจ ื ืขืฅ ืฉืคึผืืึทืืขืจ ืึทืืขื ื ืืืฉืขื ืขืจืืืฅ ืึท CNI ืงืึทื ืคืืืืขืจืืืฉืึทื. ืืืขื ืึท ืคึผืึธื ืืื ืกืงืขืืืฉืืื ืฆื ืึท ื ืึธืืข, ืื ืงืืืขืืขื ืจืืคื ืื CRI ืคึผืืืืื ืฆื ืฉืึทืคึฟื ืขืก. ืืขืจื ืึธื, ืืืื ืงืึทื ืืืื ืขืจื ืืื ืืขื ืืฆื, ืื Containerd CRI ืคึผืืืืื ืจืืคื ืื CNI ืคึผืืืืื ืกืคึผืขืกืืคืืขื ืืื ืื CNI ืงืึทื ืคืืืืขืจ ืฆื ืงืึทื ืคืืืืขืจ ืื ื ืขืฅ ืคืื ืื ืคึผืึธื. ืืื ืึท ืจืขืืืืืึทื, ืื ืคึผืึธื ื ืขืื ืึทื IP ืึทืืจืขืก.
ืขืก ืืึธื ืืืจ ืืขื ืืืขื ืขืืืขืืข ืืึธื ืฆื ืคึฟืึทืจืฉืืืื ืึทืืข ืื ืกืึทืืึทืืืื ืืื ื ืืึทื ืกืื ืคืื ืึทืืข ืื ืื ืืขืจืึทืงืฉืึทื ื. ืืื ืืึธืคึฟื ืึทื ืื ืืขืจืคืึทืจืื ื ืืืขื ืืขืืคึฟื ืืืจ ืืขืกืขืจ ืคึฟืึทืจืฉืืืื ืืื Kubernetes ืึทืจืืขื. ืืืื ืืื ืืื ืคืึทืืฉ ืืืขืื ืขืคึผืขืก, ืืืืข ืงืึธื ืืึทืงื ืืืจ ืืืืฃ
ืจืขืคึฟืขืจืขื ืฆื
ืงืึทื ืืืื ืขืจื ืืื ื ืขืฅ
ื ืืืืขืจืืืืง ืคืื ืงืึทื ืืืื ืขืจ ื ืขืืืืึธืจืงืื ื ืืขืืืกืืืคืืืื ื ืงืึทื ืืืื ืขืจ ื ืขืืืืึธืจืงืื ื
ืืื ืืื ืคืืึทื ืึทื ืึทืจืืขื?
ืคืืึทื ืึทื ื ืขืืืืึธืจืงืื ื ืืขืืืกืืืคื ืงืืืขืจื ืขืืขืก ืืื ืคืืึทื ืึทื - ืคึฟืึทืจืฉืืืื ืื ื ืขืืืืึธืจืงืื ื
CRI ืืื CNI
ืคึผืก ืคืื ืืืืขืจืืขืฆืขืจ
ืืืืขื ืขื ืืืื ืืืืฃ ืืื ืืืขืจ ืืืึธื:
- ยซ
ืงืึทืืืงืึธ ืคึฟืึทืจ ื ืขืืืืึธืจืงืื ื ืืื Kubernetes: ืืงืืื ืืื ืึท ืืืกื ืืขืจืคืึทืจืื ื "; - "ืึทื ืืืืืกืืจืึทืืขื ืืืื ืฆื ื ืขืืืืึธืจืงืื ื ืืื ืงืืืขืจื ืขืืขืก":
ืืืืื 1 ืืื 2 (ื ืขืฅ ืืึธืืขื, ืึธืืืืขืจืืื ื ืขืืืืึธืจืงืก) ,ืืืื 3 (ืกืขืจืืืืก ืืื ืคืึทืจืงืขืจ ืคึผืจืึทืกืขืกืื ื) ; - ยซ
Container Networking Interface (CNI) - ื ืขืฅ ืฆืืืื ื ืืื ื ืึธืจืืึทื ืคึฟืึทืจ ืืื ืืงืก ืงืึทื ืืืื ืขืจื '.
ืืงืืจ: www.habr.com