Kubernetes的收集模型基于IP-per-Pod,每个Pod都被分配一个独一的IP地点,这使得Pod之间可能在集群外部直接经由过程IP停止通信。
效劳(Service)是Kubernetes顶用于拜访Pod的一种抽象。Service经由过程虚拟IP(VIP)将客户端恳求负载均衡到后端的Pods。
Flannel是一个简单的覆盖收集插件,它经由过程VXLAN技巧实现Pod之间的跨节点通信。
Calico是一个基于BGP的路由跟战略管理东西,实用于大年夜型集群,供给富强的收集战略支撑。
apiVersion: kubenetwork.k8s.io/v1
kind: Pod
metadata:
name: flannel-pod
spec:
containers:
- name: flannel
image: flannel
command:
- /bin/sh
- -c
- 'flanneld --ip-masq & sleep infinity'
apiVersion: kubenetwork.k8s.io/v1
kind: NetworkPolicy
metadata:
name: deny-all
spec:
podSelector: {}
policyTypes:
- Ingress
- Egress
收集战略用于把持Pod之间的通信,它定义了哪些通信是被容许的,哪些是被拒绝的。
apiVersion: networking.k8s.io/v1
kind: NetworkPolicy
metadata:
name: allow-icp
spec:
podSelector:
matchLabels:
app: icp
policyTypes:
- Ingress
- Egress
kubectl exec
进入Pod外部,履行ip route
命令检查路由表。cat /etc/resolv.conf
检查DNS效劳器地点,实验在Pod内利用nslookup
命令剖析外部域名。kubectl get svc
检查Service的IP地点、端口及关联的Endpoint能否正常。kubectl get pods -n kube-system grep kube-proxy
检查kube-proxy Pod能否正常运转。CNI插件是实现Kubernetes收集设置的关键组件,抉择合适的CNI插件可能进步收集机能跟牢固性。
公道设置收集战略,可能保证集群的保险性。
对Kubernetes集群的收集停止监控跟日记记录,可能帮助疾速定位跟处理成绩。
经由过程以上内容,你可能对Kubernetes集群收集设置有一个单方面的懂得。在现实过程中,碰到成绩时,可能结合现真相况跟本文中的技能停止排查跟处理。