分类目录归档:ACI

ACI安装python SDK

安装ACI SDK之前需要准备

Python 2.7,easy_install,pip,virtualenv,SDK包

virtualenv这个玩意不是必须的,但是ACI版本一直在升级,不同版本的SDK不一样,这个比较烦

SDK包直接在APIC上下载,

https://x.x.x.x/cobra/_downloads/ 

包括类似acicobra-1.1_1j-py2.7.egg, acimodel-1.1_1j-py2.7.egg这两个文件,我这里是1.3.2

我这里virtualenv在D:\python\aci\这个目录下面 通过dir可以看到文件

D:\python\aci\Scripts>dir
2017/03/05  16:11    <DIR>          .
2017/03/05  16:11    <DIR>          ..
2017/03/05  16:02            90,360 acicobra-1.3_2h-py2.7.egg
2017/03/05  16:08        69,542,066 acimodel-1.3_2h-py2.7.egg
2017/03/05  15:30             2,283 activate
2017/03/05  15:30               543 activate.bat
2017/03/05  15:30             8,325 activate.ps1
2017/03/05  15:30             1,137 activate_this.py
2017/03/05  15:30               348 deactivate.bat
2017/03/05  15:30            92,018 easy_install-2.7.exe
2017/03/05  15:30            92,018 easy_install.exe
2017/03/05  15:30            91,990 pip.exe
2017/03/05  15:30            91,990 pip2.7.exe
2017/03/05  15:30            91,990 pip2.exe
2017/03/05  15:30            27,136 python.exe
2017/03/05  15:30            27,648 pythonw.exe
2017/03/05  15:30            91,997 wheel.exe

使用easy_install acicobra-1.3_2h-py2.7.egg命令进行安装  使用easy_install  acimodel-1.3_2h-py2.7.egg安装另外一个包

D:\python\aci\Scripts>easy_install acicobra-1.3_2h-py2.7.egg
Processing acicobra-1.3_2h-py2.7.egg
creating d:\python\aci\lib\site-packages\acicobra-1.3_2h-py2.7.egg
Extracting acicobra-1.3_2h-py2.7.egg to d:\python\aci\lib\site-packages
Adding acicobra 1.3-2h to easy-install.pth file
Installed d:\python\aci\lib\site-packages\acicobra-1.3_2h-py2.7.egg
Processing dependencies for acicobra===1.3-2h
Searching for requests
Reading https://pypi.python.org/simple/requests/
Best match: requests 2.13.0
Downloading https://pypi.python.org/packages/16/09/37b69de7c924d318e51ece1c4ceb6
79bf93be9d05973bb30c35babd596e2/requests-2.13.0.tar.gz#md5=921ec6b48f2ddafc8bb61
60957baf444
Processing requests-2.13.0.tar.gz
Writing c:\users\hs\appdata\local\temp\easy_install-si1rs1\requests-2.13.0\setup
.cfg
Running requests-2.13.0\setup.py -q bdist_egg --dist-dir c:\users\hs\appdata\loc
al\temp\easy_install-si1rs1\requests-2.13.0\egg-dist-tmp-ue8g6c
warning: no files found matching 'test_requests.py'
warning: no files found matching 'requirements.txt'
creating d:\python\aci\lib\site-packages\requests-2.13.0-py2.7.egg
Extracting requests-2.13.0-py2.7.egg to d:\python\aci\lib\site-packages
Adding requests 2.13.0 to easy-install.pth file
Installed d:\python\aci\lib\site-packages\requests-2.13.0-py2.7.egg
Finished processing dependencies for acicobra===1.3-2h

通过pip freeze和pip show acimodel 查看是否安装成功

D:\python\aci\Scripts>pip freeze
acicobra===1.3-2h
acimodel===1.3-2h
requests==2.13.0
wheel==0.24.0
D:\python\aci\Scripts>pip show acimodel
Metadata-Version: 1.1
Name: acimodel
Version: 1.3-2h
Summary: The Management Information Tree
Home-page: UNKNOWN
Author: Cisco Systems
Author-email: mtimm@cisco.com
License: Cisco Systems Inc. (Copyright 2014)
Location: d:\python\aci\lib\site-packages\acimodel-1.3_2h-py2.7.egg
Requires: acicobra

最后在pycharm里面查看

aci-python.png

查看世界各地国际互联网骨干BGP路由,包括Tier 1和Tier 2 ISP

之前学习BGP的时候一直流传一个免费的查看BGP路由的服务器,但是单个运营商看不出整体,也看不到具体IP的流量走向,偶然发现有这个好东西,包括了大部分主流运营商。 直接telnet即可  原网站地址http://routeserver.org/    直接点击即可telnet上去查看

router.png

思科ACI Fabric基本的架构模型

现在的SDN解决方案基本上通过把各种模式的数据包(包括VLAN\VXLAN\虚拟网络等)封装在三层数据包中,底层是VXLAN技术加上各种协议 当然,思科也不例外,思科的ACI架构就是底层通过VXLAN来封装,通过二层的IS-IS来交换一些位置信息(与fabripath类似),通过MP-BGP来传递路由信息,还有一些LLDP协议等。当然,这些技术细节并不会对开放给用户,当思科的N9K系列交换机运行在ACI模式时,大部分配置是在中心管理器APIC上完成的,交换机本身处于不能配置状态。

About ACI Fabric Fundamentals

The ACI fabric supports more than 64,000 dedicated tenant networks. A single fabric can support more than one million IPv4/IPv6 endpoints, more than 64,000 tenants, and more than 200,000 10G ports. The ACI fabric enables any service (physical or virtual) anywhere with no need for additional software or hardware gateways to connect between the physical and virtual services and normalizes encapsulations for Virtual Extensible Local Area Network (VXLAN) / VLAN / Network Virtualization using Generic Routing Encapsulation (NVGRE).

The ACI fabric decouples the endpoint identity and associated policy from the underlying forwarding graph. It provides a distributed Layer 3 gateway that ensures optimal Layer 3 and Layer 2 forwarding. The fabric supports standard bridging and routing semantics without standard location constraints (any IP address anywhere), and removes flooding requirements for the IP control plane Address Resolution Protocol (ARP) / Generic Attribute Registration Protocol (GARP). All traffic within the fabric is encapsulated within VXLAN.

Decoupled Identity and Location

The ACI fabric decouples the tenant endpoint address, its identifier, from the location of the endpoint that is defined by its locator or VXLAN tunnel endpoint (VTEP) address. The following figure shows decoupled identity and location.

上面属于spine交换机,下面属于leaf交换机,spine交换机之间不会连线,leaf交换机之间不能连线,一般是40GB端口,思科支持在一对0M3光纤上支持最长100米传输40Gb 这一点像H3C这种是望尘莫及的

ACI-FUNDAMENTAL.jpg

Forwarding within the fabric is between VTEPs.The mapping of the internal tenant MAC or IP address to a location is performed by the VTEP using a distributed mapping database. After a lookup is done, the VTEP sends the original data packet encapsulated in VXLAN with the Destination Address (DA) of the VTEP on the destination leaf. The packet is then de-encapsulated on the destination leaf and sent down to the receiving host. With this model, we can have a full mesh, loop-free topology without the need to use the spanning-tree protocol to prevent loops.