热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

K8S网络插件calicoBGPReflector

1、calicoctl客户端工具calicoctl管理工具能够与calicodatastore进行交互,用于管理calico系统的各种资源。获取地址:https:github.co

1、calicoctl客户端工具

calicoctl管理工具能够与calico datastore进行交互,用于管理calico系统的各种资源。

获取地址:https://github.com/projectcalico/calicoctl/releases

[root@kube-master01 calico]# mv calicoctl-linux-amd64 /usr/bin

[root@kube-master01 calico]# chmodd +x /usr/bin/calicoctl 

也可以应用和编辑calico相关的资源

如查看POD网段使用情况:

2、BGP Reflector

默认设置下,所有节点均为对等节点,相互交换路由信息,在网络规模较小时影响不大,但是当网络规模扩大,一个节点 的路由会广播到其他所有节点,会造成性能瓶颈。

 

BGP Reflector可以将节点设置为BGP Reflector,各节点只需和这个节点建立BGP对等体,相互通告路由,大量减少通告路由。

2.1、配置反射器

如将kube-node01作为BGP Reflector

配置BGP Reflector: 编辑calico Node资源

apiVersion: projectcalico.org/v3
kind: Node
metadata:
labels:
route-reflector: true #标签,后面的bgppeer根据该标签选择,bgp Reflector
name: kube-node01 #节点名城
spec:
bgp:
ipv4Address: 10.0.2.201/24 #node节点IP
ipv4IPIPTunnelAddr: 10.200.2.0 #tunl0接口ip
routeReflectorClusterID: 1.1.1.1 #反射器标志

View Code

 配置BPGPeer,同一BGP路由集群中的各节点,都需要成为Reflector的对等节点。

kind: BGPPeer
apiVersion: projectcalico.org/v3
metadata:
name: bgppeer
spec:
nodeSelector: all() #所有节点
peerSelector: route-reflector=="true"

View Code

[root@kube-master01 calico]# calicoctl apply -f node.yaml

[root@kube-master01 calico]# cat bgppeer.yaml

可以看到,每个节点与kube-node01(10.0.2.201)都建立了对等体关系

2.2、配置了BGP Reflector和BGPPeer,可以将原来的node-to-node的网络对等关系关闭,默认是开启的

apiVersion: projectcalico.org/v3
kind: BGPConfiguration
metadata:
name: default
spec:
logSeverityScreen: Info #日志级别
nodeToNodeMeshEnabled: false #关闭默认的node-to-node网络
asNumber: 64000 #AS ID

View Code

[root@kube-master01 calico]# calicoctl apply -f default-bgpconfiguration.yaml  

看到其余节点只与kube-node01建立了对等关系

3、检查路由和访问

路由和访问均正常

由于只配置了一个BGP Reflector,这个节点如果出现异常将导致节点到其他节点POD网络的路由消失,例如关闭kube-node01后,

因此最好根据规模,配置两个以上的BGP Reflector,保证高可用

 

 

 



推荐阅读
author-avatar
谢丹逝梦
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有