k8s 중급001_Pod 네트워크01_CNI 플러그인01_플러그인 선택
5514 단어 kubernetes_중급
클러스터를 구축하기 전에 클러스터의 배포 환경에 따라 CNI 플러그인을 선택해야 합니다.
1. 소개:
구성:/etc/cni/net.d/10-flannel.conflist, 네트워크 정보 설정은kubeadm 설정에 저장합니다
플러그인:/opt/cni/bin/flannel
flannel 전체 구성을 보려면 다음과 같이 하십시오.
[root@k8s-ha-master02 ~]# kubectl edit cm kube-flannel-cfg -n kube-system
# Please edit the object below. Lines beginning with a '#' will be ignored,
# and an empty file will abort the edit. If an error occurs while saving this file will be
# reopened with the relevant failures.
#
apiVersion: v1
data:
cni-conf.json: |
{
"name": "cbr0",
"cniVersion": "0.3.1",
"plugins": [
{
"type": "flannel",
"delegate": {
"hairpinMode": true,
"isDefaultGateway": true
}
},
{
"type": "portmap",
"capabilities": {
"portMappings": true
}
}
]
}
net-conf.json: |
{
"Network": "10.244.0.0/16",
"Backend": {
"Type": "vxlan"
}
}
kind: ConfigMap
metadata:
annotations:
kubectl.kubernetes.io/last-applied-configuration: |
{"apiVersion":"v1","data":{"cni-conf.json":"{
\"name\": \"cbr0\",
\"cniVersion\": \"0.3.1\",
\"plugins\": [
{
\"type\": \"flannel\",
\"delegate\": {
\"hairpinMode\": true,
\"isDefaultGateway\": true
}
},
{
\"type\": \"portmap\",
\"capabilities\": {
\"portMappings\": true
}
}
]
}
","net-conf.json":"{
\"Network\": \"10.244.0.0/16\",
\"Backend\": {
\"Type\": \"vxlan\"
}
}
"},"kind":"ConfigMap","metadata":{"annotations":{},"labels":{"app":"flannel","tier":"node"},"name":"kube-flannel-cfg","namespace":"kube-system"}}
creationTimestamp: "2020-03-11T09:00:10Z"
labels:
app: flannel
tier: node
name: kube-flannel-cfg
namespace: kube-system
resourceVersion: "7528"
selfLink: /api/v1/namespaces/kube-system/configmaps/kube-flannel-cfg
uid: 372fd042-e710-4c8d-89cf-2c6aea5ec2d6
2. CNI 플러그인 유형
흔히 볼 수 있는 플러그인은 flannel,Calico,WeaveNet,midonet,Contiv와 공유 클라우드 업체가 제공하는 CNI 플러그인, 예를 들어 Amazon VPC,Aliyun Terway 등이 있다.
2.1 Overlay 플러그인 - 가상화 환경
프라이빗 클라우드 openstack, 공유 클라우드 및 VMWare와 같습니다.
Hypervisor01과 Hypervisor02가 동일한 LAN에 있음
Hypervisor01:vmware fusion-NAT
[root@k8s-ha-master02 ~]# arp | grep -v 172
Address HWtype HWaddress Flags Mask Iface
k8s-ha-vip ether 00:50:56:25:63:38 C ens34
10.244.2.0 ether 46:e6:cb:45:b0:bb CM flannel.1
k8s-ha-master01 ether 00:50:56:3b:28:5f C ens34
10.244.4.0 ether 2a:a6:bd:43:79:29 CM flannel.1
10.244.3.0 ether e2:1a:a6:2d:05:3a CM flannel.1
k8s-node02 ether 00:50:56:2b:24:a8 C ens34
k8s-ha-master03 ether 00:50:56:25:63:38 C ens34
10.244.1.7 ether 22:52:b3:8f:a1:bb C cni0
10.244.0.0 ether 7a:97:6f:d0:e8:8f CM flannel.1
k8s-node01 ether 00:50:56:2f:61:ef C ens34
xiliuyaodeMBP ether 8c:85:90:59:f6:33 C ens34
Hypervisor02:vmware workstation-NAT
[root@bogon dist]# arp
? (192.168.43.149) at 8c:85:90:59:f6:33 [ether] on ens34
xiliuyaodeMBP (192.168.43.68) at 8c:85:90:59:f6:33 [ether] on ens34
gateway (192.168.43.1) at a8:9c:ed:f2:4b:a6 [ether] on ens34
맥 라디오를 통해 알 수 있는 세 가지는 다음과 같다.
요약: 하이퍼바이저 vm 간 데이터 링크 계층 통신 제한
Overlay 플러그인 선택:
제한이 적어 Underlay 플러그인:Calica-bgp,flannel-hostgw,sriov
이점: