calico配置 BGP Peers
来源:互联网 发布:qt软件怎么样 编辑:程序博客网 时间:2024/05/21 10:06
calico配置 BGP Peers
本文档主要描述使用calicoctl 来管理 BGP. 主要针对在私有云上部署calico的用户,使calico跟底层基础架构进行peer。
包含以下四个方面的配置:
全局默认 AS 号
node-to-node 全互联
全局 BGP Peers
指定节点BGP Peers
概念
全局默认 AS 号就是当calico节点没有明确指定AS号时,即是你所有的calico node节点使用同一个AS号。
node-to-node 全互联就是所有 Calico node 自动跟网络中其他calico node节点进行BGP peer。默认开启node-to-node 全互联, node-to-node 全互联适应用小规模部署以及calico node节点在同一个2层网络。推荐关闭node-to-node 全互联,指定节点间的BGP Peer。
指定BGP peers 可配置成全局的或者部分节点间.
一个全局 BGP peer 就是一个跟网络中所有节点peer 的BGP agent. 典型用例就是当中规模部署的时候,所有在同一个二层网络的Calico node节点都跟同一个Route Reflector (或一组 Route Reflector)配对,此处的Route Reflector就是一个全局BGP peer。
大规模部署的时候, 有多种网络拓扑可选。例如在AS per Rack model 里, 每个 Calico node节点 跟在ToR交换机上的Route Reflector配对。也就是说机架上的每个Calico node节点跟ToR Route Reflector配置成指定node的BGP peers模式。
配置默认node节点 AS 号
当创建calico node的时候,可以指定 AS 号。如果没有指定,使用默认的全局AS号。
可使用calicoctl config set asNumber 命令来配置全局的AS号. 若没有指定,默认的 AS 号是64512(2.0.0版本以前默认是64511)。
如果你所有的calico node节点都是同一个AS号,当你需要使用一个不同的 AS number(例如,当跟一个边界路由器进行配对时,以及中规模,大规模部署的时候需要自定义网络拓扑的时候),这时候就需要修改AS number
Example
配置默认 AS number 为 64513, 运行如下calicoctl 命令在任意一个节点:
$ calicoctl config set asNumber 64513
查看当前默认的AS number
$ calicoctl config get asNumber
64513
关闭 node-to-node BGP 全互联
当你需要自定义网络拓扑图的时候, 使用命令calicoctl config set nodeToNodeMesh 关闭node-to-node BGP 全互联。
如果你最开始就有计划自定义网络拓扑,建议最开始部署网络的时候就关闭node-to-node BGP 全互联。
如果你从 node-to-node BGP 全互联网络拓扑升级为其他网络拓扑模型(例如使用一组router reflector 来提高网络的性能), 为保证服务的连续性在关闭node-to-node BGP 全互联前就应该配置成合适的网络拓扑。
Example
关闭 BGP node-to-node 全互联,运行如下calicoctl 命令在任意一个节点:
$ calicoctl config set nodeToNodeMesh off
开启 BGP node-to-node 全互联,运行如下calicoctl 命令在任意一个节点:
$ calicoctl config set nodeToNodeMesh on
获取当前BGP node-to-node 全互联模式的状态
$ calicoctl config get nodeToNodeMesh
on
配置全局 BGP peer
有两种场景需要配置全局BGP peer
(1)添加一个边界路由器到 node-to-node 全互联模式里
(2) 当配置 route reflectors 来提高集群的规模的时候. 每一个 Calico node会跟每一个Route Reflector进行配对并关闭node-to-node 全互联。
Example
添加一个IP 为 192.20.30.40 AS number 为 64567的全局 BGP peer。运行以下命令在任意node上:
$ cat << EOF | calicoctl create -f -
apiVersion: v1
kind: bgpPeer
metadata:
peerIP: 192.20.30.40
scope: global
spec:
asNumber: 64567
EOF
删除 IP 为 192.20.30.40的全局 BGP peer (AS number 可以不必提供) ,运行以下命令在任意node上:
$ calicoctl delete bgpPeer 192.20.30.40 --scope=global
查看集群当前全局BGP peers,运行以下命令在任意node上:
$ calicoctl get bgpPeer --scope=global
SCOPE PEERIP NODE ASN
global 192.20.30.40 64567
配置指定节点的 BGP peer
常用在AS per Rack model 和AS per Compute Server model 两种模型中。
Example
添加IP 为 aa:bb::ff AS number 为64514的BGP peer,跟“node1”配对, 运行以下命令在任意node上:
$ cat << EOF | calicoctl create -f -
apiVersion: v1
kind: bgpPeer
metadata:
peerIP: aa:bb::ff
scope: node
node: node1
spec:
asNumber: 64514
EOF
删除IP 为 aa:bb::ff(AS number 不必提够), 配对 “node1”的BGP peer, 运行以下命令在任意node上:
$ calicoctl delete bgpPeer aa:bb::ff --scope=node --node=node1
查看当前集群所有的跟 “node1”配对的指定节点BGP Peers, 运行以下命令在任意node上:
$ calicoctl get bgpPeer --node=node1
SCOPE PEERIP NODE ASN
node aa:bb::ff node1 64514
查看 BGP peers的状态
查看当前节点的所有BGP peer信息,使用calicoctl node status 命令. 包括node-to-node 全互联的peer信息, 配置的全局 peer信息以及指定node节点的 peers信息.
Example
查看“node1”节点的所有BGP peers信息, 在node1上运行以下命令:
$ sudo calicoctl node status
Calico process is running.
IPv4 BGP status
+--------------+-------------------+-------+----------+-------------+
| PEER ADDRESS | PEER TYPE | STATE | SINCE | INFO |
+--------------+-------------------+-------+----------+-------------+
| 172.17.8.102 | node-to-node mesh | up | 23:30:04 | Established |
| 10.20.30.40 | global | start | 16:28:38 | Connect |
| 192.10.0.0 | node specific | start | 16:28:57 | Connect |
+--------------+-------------------+-------+----------+-------------+
IPv6 BGP status
+--------------+-------------------+-------+----------+-------------+
| PEER ADDRESS | PEER TYPE | STATE | SINCE | INFO |
+--------------+-------------------+-------+----------+-------------+
| aa:bb::ff | node-to-node mesh | up | 16:17:26 | Established |
+--------------+-------------------+-------+----------+-------------+
- calico配置 BGP Peers
- calico配置 BIRD 作为 BGP Route Reflector
- BGP配置
- BGP 配置
- 使用Calico配置Docker网络
- BGP配置之BGP管理距离
- BGP消息类型及配置BGP
- bgp基本配置命令
- BGP基本配置与总结
- 【路由学习】BGP配置流程
- BGP反射器配置-笔记
- OSPF和bgp配置实例
- BGP配置命令之bgp log-neighbor-changes
- BGP
- bgp
- bgp
- BGP
- BGP
- Ubuntu16.04的MongoDB安装
- MyEclipse+Tomcat+MAVEN+SVN项目完整环境搭建
- Facebook Workplace 工作传讯应用或推免费版
- 微信公众平台开发入门到实战开发视频教程(Java+PHP)
- 5.单例模式与多线程
- calico配置 BGP Peers
- HDU1068 Girls and Boys(最大独立集)
- 良心发现?Win10将主动控制后台软件来省电
- SecureCRT&SecureFX(二):SecureCRT&SecureFX的简单操作教程
- github的几种加文件的方法
- HDU 1566 Color the ball
- 输入两个正整数m和n,求其最大公约数和最小公倍数
- 面向对象的陷阱——非静态内部类的陷阱
- SSM框架——详细整合教程(Spring+SpringMVC+MyBatis)