release 0.1 cisco systems, inc....introduction the cisco aci fabric is configured using an abstract...
TRANSCRIPT
Contents
1 Introduction 3
2 Object Model 52.1 Application Topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Interface Object Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 62.3 Physical Topology . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 7
3 Monitor Policy 113.1 Policy Resolution . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 14
4 Tutorial 174.1 Setting up the environment . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 17
4.1.1 Download . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.1.2 Install . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 174.1.3 Common Installation Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.2 Pre-installed Packages . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 184.2.1 Virtual Machine for VMware Environments . . . . . . . . . . . . . . . . . . . . . . . . . . 18
4.3 Building a Simple Tenant Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1 Configuration Object Definition . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 19
4.3.1.1 Imports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.2 Tenant Creation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.3 Application Profile . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.4 Endpoint Group . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 194.3.1.5 Context and Bridge Domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3.2 Associating the tenant configuration with the network . . . . . . . . . . . . . . . . . . . . . 204.3.2.1 Physical Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 204.3.2.2 VLANs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 20
4.3.3 Deploying to the APIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3.1 APIC Login Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3.2 APIC Login . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 214.3.3.3 APIC Login (Certificate based) . . . . . . . . . . . . . . . . . . . . . . . . . . . . 22
4.3.4 Displaying the JSON Configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.3.5 Removing the tenant configuration . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 23
4.4 Getting APIC objects . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 234.4.1 Objects on demand . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 244.4.2 Event subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
4.4.2.1 Class subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 24
i
4.4.2.2 Instance subscriptions . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25
5 Statistics 275.1 Statistics . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 27
5.1.1 Statistic Families . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 275.1.2 Accessing Stats . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 28
5.1.2.1 aci-show-interface-stats.py . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.1.3 Granularity . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 295.1.4 Epoch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.1.5 Update Frequency for current epoch . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 30
5.2 Statistics Detail . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 305.2.1 egrBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 325.2.2 egrTotal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 345.2.3 ingrBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 365.2.4 ingrTotal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 385.2.5 egrPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 405.2.6 ingrPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 425.2.7 egrDropPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445.2.8 ingrDropPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465.2.9 ingrUnkBytes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485.2.10 ingrStorm . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 505.2.11 ingrUnkPkts . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52
6 API Reference 536.1 acitoolkit package . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 53
6.1.1 Submodules . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536.1.1.1 acibaseobject module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 536.1.1.2 aciphysobject module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 616.1.1.3 acisession module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1546.1.1.4 acitoolkit module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 1576.1.1.5 acitoolkitlib module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4366.1.1.6 aciFaults module . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 437
7 Applications 4397.1 ACI Endpoint Tracker . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 439
7.1.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397.1.1.1 acitoolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397.1.1.2 MySQL database . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4397.1.1.3 MySQL Connector . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4407.1.1.4 Flask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 440
7.1.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4407.1.3 What’s it doing ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4427.1.4 Direct Database Query . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4427.1.5 GUI FrontEnd . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 444
7.1.5.1 Demo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4447.1.5.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
7.1.6 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4457.2 ACI Lint . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 445
7.2.1 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4467.2.1.1 Running using Live APIC configuration . . . . . . . . . . . . . . . . . . . . . . . 4467.2.1.2 Running using Configuration Snapshot files . . . . . . . . . . . . . . . . . . . . . 4467.2.1.3 Customization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 446
7.2.2 Errors and Warnings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4477.2.2.1 Warnings . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 447
ii
7.2.2.2 Errors . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4477.2.2.3 Critical . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
7.2.3 Developing Checks . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4487.3 Cableplan Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
7.3.1 Using the Cable Plan . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4487.3.1.1 Invoking . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 448
7.3.2 Cable Plan from the Command Line . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4507.3.3 Cable Plan XML Syntax . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4507.3.4 Cable Plan API Reference . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 451
7.4 Snapback : Configuration Snapshot and Rollback . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4557.4.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4557.4.2 General Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 455
7.4.2.1 Snapshot Files . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4557.4.2.2 Rollback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
7.4.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4567.4.4 Web based Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 456
7.4.4.1 Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4567.4.4.2 Schedule Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4577.4.4.3 Snapshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4587.4.4.4 Version Diffs . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4617.4.4.5 About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4627.4.4.6 Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 462
7.4.5 Command Line Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4627.4.6 Version Repository . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 463
7.5 Visualization Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4637.5.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4637.5.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
7.6 EventFeeds: ACI Events to Atom Feed . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4647.6.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 464
7.6.1.1 acitoolkit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4647.6.1.2 Flask . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 465
7.6.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4657.6.3 What’s it doing ? . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4657.6.4 Feed Details . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4667.6.5 Screenshots . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4667.6.6 License . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 468
7.7 Intersite Application . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4687.7.1 Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4687.7.2 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4697.7.3 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4697.7.4 Configuration File . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 469
7.7.4.1 Site Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4717.7.4.2 EPG Export Policy . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 471
7.7.5 Command Shell . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4727.7.6 REST API . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4727.7.7 Automator . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4737.7.8 Logging . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4757.7.9 APIC Object Model . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4757.7.10 Importing within other applications . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 475
7.8 Connection Search : Configured Connection Search Tool . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.1 Summary . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.2 General Overview . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.3 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4767.8.4 Web based Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 476
iii
7.8.4.1 Credentials . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4777.8.4.2 Performing a Search . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4787.8.4.3 Examples . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4807.8.4.4 About . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4827.8.4.5 Feedback . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 482
7.8.5 Command Line Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4827.9 Fake APIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 483
7.9.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4837.9.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4837.9.3 How to pass in queries to the Fake APIC . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4847.9.4 What queries the Fake APIC supports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4847.9.5 Dependencies . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 484
7.10 ACI Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4857.10.1 ACI ReportView GUI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
7.10.1.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4857.10.1.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 485
7.10.2 ACI Logical Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4897.10.2.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4897.10.2.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4897.10.2.3 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 490
7.10.3 ACI Switch Reports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4907.10.3.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4907.10.3.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4907.10.3.3 Notes . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 491
7.10.4 ACI Security Report . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4917.10.4.1 Installation . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4917.10.4.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4917.10.4.3 Output . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 492
7.11 APIC Test Harness . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4927.11.1 Purpose . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4927.11.2 Usage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4937.11.3 Full command line options . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4937.11.4 What APIC Test Harness supports . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 4947.11.5 Known Issues . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 494
8 Indices and tables 495
Python Module Index 497
Index 499
iv
CHAPTER 1
Introduction
The Cisco ACI Fabric is configured using an abstract policy model on the Cisco Application Policy InfrastructureController (APIC). The APIC has a very rich and complete object model that is accessible through a programmaticREST API. The acitoolkit exposes a small subset of that model in a way that is meant to provide an introduction to theACI concepts and allow users to get the most common workflows up and running as quickly as possible.
3
CHAPTER 2
Object Model
The acitoolkit object model is divided into 3 sub-areas
• Application Topology Object Model
• Interface Object Model
• Physical Topology Object Model
2.1 Application Topology
The acitoolkit defines the fabric configuration using a set of policies that describes the application logical topology.
The following diagram shows the full logical topology diagram autogenerated from the source code.
LogicalModel
Tenant
Filter
AppProfile
OutsideL3
Tag
TabooContractBridgeDomain OutsideL2 ContractInterfaceContext
ContractSubject
OutputTerminal InputTerminal
EPG
IPEndpointAttributeCriterion Endpoint
FilterEntry
OutsideEPG
OutsideNetwork
Subnet OutsideL2EPGAnyEPG
Some of the key classes are shown and described below with the remainder described in the API Reference.
5
acitoolkit Documentation, Release 0.1
Tenant is the root class within the acitoolkit object model hierarchy. All of the application topology configurationoccurs within a Tenant.
AppProfile is the Application Profile class. It contains the configuration for a given application.
EPG is the Endpoint Group class. This is the object for defining configuration that is applied when endpoints connectto the fabric.
Context is the class representing an L3 namespace (roughly, a traditional VRF in Cisco terminology).
BridgeDomain is the class representing an L2 forwarding domain (roughly, a traditional VLAN). It is associated witha single Context.
Subnet is the class representing an L3 subnet. It is associated with a single BridgeDomain.
OutsideEPG is the class representing an EPG that connects to the world outside the fabric. This is where routingprotocols such as OSPF are enabled.
Contracts define the application network services being provided and consumed by EPGs. EPGs may provide andconsume many contracts.
Taboos define the application network services that can never be provided or consumed by EPGs.
FilterEntry contained within either a Contract or a Taboo. Defines the traffic profile that the Contract or Taboo applies.
2.2 Interface Object Model
Interfaces provide the linkage between the application logical topology and the underlying physical network topology.The Interface set of classes are connected through a series of attachment relationships as shown in the class diagrambelow.
6 Chapter 2. Object Model
acitoolkit Documentation, Release 0.1
Interface class represents the Physical Interfaces. These are the objects that link the logical topology with thephysical world. These objects represent the access ports on the leaf switches. These are the interfaces that the endpointswill physically attach.
Link aggregation
A link aggregation is a logical link layer interface composed of one or more physical interfaces. Commonly referredto as Etherchannel or PortChannel.
PortChannel class represents the logical aggregated ethernet port formed by Link Aggregation. This is done bycreating a PortChannel instance and attaching one or more Interface instances to it. When interfaces belonging to 2separate switches are assigned to the same PortChannel, this is referred to as a VPC or Virtual Port Channel. In theacitoolkit, VPCs are also represented by the PortChannel class.
L2Interface class represents the logical L2 network attachment on an Ethernet interface. In this case, the Ethernetinterface could be an Interface class instance or PortChannel class instance as both are considered representations oflink layer Ethernet interfaces.
Multiple logical L2 network attachments can occur on the same Ethernet interface. When this occurs, the L2Interfaceinstances must use different encapsulation identifiers and/or different encapsulation types. The valid encapsulationtypes are:
• VLAN
• VXLAN
• NVGRE
L3Interface class represents the logical L3 network attachment on an L2Interface. The L3Interface instance is wherethe IP address resides.
OSPFInterface class represents the logical router interface that routes from the L3Interface instance. It contains theOSPF-specific interface configuration.
2.3 Physical Topology
The acitoolkit defines the network topology using a set of objects that represent each of the components of the topology.
2.3. Physical Topology 7
acitoolkit Documentation, Release 0.1
These objects are connected in a hierarchy according to the following diagrams.
PhysicalModel
Pod
ExternalSwitch Link Node
Powersupply Linecard Supervisorcard Fantray Systemcontroller
Interface Fan
The acitoolkit.aciphysobject.Node object is used to represent both switches and controllers. Whichkind of acitoolkit.aciphysobject.Node can be determined by looking at the role, Node.role, attribute.Switches are Nodes with the role of ‘leaf’ or ‘spine’ and controllers are Nodes with the role of ‘controller’.Switches are composed slightly different from controllers as shown in the following diagram.
8 Chapter 2. Object Model
acitoolkit Documentation, Release 0.1
Pod is the class for a physical Pod. acitoolkit.aciphysobject.Pod conatins of all the switches, links, andcontrollers that connected in the simple leaf-spine fat tree topology of the ACI fabric. It does not include the end-pointsor other devices that are attached to the ACI fabric.
Node is the class used to represent switches and controllers. What role the acitoolkit.aciphysobject.Nodeplays in the fabric can be determined by looking at the role attribute.
Link is the class representing links in the fabric. acitoolkit.aciphysobject.Link includes links betweenleaf and spine switches as well as links from leaf switches to controllers. Each link has two ends, the first and secondend, in no particular order. This class has methods for retrieving the Switch, Linecard and Interface for each of theends of the link.
Supervisorcard is the class representing the supervisor card in a switch. acitoolkit.aciphysobject.Supervisorcard would only be a child of a Node that has the role of ‘leaf’ or ‘spine’. Each switch will havea supervisor including fixed configuration switches that may not have a obviously physically separate module that is asupervisor. The supervisor is where the primary software of the switch runs.
Linecard is the class representing a linecard in a switch. The acitoolkit.aciphysobject.Linecard iswhere all of the physical interfaces or ports are attached. In modular switches, the linecard is physically obvious, buteven fixed configuration switches have a linecard where all the interfaces, ports, reside. A specific linecard in a switchis identified by its slot_id attribute. The slot_id of a linecard in a fixed configuration switch is always ‘1’.
Powersupply acitoolkit.aciphysobject.Powersupply is the class representing a power supply in anode.
Fantray acitoolkit.aciphysobject.Fantray is the class representing a fan tray in a node
2.3. Physical Topology 9
acitoolkit Documentation, Release 0.1
Systemcontroller acitoolkit.aciphysobject.Systemcontroller is the class representing a systemcontoller of an APIC controller. This is the motherboard of the controller and is a good place to understand theversion of software that is running in the controller.
Interface acitoolkit.acitoolkit.Interface described above.
10 Chapter 2. Object Model
CHAPTER 3
Monitor Policy
The monitor policy, acitoolkit.acitoolkit.MonitorPolicy , defines what statistical information is gath-ered and how long historical information is kept. It is also where events that are triggered by these stats are configured(to be supported).
Multiple monitoring policies can be defined and various APIC objects then reference the monitoring policy they areusing. For example, a l1PhysIf object in the APIC has an attribute called monPolDn which is the distinguish-ing name of the monitoring policy that it references. In the toolkit, the l1PhysIf object is represented by theacitoolkit.acitoolkit.Interface class.
There are two types of monitoring policies:fabric and access and they are identified by the policyType at-tribute of the monitor policy. The fabric type is used to monitor ACI fabric interfaces while the access type isused to monitor ACI access or infra interfaces. The same class is used for both types of monitoring policies in theacitoolkit.
The monitoring policy is a hierarchical policy consisting of monitor policy class, acitoolkit.acitoolkit.MonitorPolicy , at the top with the following classes below it: acitoolkit.acitoolkit.MonitorTarget, acitoolkit.acitoolkit.MonitorStats, and acitoolkit.acitoolkit.CollectionPolicy .
The following diagram shows their relationship.
11
acitoolkit Documentation, Release 0.1
CollectionPolicy is where the actual collection policy is defined. What it applies to is determined by where it isin the monitoring policy hierarchy. The three most important attributes of the collection policy are adminState,granularity and retention. Additional attributes are a name and description which are optional and canbe set using the setName(<name>) and setDescription(<description>) methods respectively.
The adminState attribute can be enabled, disabled or inherited. If enabled, that granularity of statis-tics will be gathered. If disabled, that granularity of statistics will not be gathered and neither will any largergranularities. This is because the statistics gathered at one granularity are then rolled up into the larger granularity. Ifyou don’t gather the finer one, then there is no data to roll up to the coarser one.
If the adminState is set to inherited, the current object does not determine the adminState. Instead, theadminState of the collection policy of the next higher level in the monitoring policy hierarchy will be used. Thismeans that the adminState at the highest level of the monitoring policy cannot be set to inherited because thereis no higher level to inherit from.
The granularity attribute can have one of the following values:
12 Chapter 3. Monitor Policy
acitoolkit Documentation, Release 0.1
Value Meaning5min 5 minutes15min 15 minutes1h 1 hour1d 1 day1w 1 week1mo 1 month1qtr 1 quarter1year 1 year
This is the time interval over which the stats are initially gathered and the interval for which they are kept.
For example, if the granularity is 15min, then the cumulative stats for that granularity will start at 0 at the beginningof the 15 minute interval and will accumulate during the interval. At the end of the interval, the final values will bemoved to the historical statistics if the retention attribute is so configured. The rate statistics will be the rate duringthe 15 minute interval and the rate averages will be the average rate during the 15 minute interval.
Statistics are only kept for granularities that have an adminState of enabled either explicitly or through inheritanceand no finer (smaller) granularities are disabled.
The retention attribute determines how long historical data at a given granularity is kept. It can have one of thefollowing values:
Value Meaningnone Do not keep historical datainherited Use the policy from the next higher level of hierarchy5min 5 minutes15min 15 minutes1h 1 hour1d 1 day1w 1 week10d 10 days1mo 1 month1qtr 1 quarter1year 1 year2year 2 years3year 3 years
It does not make any sense to have a retention period that is less than the granularity, however this is not checked forin the acitoolkit.
MonitorStats sets the scope for any collection policy under it. The scope here is a family of statistics. The possiblescope values are as follows:
13
acitoolkit Documentation, Release 0.1
Value DescriptionegrBytes Egress bytesegrPkts Egress packetsegrTotal Egress totalegrDropPkts Egress drop packetsingrBytes Ingress bytesingrPkts Ingress packetsingrTotal Ingress totalingrDropPkts Ingress drop packetsingrUnkBytes Ingress unknown bytesingrUnkPkts Ingress unknown packets
A more detailed description of the statistics can be found here.
The collection policies under the MonitorStats object determine the default collection policy for the set of statis-tics selected by the above scope.
Other attributes of the MonitorStats class are name and description which can be set with thesetName(<name>) and setDescription(<description>) methods respectively. Setting these attributesis optional.
MonitorTarget sets the scope to a particular APIC target object for all of the collections policies below it. Currently,there is only one APIC target object type supported and that is ‘l1PhysIf’. The scope attribute is where the targettype is stored. Support for additional target objects will be added as required. The scope attributed is initializedwhen the MonitorTarget is created and cannot be changed.
Other attributes of the MonitorStats class are name and description which can be set with thesetName(<name>) and setDescription(<description>) methods respectively. Setting these attributesis optional.
MonitorPolicy is the root of the monitor policy hierarchy. This object must have name and policyType attribute.The policyType must be either fabric or access and the name must be unique for each policyType.
The monitor policy will be referenced by its policyType and name by individual APIC objects.
The monitor policy contains the default collection policies as well as any MonitorTarget objects that specify amore specific scope.
The monitor policy must contain a CollectionPolicy for each granularity and the adminState andretention attributes of the CollectionPolicy cannot be inherited because they are at the top ofthe inheritance tree. When a MonitorPolicy object is created, it will be initialized with the appropriateCollectionPolicy objects, which, in turn, will be set to a default administrative state of disabled. Thismeans that these polies must be overwritten if stats should be collected. They can either be explicitly replaced withthe add_collection_policy(<CollectionPolicy object>) method, or implicitly replaced by morespecific collection policies in the inheritance hierarchy.
3.1 Policy Resolution
The ultimate policy that is applied to any counter is determined by walking through the monitoring policy from thetop down. The collection policy at each level of the hierarchy determines how statistics will be kept for those statisticsthat are in scope.
For example, the collection policy for each granularity is specified at the top of the hierarchy under the MonitorPolicyobject. These collection policies will apply to all statistics unless overwritten by a more specific policy under aMonitorTarget object.
14 Chapter 3. Monitor Policy
acitoolkit Documentation, Release 0.1
If there is a MonitorTarget object, it will set the scope for the monitoring policy to be more specific for the collectionpolicies under it. Initially, the only target supported is ‘l1PhyIf’ which is for an Interface object. Any collectionpolicies under this MonitorTarget will override the corresponding collection policy under the MonitorPolicyparent object. It is possible that there are no collection policies specified at this level.
If there are MonitorStats objects under the MonitorTarget object, they will set the scope to be even morespecific for the collection policies under them. Each MonitorStats object can have under it collection policies forany of the granularities.
3.1. Policy Resolution 15
CHAPTER 4
Tutorial
This document is meant to give a tutorial-like overview of the acitoolkit package.
4.1 Setting up the environment
This tutorial will walk you through installing the acitoolkit using the sources so that you will be able to edit the samplesand even the acitoolkit source code if so desired.
4.1.1 Download
First, we must download the acitoolkit. This is best done using git, but can be done by downloading the package as azip.
If you have git installed, clone the repository using the following command:
git clone https://github.com/datacenter/acitoolkit.git
If git is not installed, you can download the acitoolkit as a zip file instead.:
wget https://github.com/datacenter/acitoolkit/archive/master.zipunzip master.zip
4.1.2 Install
Note
The directory may be named acitoolkit-master if downloaded as a zip file.
Next, cd into the created directory
17
acitoolkit Documentation, Release 0.1
cd acitoolkit
and install the acitoolkit
python setup.py install
Note that when installing on Mac or Linux, you will likely need to run this as administrator so preface the commandwith the sudo keyword as follows:
sudo python setup.py install
If you plan on modifying the actual toolkit files, you should install the developer environment that will link the packageinstallation to your development directory. Do this instead of the install option above
sudo python setup.py develop
4.1.3 Common Installation Errors
Missing development packages
Some of the dependencies may require that the python development environment be installed. This package is usuallycalled python-dev or python-develop. This is usually the case when you see an error message referring to amissing file such as Python.h: No such file or directory.
In Ubuntu, you would install this package by sudo apt-get install python-dev
4.2 Pre-installed Packages
The acitoolkit can be downloaded pre-configured as a virtual machine.
4.2.1 Virtual Machine for VMware Environments
A pre-installed virtual machine in the form of a OVA file for VMware hypervisors can be found in the link below:
ACI Toolkit OVA
The virtual machine is configured with the following parameters:
Username: acitoolkitPassword: acitoolkitOperating System: Ubuntu 16.04.2Processor Cores: 1Memory: 1GB
The acitoolkit and necessary packages are already installed. However, given the pace of change in datacenternetworking, there most likely have been changes since the VM was created. Luckily, the VM can be updated to thelatest version by entering the following command:
sudo ~/install
This command be re-run any time to get the latest updates.
18 Chapter 4. Tutorial
acitoolkit Documentation, Release 0.1
4.3 Building a Simple Tenant Configuration
The following section will walk you through the implementation of the tutorial.py file found in the /samples/directory. This code will create a minimal configuration that will configure 2 interfaces on the fabric to be on the samenetwork so that they can communicate. This code can be executed with the following command from within the/samples/ directory:
python tutorial.py
4.3.1 Configuration Object Definition
4.3.1.1 Imports
The first part of the tutorial program consists of the import statement. The acitoolkitmodule from the acitoolkitpackage is imported.
from acitoolkit.acitoolkit import *
The acitoolkit module within the acitoolkit package provides access to all of the acitoolkit configuration.
4.3.1.2 Tenant Creation
All of the configuration will be created within a single tenant named tutorial. This is done by creating an instanceof the Tenant class and passing it a string containing the tenant name.
tenant = Tenant('tutorial')
4.3.1.3 Application Profile
The Application Profile contains all of the Endpoint Groups representing the application. The next line of code createsthe application profile. It does this by creating an instance of the AppProfile class and passing it a string containingthe Application Profile name and the Tenant object that this AppProfile will belong.
app = AppProfile('myapp', tenant)
Note that many of the objects within the acitoolkit are created in this way, namely with a name and a parent object.The parent object must be an instance of this class’s parent class according to the acitoolkit object model. The parentclass of AppProfile is Tenant.
4.3.1.4 Endpoint Group
The Endpoint Group provides the policy based configuration for Endpoints that are members of the Endpoint Group.This is represented by the EPG class. In this case, we create an EPG with the name myepg and pass the AppProfilethat we created to be the parent object.
epg = EPG('myepg', app)
4.3. Building a Simple Tenant Configuration 19
acitoolkit Documentation, Release 0.1
4.3.1.5 Context and Bridge Domain
We also need an L3 namespace and L2 forwarding domain so we create the Context and BridgeDomain in thesame manner as we did for the previous objects. For both of these classes, the parent class is Tenant.
context = Context('myvrf', tenant)bd = BridgeDomain('mybd', tenant)
We then associate the BridgeDomain instance with the Context instance. This indicates that thisBridgeDomain exists within this Context.
bd.add_context(context)
The EPG is then associated with the BridgeDomain that we created.
epg.add_bd(bd)
4.3.2 Associating the tenant configuration with the network
At this point, the tenant configuration is complete. However, it is not bound to the physical network yet so let’s connectthe EPG to 2 interfaces.
4.3.2.1 Physical Interfaces
First, we must create objects to represent the physical interfaces using the Interface class. Interface objects arenamed using interface type, pod, node (switch), module (linecard), and port names. In this case, the interface type is'eth' for ethernet and the interfaces are located in pod 1 on leaf switch 101 in module 1 within ports 15 and 16.
if1 = Interface('eth', '1', '101', '1', '15')if2 = Interface('eth', '1', '101', '1', '16')
4.3.2.2 VLANs
In order to allow multiple EPGs to connect to the same interface, the ACI fabric uses network virtualization technolo-gies such as VLAN, VXLAN, and NVGRE to keep the traffic isolated. In this case, we chose to use VLAN since it isthe most ubiquitous and we chose to use the same encapsulation on both physical interfaces, namely VLAN 5.
The L2Interface class represents the virtual L2 network interface. In this case, this is the VLAN attached to agiven physical interface. This is the interface where L2 protocols (such as spanning tree in traditional networks) run.Link layer protocols such as LLDP run directly on the physical interface independent of VLANs.
We create the L2Interface and pass a name vlan5_on_if1, the encapsulation technology vlan, and the virtualnetwork identifier 5 as part of the contructor.
vlan5_on_if1 = L2Interface('vlan5_on_if1', 'vlan', '5')
We next associate this L2Interface to the desired physical interface.
vlan5_on_if1.attach(if1)
And we repeat for the second physical interface.
vlan5_on_if2 = L2Interface('vlan5_on_if2', 'vlan', '5')vlan5_on_if2.attach(if2)
20 Chapter 4. Tutorial
acitoolkit Documentation, Release 0.1
Now, we simply associate the EPG with the L2Interface objects that we created.
epg.attach(vlan5_on_if1)epg.attach(vlan5_on_if2)
4.3.3 Deploying to the APIC
At this point, the entire configuration is done and all that is left is connecting to the APIC and deploying the configu-ration.
4.3.3.1 APIC Login Credentials
The APIC login credentials are retrieved using an instance of the Credentials class. This class provides a conve-nient mechanism to retrieve credentials and is used by a variety of toolkit applications.
The Credentials object is instantiated with a string describing the type of credentials desired and a description string.
description = 'acitoolkit tutorial application'creds = Credentials('apic', description)
The command line is also extensible through the add_argument function. This is the same add_argumentfunction provided by the standard argparse python package. In this tutorial, we extend the command line optionswith a delete flag so that we can clean up the configuration afterwards.
creds.add_argument('--delete', action='store_true',help='Delete the configuration from the APIC')
Retrieving the credentials is done by calling the get function.
args = creds.get()
The apic set of credential variables consist of the username, password, and URL of the APIC. TheCredentials class allow the credentials to be provided in a number of formats and is taken in the followingpriority order
• Command line options
• Configuration file called credentials.py
• Environment variables
• Interactively querying the user
A search will be performed for each credential individually so that different methods can be used at the same time.For example, the username and URL can be passed as Command Line Options and the password can be collected byquerying the user directly. For this tutorial, we will query the user directly.
4.3.3.2 APIC Login
Next, we log into the APIC. This is done through the Session class. We create an instance and pass it the logincredentials, namely the URL, LOGIN, and PASSWORD.
session = Session(URL, LOGIN, PASSWORD)
We also initiate the actual login.
4.3. Building a Simple Tenant Configuration 21
acitoolkit Documentation, Release 0.1
session.login()
Once the login is complete, we can now send our configuration to the APIC. This is done by calling the Sessionobject with the push_to_apic function that requires a URL and the JSON data to send to the APIC. All of theconfiguration for the application topology is collected under the Tenant. In order to get the URL to use and theJSON for our configuration, we simply call the Tenant instance with get_url and get_json respectively.
resp = session.push_to_apic(tenant.get_url(), data=tenant.get_json())
The push_to_apic call returns an object. This object is an instance of the Response class from the popularrequests library which provides a rich set of return codes and status. Here, we simply check that the call was successful.
if resp.ok:print('Success')
4.3.3.3 APIC Login (Certificate based)
The APIC REST API also supports authentication using certificates.
Once setup, it is a more simple and secure form of authentication, with each request being uniquely signed. Addition-ally, login timeout issues are removed. An important point to note is that websockets (events) are not supported by theAPIC when using certficate authentication, so the corresponding acitoolkit functionality will be disabled.
As a prerequisite you must have created a private key and public certificate and attached the certificate to the desireduser using the APIC Web UI.
Creating a certificate session using the acitoolkit is simple:
1. Use OpenSSL to generate a X.509 certificate and private key.
openssl req -new -newkey rsa:1024 -days 36500 -nodes -x509 -keyout userabc.key -out→˓userabc.crt -subj '/CN=User ABC/O=Cisco Systems/C=US'
2. Upload the generated certificate userabc.crt to the user via the APIC
3. Certificate authentication has an extra dependency, not installed by default, which can be easily installed using pip
pip install pyopenssl
4. Create a certificate based authentication session
# Genericsession = Session(URL, LOGIN, cert_name=CERT_NAME, key=KEY)
# Examplesession = Session('https://1.1.1.1', 'userabc', cert_name='userabc.crt', key='userabc.→˓key')
22 Chapter 4. Tutorial
acitoolkit Documentation, Release 0.1
Note: If using the acitoolkit from the context of an APIC App Center app, make sure to pass the extra parameterappcenter_user=True. App Center apps are provided a user that belongs to a different class of users. Thelogin and cert_name for App Center users are both in the form of vendor_appId. App Center users supportcertificate subsciptions through a special requestAppToken api. To use subscriptions with an App Center user, youmust explicitly call the login() method which acquires and maintains the App user token. Disable App centersubscriptions by setting the parameter subscription_enabled=False.
You do not need to explicitly call the login() method when using certificate authentication.
After this point, you can continue to use all of the acitoolkit methods to get and push configuration from the APICsecurely and without logging in.
4.3.4 Displaying the JSON Configuration
At this point, we’re done ! The configuration has been sent to the APIC. Congratulations, you just programmed adatacenter fabric ! You should be able to see your new tenant tutorial within the APIC GUI with its new EPG andstatic path bindings.
The next few lines in the tutorial.py file simply print what was sent to the APIC. You can use this to manuallyedit the JSON if you wish to access the richer API on the APIC that the acitoolkit does not expose.
print('Pushed the following JSON to the APIC')print('URL:', tenant.get_url())print('JSON:', tenant.get_json())
4.3.5 Removing the tenant configuration
You might have noticed that we jumped over 2 lines of the tutorial code, specifically the following lines.
if args.delete:tenant.mark_as_deleted()
The args.delete is set if the --delete command line option is given. Calling the mark_as_deleted func-tion will cause the tenant to be deleted from the APIC when the configuration is pushed. It should be noted thatdeleting the tenant will cause all of the configuration for the tenant to be deleted. This will allow us to run the tutorialand then run it again to delete the configuration by executing the following commands.:
python tutorial.pypython tutorial.py --delete
The first command will push the configuration to the APIC and the second command will delete the configurationleaving you where we started.
4.4 Getting APIC objects
With the acitoolkit, it is possible to get objects from the APIC either on demand or through object event subscriptions.In most cases, getting the objects on demand will be sufficient. However, in cases where action needs to be takenimmediately or to avoid frequent polling of the APIC, event subscriptions can be used.
4.4. Getting APIC objects 23
acitoolkit Documentation, Release 0.1
4.4.1 Objects on demand
Getting objects on demand is fairly straightforward. Each class that allows getting objects from the APIC has a getclass method. This method will return a list of objects belonging to that class type and will be retrieved from the APICimmediately upon calling.
Since the acitoolkit can be used to control multiple APICs at the same time, the Session class instance representingthe connection to the desired APIC is also passed.
An example is shown in the code snippet below.:
tenants = Tenant.get(session)for tenant in tenants:
print tenant.name
4.4.2 Event subscriptions
Event subscriptions allow immediate notification when an object is created, modified, or deleted. Events will bereceived only for classes or instances that are subscribed.
4.4.2.1 Class subscriptions
To create a class subscription, the class method subscribe is called on the desired class along with the appropriateSession class instance. This is shown in the code snippet below using the Tenant class as the example.:
Tenant.subscribe(session)
To check an event has arrived, the method has_events can be called on the subscribed class.:
Tenant.has_events(session)
If there is an event waiting, this will return True.
Note: While this may look like it requires polling the APIC, it is actually just checking a local event receive queue.This event queue is populated by a separate thread receiving events from the APIC. Thus, calling has_event willnot result in additional communication with the APIC so that this call can be run in a tight loop with minimal overheadand/or spun into a seperate thread if desired.
To retrieve the event, a call is made to the get_event method as shown below.:
event = Tenant.get_event(session)
This will return a instance of the object with the appropriate settings indicating the change. For instance, if theTenant named Bob is deleted, the event will return a Tenant instance with the name set to Bob and it will bemarked as deleted.
To no longer receive events for this particular class, the class method unsubscribe can be called. This will causethe subscription to be removed from the APIC.:
Tenant.unsubscribe(session)
Under the covers, the event subscriptions use a web socket to communicate with the APIC to receive the events.The events are then collected by a thread and placed into an event queue that is then queried by user code. Eventsubscriptions are refreshed automatically by the toolkit using a separate thread.
24 Chapter 4. Tutorial
acitoolkit Documentation, Release 0.1
4.4.2.2 Instance subscriptions
Instance subscriptions are the same as class subscriptions except that the events are limited to only that particularobject instance such as:
bob = Tenant('bob')bob.subscribe(session)bob.has_events(session)event = bob.get_event(session)
A more useful example would be the following code which will wait for an event for the instance of Tenant with thename Bob and then print a message if the instance was deleted.:
bob = Tenant('Bob')bob.subscribe(session)while True:
if bob.has_events(session):bobs_event = bob.get_event(session)if bobs_event.is_deleted():
print('Bob was deleted')
4.4. Getting APIC objects 25
CHAPTER 5
Statistics
This documents gives an overview of the statistics.
5.1 Statistics
Statistics are gathered at each Interface according to the monitoring policy referenced by that Interface. See MonitorPolicy for details of the monitoring policy.
This section describes the statistic counters themselves.
5.1.1 Statistic Families
The statistics are broken into multiple statistic families and each family consists of a set of specific counters, ratevalues, and timestamps.
An enumerated list of statistic families is found in the MonitorStats class and can be found as follows:
>>>import acitoolkit.acitoolkit as ACI>>>statistic_family_list = ACI.MonitorStats.statsFamilyEnum>>>for statistic_family in statistic_family_list:... print statistic_family
The families are as follows:
• egrbytes
• egrPkts
• egrTotal
• egrDropPkts
• ingrBytes
• ingrPkts
27
acitoolkit Documentation, Release 0.1
• ingrTotal
• ingrDropPkts
• ingrUnkBytes
• ingrUnkPkts
• ingrStorm
5.1.2 Accessing Stats
Each statistic family is described in detail below and can be accessed via the stats object contained in theInterface object.
You first use the get() method to read the stats from the APIC controller.:
stats = interface.stats.get()
This will return a data structure that will allow each counter to be referenced by its name (see list above), a granularity,and an epoch number in the following manner:
counter = stats[<stats_family>][<granularity>][<epoch>][<counter_name>]
For example, if you wanted to show the per day total of ingress, unicast packets from the previous day you would dothe following:
stats = interface.stats.get()print stats['ingrPkts']['1h'][1]['unicastPer']
The specific counter names can be found at Statistics Detail.
Each counter family has an interval start and end value as well which can be used to understand exactly when thecounters were gathered.:
print('start', interface.stats['ingrPkts']['1h'][1]['intervalStart'])print('end', interface.stats['ingrPkts']['1h'][1]['intervalEnd'])
One thing to note about accessing the stats is that if a particular counter is not currently being kept by the APICcontroller, that particular counter will not be returned by the get() method. This means that you should either test forits existence before accessing it, or use the standard python dictionary get method to return a default value that yourcode can handle:
print stats['ingrPkts']['1h'][1].get('unicastPer',0)
A typical example of counters that may not exist would be for an epoch that is not being retained or a granularity thatis not be gathered.
One issue with the above is that some counters are floating point, some are integers and some are timestamps. Return-ing a default of zero can lead to inconsistent formatting. To work around this problem use the retrieve() methodthat will return the coutner value or a default value that is consistent. The format of the retrive method is as follows:
interface.stats.retrieve(<stats_family>,<granularity>,<epoch>,<counter_name>)
The get() method will load the counter values and then they are accessed by the retrieve method as follows:
interface.stats.get()print interface.stats.retrieve('ingrPkts','1h',1,'unicastPer')
28 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
Note that the result of the get() method was not used. It did cause a read of the stats from the APIC which are thenstored in the interface.stats object. After that, the interface.stats.retrieve() method will accessthose previously read counters. The retrieve() method will not refresh the counters.
5.1.2.1 aci-show-interface-stats.py
The interface stats can also be accessed via the simple python script aci-show-interface-stats.py. Thisscript has a couple of display options to customize the output.
A simple run of the script will display each interface in the network and a couple of selected stats for each:
python aci-show-interface-stats.py
The default display is for the 5min granularity and the current, i.e. 0, epoch. An alternative granularity can be selectedwith the -granularity command line option.:
python aci-show-interface-stats.py -granularity 1h
The epoch can be specified with the -epoch option.:
python aci-show-interface-stats.py -granularity 1h -epoch 3
A specific interface can be specified with the -interface option. This might be useful if there are a large numberof interfaces.:
python aci-show-interface-stats.py -g 1h -e 3 -interface 1/201/1/1
Note that we are also showing the abbreviated form of the other command line options. The above will show stats forpod 1, switch 201, slot 1, port 1.
If all of the stats for a given interface are desired, the -full option should be used.
python aci-show-interface-stats.py -g 1h -e 3 -i 1/201/1/1 -full
This last option will show only those stats that have been collected according to the monitoring policy. Also, note thatthis last option only works when the -interface option is also used.
5.1.3 Granularity
The <granularity>, also called “interval”, must be one of:
• 5min
• 15min
• 1h
• 1d
• 1w
• 1mo
• 1qtr
• 1year
An enumerated list of granularities is found in the CollectionPolicy class and can be found as follows:
5.1. Statistics 29
acitoolkit Documentation, Release 0.1
>>>import acitoolkit.acitoolkit as ACI>>>granularity_list = ACI.CollectionPolicy.granularityEnum>>>for granularity in granularity_list:... print granularity
5.1.4 Epoch
The <epoch> is an integer representing which set of historical stats you want to reference. Epoch 0 is the currentepoch which has not yet completed. Epoch 1 is the most recent one and so on. The length of each epoch is determinedby the granularity.
The number of epochs available will be determined by the retention policy and granularity specified in the monitoringpolicy and how long they have been in place.
For example, if the monitoring policy for a particular statistics family has a granularity of 5min and a retention policyof 1h and it has been in place for more than one hour, then there will be a total of 13 epochs, 0 through 12. Epoch 0will be the one currently active. Epoch 1 will be for the previous 5 minute interval. Epoch 2 will be for the 5 minuteinterval previous to epoch 1 and so on. At the beginning of the current Epoch, the values in Epoch 0 will be distortedbecause they are only for a fraction of that epoch (potentially a zero fraction) and the other 12 will represent an hourof history.
5.1.5 Update Frequency for current epoch
The current epoch, epoch 0, will be updated as it occurs, i.e. in near real-time. The interval that it updates depends onthe epoch, or interval, granularity.
Granularity Update frequency5min Every 10 seconds15min Every 5 minutes1h Every 15 minutes1d Every hour1w Every day1mo Every day1qtr Every day1year Every day
5.2 Statistics Detail
The following are details about each of the counters
30 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.1 egrBytes
Name Type
Description
floodavg integer
Egress flood bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
floodCum integer
Egress flood bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
floodMax integer
Egress flood bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodMin integer
Egress flood bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodPer integer
Egress flood bytes total in periodThe total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
multicastAvg integer
Egress multicast bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastCum integer
Egress multicast bytescumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
multicastMax integer
Egress multicast bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastMin integer
Egress multicast bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastPer integer
Egress multicast bytes perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
floodRate float
Egress flood byte rateThis is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastRate float
Egress multicast byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastRateAvg float
Egress multicast byte rateaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. This value is in bytes persecond.
multicastRateMax float
Egress multicast byte ratemaximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.
multicastRateMin float
Egress multicast byte rateminimumThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
32 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.2 egrTotal
Name Type
Description
bytesAvg integer
Egress bytes averageThis is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
bytesCum integer
Egress bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
bytesMax integer
Egress bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
bytesMin integer
Egress bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
bytesPer integer
Egress bytes per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
bytesRate float
Egress byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
bytesRateAvg float
Egress byte rate average.This is the average value read bythe counterduring the collection interval. Thisvalue resetsto 0 at the beginning of eachinterval and is inbytes per second.
bytesRateMax float
Egress byte rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is in bytes per second.
bytesRateMin float
Egress byte rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in bytes persecond.
pktsAvg integer
Egress packets average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
pktsCum integer
Egress packets cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
pktsMax integer
Egress packets maximum valueread.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
pktsMin integer
Egress packets minimum valueread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
pktsPer integer
Egres packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
pktsRate float
Egress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
pktsRateAvg float
Egress packet rate average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. It is measured in packetsper second.
pktsRateMax float
Egress packet rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.
pktsRateMin float
Egress packet rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
34 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.3 ingrBytes
Name Type
Description
floodavg integer
Ingress flood bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
floodCum integer
Ingress flood bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
floodMax integer
Ingress flood bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodMin integer
Ingress flood bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodPer integer
Ingress flood bytes total in periodThe total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
multicastAvg integer
Ingress multicast bytes average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastCum integer
Ingress multicast bytescumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
multicastMax integer
Ingress multicast bytesmaximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastMin integer
Ingress multicast bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastPer integer
Ingress multicast bytes perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
floodRate float
Ingress flood byte rateThis is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastRate float
Ingress multicast byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastRateAvg float
Ingress multicast byte rateaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. This value is in bytes persecond.
multicastRateMax float
Ingress multicast byte ratemaximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.
multicastRateMin float
Ingress multicast byte rateminimumThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
36 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.4 ingrTotal
Name Type
Description
bytesAvg integer
Ingress bytes averageThis is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
bytesCum integer
Ingress bytes cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
bytesMax integer
Ingress bytes maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
bytesMin integer
Ingress bytes minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
bytesPer integer
Ingress bytes per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
bytesRate float
Ingress byte rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
bytesRateAvg float
Ingress byte rate average.This is the average value read bythe counterduring the collection interval. Thisvalue resetsto 0 at the beginning of eachinterval and is inbytes per second.
bytesRateMax float
Ingress byte rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is in bytes per second.
bytesRateMin float
Ingress byte rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in bytes persecond.
pktsAvg integer
Ingress packets average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
pktsCum integer
Ingress packets cumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
pktsMax integer
Ingress packets maximum valueread.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
pktsMin integer
Ingress packets minimum valueread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
pktsPer integer
Egres packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
pktsRate float
Ingress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
pktsRateAvg float
Ingress packet rate average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. It is measured in packetsper second.
pktsRateMax float
Ingress packet rate maximum.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.
pktsRateMin float
Ingress packet rate minimum.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. It is measured in packetsper second.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
38 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.5 egrPkts
Name Type
Description
floodAvg integer
Egress flood average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
floodCum integer
Egress flood cumulative packets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
floodMax integer
Egress flood maximum packets.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodMin integer
Egress flood minimum packets.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodPer integer
Egress flood packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
floodRate float
Egress flood packets rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastAvg integer
Egress multicast packet average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastCum integer
Egress multicast cumulativepackets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
multicastMax integer
Egress multicast packetsmaximum read.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastMin integer
Egress multicast packetsminimum read.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastPer integer
Egress multicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
multicastRate float
Egress multicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastAvg integer
Egress unicast average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastCum integer
Egress unicast packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
unicastMax integer
Egress unicast packets maximumread.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
unicastMin integer
Egress unicast packets minimumread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
unicastPer integer
Egress unicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
unicastRate float
Egress unicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
40 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.6 ingrPkts
Name Type
Description
floodAvg integer
Ingress flood average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
floodCum integer
Ingress flood cumulative packets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
floodMax integer
Ingress flood maximum packets.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodMin integer
Ingress flood minimum packets.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
floodPer integer
Ingress flood packets per interval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
floodRate float
Ingress flood packets rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastAvg integer
Ingress multicast packet average.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
multicastCum integer
Ingress multicast cumulativepackets.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
multicastMax integer
Ingress multicast packetsmaximum read.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastMin integer
Ingress multicast packetsminimum read.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
multicastPer integer
Ingress multicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
multicastRate float
Ingress multicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastAvg integer
Ingress unicast average packets.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastCum integer
Ingress unicast packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
unicastMax integer
Ingress unicast packetsmaximum read.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
unicastMin integer
Ingress unicast packets minimumread.This is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
unicastPer integer
Ingress unicast packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
unicastRate float
Ingress unicast packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
42 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.7 egrDropPkts
Name Type
Description
afdWredAvg integer
Egress packets dropped due toAFD or WRED.This is a count of the packetsdropped due to whichever activequeue managment mechanism isrunning in the switch, either AFDor WRED. This is the average valueread by the counter duringthe collection interval. Note thatthis value resets to 0 at thebeginning of each interval.
afdWredCum integer
Egress packets droppedcumulative due to AFD orWRED.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
afdWredMax integer
Egress packets dropped by AFDor WRED maximum value read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
afdWredMin integer
Egress packets dropped by AFDor WRED minimum value read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
afdWredPer integer
Egress packets dropped by AFDor WRED per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
afdWredRate float
Egress packets dropped by AFDor WRED rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
bufferAvg integer
Egress packets dropped due tobuffer full.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
bufferCum integer
Egress packets droppedcumulative due to buffer full.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
bufferMax integer
Egress packets dropped due tobuffer full maximum read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
bufferMin integer
Egress packets dropped due tobuffer full minimum read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
bufferPer integer
Egress packets dropped due tobuffer full per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
bufferRate float
Egress packets dropped due tobuffer full rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
errorAvg integer
Egress packets dropped due toerror.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
errorCum integer
Egress packets droppedcumulative due to error.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
errorMax integer
Egress packets dropped due toerror maximum read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
errorMin integer
Egress packets dropped due toerror minimum read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
errorPer integer
Egress packets dropped due toerror per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
errorRate float
Egress packets dropped due toerror rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
44 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.8 ingrDropPkts
Name Type
Description
bufferAvg integer
Ingress packets dropped due tobuffer full.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
bufferCum integer
Ingress packets droppedcumulative due to buffer full.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
bufferMax integer
Ingress packets dropped due tobuffer full max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
bufferMin integer
Ingress packets dropped due tobuffer full min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
bufferPer integer
Ingress packets dropped due tobuffer full per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
bufferRate float
Ingress packets dropped due tobuffer full rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
errorAvg integer
Ingress packets dropped due toerror.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
errorCum integer
Ingress packets droppedcumulative due to error.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
errorMax integer
Ingress packets dropped due toerror max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
errorMin integer
Ingress packets dropped due toerror min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
errorPer integer
Ingress packets dropped due toerror per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
errorRate float
Ingress packets dropped due toerror rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
forwardingAvg integer
Ingress packets dropped due toforwarding.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
forwardingCum integer
Ingress packets droppedcumulative due to forwarding.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
forwardingMax integer
Ingress packets dropped due toforwarding max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
forwardingMin integer
Ingress packets dropped due toforwarding min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
forwardingPer integer
Ingress packets dropped due toforwarding per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
forwardingRate float
Ingress packets dropped due toforwarding rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
lbAvg integer
Ingress packets dropped due toload balancing.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
lbCum integer
Ingress packets droppedcumulative due to load balancing.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
lbMax integer
Ingress packets dropped due toload balancing max read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
lbMin integer
Ingress packets dropped due toload balancing min read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
lbPer integer
Ingress packets dropped due toload balancing per interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
lbRate float
Ingress packets dropped due toload balancing rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
46 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.9 ingrUnkBytes
Name Type
Description
unclassifiedAvg integer
Ingress unclassified bytesaverage.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
unclassifiedCum integer
Ingress unclassified bytescumulative.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
unclassifiedMax integer
Ingress unclassified bytes maxvalue read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
unclassifiedMin integer
Ingress unclassified bytes minvalue read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
unclassifiedPer integer
Ingress unclassified bytes perinterval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
unclassifiedRate float
Ingress packet rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
unicastAvg integer
Ingress unknown unicast bytesaverage.This is the average value read bythe counter during thecollection interval. Note that thisvalue resets to 0 at thebeginning of each interval.
unicastCum integer
Ingress unknown unicast bytescumulative.The total sum of the values read.Note that this value continuesthrough each interval withoutresetting to zero.
unicastMax integer
Ingress unknown unicast bytesmax value read.This is the largest value read by thecounter during thecollection interval. This value isonly overwritten if the mostcurrent value is larger than theprevious value. For example, ifthe value of the first reading is 3and the value of the secondreading is 4, the previous value isoverwritten with 4. If thethird reading is smaller than 4, thevalue remains at 4. Notethat this value resets to 0 at thebeginning of each interval.
unicastMin integer
Ingress unknown unicast bytesmin value read.This is the smallest value read bythe counter during thecollection interval. This value isonly overwritten if the mostcurrent value is smaller than theprevious value. For example,if the value of the first reading is 3and the value of thesecond reading is 2, the previousvalue is overwritten with 2.If the third reading is larger than 2,the value remains at 2.Note that this value resets to 0 atthe beginning of eachinterval.
unicastPer integer
Ingress unknown unicast bytesper interval.The total sum of the values readduring the collection interval.Note that this value resets to 0 atthe beginning of eachinterval.
unicastRate float
Ingress packet rate.This is the rate of the counterduring the collection interval.The rate is calculated by dividingthe periodic value by thelength of the collection interval inseconds. Note that thisvalue resets to 0 at the beginning ofeach interval.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
48 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.10 ingrStorm
Name Type
Description
dropBytesAvg integer
Ingress ave bytes dropped due tostorm control.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
dropBytesCum integer
Ingress cum bytes dropped due tostorm controlThe total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
dropBytesMax integer
Ingress max bytes dropped due tostorm control.This is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval.
dropBytesMin integer
Ingress min bytes dropped due tostorm controlThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval.
dropBytesPer integer
Ingress bytes dropped perinterval due to stormcontrolThe total sum of the values readduring thecollection interval. Note that thisvalue resetsto 0 at the beginning of eachinterval.
dropBytesRate integer
Ingress byte drop rate due tostorm controlThis is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
dropBytesRateAvg integer
Ingress byte drop rate averagedue to stormcontrolThis is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval. This value is in bytes persecond.
dropBytesRateMax integer
Ingress byte drop rate max due tostorm controlThis is the largest value read by thecounterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue islarger than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 4, theprevious value isoverwritten with 4. If the thirdreading issmaller than 4, the value remains at4. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.
dropBytesRateMin integer
Ingress byte drop rate min due tostorm controlThis is the smallest value read bythe counterduring the collection interval. Thisvalue isonly overwritten if the most currentvalue issmaller than the previous value. Forexample, ifthe value of the first reading is 3and the valueof the second reading is 2, theprevious value isoverwritten with 2. If the thirdreading islarger than 2, the value remains at2. Note thatthis value resets to 0 at thebeginning of eachinterval. This value is in bytes persecond.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
50 Chapter 5. Statistics
acitoolkit Documentation, Release 0.1
5.2.11 ingrUnkPkts
Name Type
Description
unclassifiedAvg integer
Ingress unclassified packetsaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unclassifiedCum integer
Ingress unclassified packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
unclassifiedMax integer
Ingress unclassified packets maxvalue read.This is the largest value read by thecounterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is largerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 4, the previousvalue isoverwritten with 4. If the thirdreading is smallerthan 4, the value remains at 4. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unclassifiedMin integer
Ingress unclassified packets minvalue read.This is the smallest value read bythe counterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is smallerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 2, the previousvalue isoverwritten with 2. If the thirdreading is largerthan 2, the value remains at 2. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unclassifiedPer integer
Ingress unclassified packets perinterval.The total sum of the values readduring thecollection interval. Note that thisvalue resets to0 at the beginning of each interval.
unclassifiedRate float
Ingress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastAvg integer
Ingress unknown unicast packetsaverage.This is the average value read bythe counterduring the collection interval. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastCum integer
Ingress unknown unicast packetscumulative.The total sum of the values read.Note that thisvalue continues through eachinterval withoutresetting to zero.
unicastMax integer
Ingress unknown unicast packetsmax value read.This is the largest value read by thecounterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is largerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 4, the previousvalue isoverwritten with 4. If the thirdreading is smallerthan 4, the value remains at 4. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastMin integer
Ingress unknown unicast packetsmin value read.This is the smallest value read bythe counterduring the collection interval. Thisvalue is onlyoverwritten if the most currentvalue is smallerthan the previous value. Forexample, if the valueof the first reading is 3 and thevalue of thesecond reading is 2, the previousvalue isoverwritten with 2. If the thirdreading is largerthan 2, the value remains at 2. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
unicastPer integer
Ingress unknown unicast packetsper interval.The total sum of the values readduring thecollection interval. Note that thisvalue resets to0 at the beginning of each interval.
unicastRate float
Ingress packet rate.This is the rate of the counterduring thecollection interval. The rate iscalculated bydividing the periodic value by thelength of thecollection interval in seconds. Notethat thisvalue resets to 0 at the beginning ofeachinterval.
intervalStart time
Interval start time.Timestamp of when interval started.
intervalEnd time
Interval end time.Timestamp of when interval ended.
52 Chapter 5. Statistics
CHAPTER 6
API Reference
6.1 acitoolkit package
6.1.1 Submodules
6.1.1.1 acibaseobject module
This module implements the Base Class for creating all of the ACI Objects.
class acitoolkit.acibaseobject.BaseACIObject(name=None, parent=None)Bases: acitoolkit.aciSearch.AciSearch
This class defines functionality common to all ACI objects. Functions may be overwritten by inheriting classes.
Constructor initializes the basic object and should be called by the init routines of inheriting subclasses.
Parameters
• name – String containing the name of the object instance
• parent – Parent object within the acitoolkit object model.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
53
acitoolkit Documentation, Release 0.1
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
54 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
6.1. acitoolkit package 55
acitoolkit Documentation, Release 0.1
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
56 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
6.1. acitoolkit package 57
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
58 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acibaseobject.BaseACIPhysModule(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject
BaseACIPhysModule: base class for modules
Initialize the basic object. This should be called by the init routines of inheriting subclasses.
Parameters
• pod – pod id of module
• node – node id of module
• slot – slot id of module
• parent – optional parent object
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
Returns list of module objects derived from the specified apic_classes
get_serial()Returns the serial number. :returns: serial number string
get_slot()Gets slot id
Returns slot id
class acitoolkit.acibaseobject.BaseACIPhysObject(name=”, parent=None, pod=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Base class for physical objects
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
6.1. acitoolkit package 59
acitoolkit Documentation, Release 0.1
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
get_pod()Gets pod_id :returns: id of pod
get_serial()Gets serial number.
Returns serial number string
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
class acitoolkit.acibaseobject.BaseInterface(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Abstract class used to provide base functionality to other Interface classes.
get_port_channel_selector_json(port_name)Get the JSON for the Port Channel selector
60 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters port_name – String containing the port name
Returns Dictonary containing the JSON for the Port Channel selector
get_port_selector_json()Returns the port selector.
Returns
static is_dn_vpc(dn)Check if the DN is a VPC
Parameters dn – String containing the DN
Returns True if the the DN is a VPC. False otherwise.
class acitoolkit.acibaseobject.BaseRelation(item, status, relation_type=None)Bases: object
Class for all basic relations.
A relation consists of the following elements:
Parameters
• item – The object to which the relationship applies
• status – The status of the relationship. Valid values are ‘attached’ and ‘detached’
• relation_type – Optional additional information to distinguish the relationship. Usedin cases where more than 1 type of relation exists.
is_attached()
Returns True or False indicating whether the relation is attached. If a relation is detached, itwill be deleted from the APIC when the configuration is pushed.
is_detached()
Returns True or False indicating whether the relation is detached. If a relation is detached, itwill be deleted from the APIC when the configuration is pushed.
set_as_detached()Sets the relation status to ‘detached’
6.1.1.2 aciphysobject module
6.1. acitoolkit package 61
acitoolkit Documentation, Release 0.1
API Reference
PhysicalModel
Pod
ExternalSwitch Link Node
Powersupply Linecard Supervisorcard Fantray Systemcontroller
Interface Fan
ACI Toolkit module for physical objects
class acitoolkit.aciphysobject.Cluster(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Represents the global settings of the Cluster
Parameters name – String containing the name of this Cluster object.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
62 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the Clusters from the APIC.
Returns Instance of Cluster class.
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_apics()
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
6.1. acitoolkit package 63
acitoolkit Documentation, Release 0.1
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
get_cluster_size()reads information about the APIC cluster :return:
get_config_size()
Returns configured size of the cluster, i.e. # of APICs
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
64 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
6.1. acitoolkit package 65
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
66 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
6.1. acitoolkit package 67
acitoolkit Documentation, Release 0.1
class acitoolkit.aciphysobject.ExternalSwitch(name=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject
External Node. This class is for switch nodes that are connected to the pod, but are not ACI nodes, i.e. are notunder control of the APIC. Examples would be external layer 2 switches, external routers, or hypervisor basedswitches.
This class will look as much as possible like the Node class recognizing that not as much information is availableto the APIC about them as is available about ACI nodes. Nearly all of the information used to create this classcomes from LLDP.
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
68 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the loose nodes from the APIC.
Parameters
• session – APIC session
• parent – optional parent object of type Topology
Returns list of ENodes
getRole()retrieves the node role :returns: role
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
6.1. acitoolkit package 69
acitoolkit Documentation, Release 0.1
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)not yet fully implemented
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
70 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_node()Gets node id
Returns id of node
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Gets serial number.
Returns serial number string
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
6.1. acitoolkit package 71
acitoolkit Documentation, Release 0.1
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
72 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
roleGetter for role. :return: role
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
6.1. acitoolkit package 73
acitoolkit Documentation, Release 0.1
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Fabric(session=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
This is the root class for the acitoolkit. It is a container that can hold all of the other instances of the acitoolkitclasses.
From this class, you can populate all of the children classes.
Initialization method that sets up the Fabric. :return:
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
74 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get(session)
Parameters session –
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(session, include_concrete=False)Will return the entire tree of the fabric. :param session: APIC session to use :param include_concrete: flagto indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
6.1. acitoolkit package 75
acitoolkit Documentation, Release 0.1
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
76 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
6.1. acitoolkit package 77
acitoolkit Documentation, Release 0.1
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
78 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Fan(parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule
Class for the fan of a fan tray
Initialize the basic fan.
Parameters parent – optional parent Fantray object
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
6.1. acitoolkit package 79
acitoolkit Documentation, Release 0.1
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the fans from the APIC. If parent is specified, it will only get fantrays that are children of thethe parent. The fantrays will also be added as children to the parent Node.
The fan object is derived mostly from the APIC ‘eqptFan’ class.
Parameters
• session – APIC session
• parent – optional parent fantray of class Fantray
Returns list of fans
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
80 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
6.1. acitoolkit package 81
acitoolkit Documentation, Release 0.1
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
Returns list of module objects derived from the specified apic_classes
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Returns the serial number. :returns: serial number string
get_slot()Gets slot id
Returns slot id
static get_table(modules, title=”)Will create table of fantry information :param title: :param modules:
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
82 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
6.1. acitoolkit package 83
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
84 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Fantray(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule
Class for the fan tray of a node
Initialize the basic object. It will create the name of the fan tray and set the type before calling the base class__init__ method :param pod: pod id :param node: node id :param slot: slot id :param parent: optional parentobject
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
6.1. acitoolkit package 85
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the fantrays from the APIC. If parent is specified, it will only get fantrays that are children ofthe the parent. The fantrays will also be added as children to the parent Node.
The fantray object is derived mostly from the APIC ‘eqptFt’ class.
Parameters
• session – APIC session
• parent – optional parent switch of class Node
Returns list of fantrays
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
86 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
6.1. acitoolkit package 87
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
Returns list of module objects derived from the specified apic_classes
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Returns the serial number. :returns: serial number string
get_slot()Gets slot id
Returns slot id
static get_table(modules, title=”)Will create table of fantry information :param title: :param modules:
get_tags()Get the tags assigned to this object.
88 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
6.1. acitoolkit package 89
acitoolkit Documentation, Release 0.1
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
90 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Interface(interface_type, pod, node, module, port, par-ent=None, session=None, attributes=None)
Bases: acitoolkit.acibaseobject.BaseInterface
This class defines a physical interface.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
classmethod create_from_name(name)
6.1. acitoolkit package 91
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
disable_cdp()Disables CDP on this interface.
disable_lldp()Disables LLDP on this interface.
enable_cdp()Enables CDP on this interface.
enable_lldp()Enables LLDP on this interface.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, pod_parent=None, node=None, module=None, port=None)Gets all of the physical interfaces from the APIC if no parent is specified. If a parent of type Linecard isspecified, then only those interfaces on that linecard are returned and they are also added as children tothat linecard.
If the pod, node, module and port are specified, then only that specific interface is read.
If the pod and node are specified, then only those interfaces are read
Parameters
• session – the instance of Session used for APIC communication
• pod_parent – Linecard instance to limit interfaces or pod number (optional)
• node – Node id string. This specifies the switch to read. (optional)
• module – Module id string. This specifies the module or slot of the port. (optional)
• port – Port number. This is the port to read. (optional)
Returns list of Interface instances
get_adjacent_port()This will return the port ID of the port at the other end of the link.
92 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
For Access ports, it will only have a result if it is connected to a controller node.
If no link is found, then the result will be None. That does not mean that nothing is connected, just that afabric link is not connected.
:returns : Port ID string
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
6.1. acitoolkit package 93
acitoolkit Documentation, Release 0.1
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Get the json for an interface. Returns a tuple since the json is required to be sent in multiple posts. A callto get_url will return the URLs which the JSON can be sent.
Returns Tuple containing the phys_domain, fabric, infra JSONs
get_parent()
Returns Parent of this object.
get_port_channel_selector_json(port_name)Get the JSON for the Port Channel selector
Parameters port_name – String containing the port name
Returns Dictonary containing the JSON for the Port Channel selector
get_port_selector_json()Returns the port selector.
Returns
94 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_serial()getter for the serial number
Returns None
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()getter method for object.type
Returns the type
static get_url()Gets URLs for physical domain, fabric, and infra.
Returns
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
6.1. acitoolkit package 95
acitoolkit Documentation, Release 0.1
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_cdp_disabled()Returns whether this interface has CDP configured as disabled.
Returns True or False
is_cdp_enabled()Returns whether this interface has CDP configured as enabled.
Returns True or False
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_dn_vpc(dn)Check if the DN is a VPC
Parameters dn – String containing the DN
Returns True if the the DN is a VPC. False otherwise.
is_interface()Returns whether this instance is considered an interface.
Returns True
is_lldp_disabled()Returns whether this interface has LLDP configured as disabled.
Returns True or False
is_lldp_enabled()Returns whether this interface has LLDP configured as enabled.
Returns True or False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
96 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
classmethod parse_dn(dn)Parses the pod, node, module, port from a distinguished name of the interface.
Parameters dn – String containing the interface distinguished name
Returns interface_type, pod, node, module, port
static parse_name(name)Parses a name that is of the form: <type> <pod>/<mod>/<port> :param name: Distinguished Name (dn)
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
push_to_apic(session)Push the configuration to the APIC
Parameters session – the instance of Session used for APIC communication
Returns Response class instance from the requests library. response.ok is True if request is sentsuccessfully.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
6.1. acitoolkit package 97
acitoolkit Documentation, Release 0.1
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Linecard(arg0=None, arg1=None, slot=None, par-ent=None)
Bases: acitoolkit.acibaseobject.BaseACIPhysModule
class for a linecard of a switch
Initialize the basic object. It will create the name of the linecard and set the type before calling the base class__init__ method. If arg1 is an instance of a Node, then pod, and node are derived from the Node and the slot_idis from arg0. If arg1 is not a Node, then arg0 is the pod, arg1 is the node id, and slot is the slot_id
In other words, this Linecard object can either be initialized by
>>> lc = Linecard(slot_id, parent_switch)
or
>>> lc = Linecard(pod_id, node_id, slot_id)
or
>>> lc = Linecard(pod_id, node_id, slot_id, parent_switch)
Parameters
• arg0 – pod_id if arg1 is a node_id, slot_id if arg1 is of type Node
• arg1 – node_id string or parent Node of type Node
• slot – slot_id if arg1 is node_id Not required if arg1 is a Node
• parent – parent switch of type Node. Not required if arg1 is used instead.
Returns None
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
98 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
6.1. acitoolkit package 99
acitoolkit Documentation, Release 0.1
classmethod get(session, parent=None)Gets all of the linecards from the APIC. If parent is specified, it will only get linecards that are children ofthe the parent. The linecards will also be added as children to the parent Node.
The lincard object is derived mostly from the APIC ‘eqptLC’ class.
Parameters
• session – APIC session
• parent – optional parent of class Node
Returns list of linecards
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
100 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
6.1. acitoolkit package 101
acitoolkit Documentation, Release 0.1
Returns list of module objects derived from the specified apic_classes
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Returns the serial number. :returns: serial number string
get_slot()Gets slot id
Returns slot id
static get_table(linecards, super_title=”)Will create table of line card information :param super_title: :param linecards:
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
102 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
6.1. acitoolkit package 103
acitoolkit Documentation, Release 0.1
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Link(name=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject
Link class, equivalent to the fabricLink object in APIC
Parameters parent – optional parent object
104 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
6.1. acitoolkit package 105
acitoolkit Documentation, Release 0.1
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent_pod=None, node_id=None)Gets all of the Links from the APIC. If the parent_pod is specified, only links of that pod will be retrieved.If the parent_pod is a Pod object then the links will be added as children of that pod.
If node is specified, then only links of that originate at the specific node will be returned. If node isspecified, pod must be specified.
Parameters
• session – APIC session
• parent_pod – Optional parent Pod object or identifier string.
• node_id – Optional node number string
Returns list of links
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
106 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
get_node1()Returns the Node object that corresponds to the first node of the link. The Node must be a child of the Pod
6.1. acitoolkit package 107
acitoolkit Documentation, Release 0.1
that this link is a member of, i.e. it must already have been read from the APIC. This can most easily bedone by populating the entire physical heirarchy from the Pod down.
Returns Node object at first end of link
get_node2()Returns the Node object that corresponds to the second node of the link. The Node must be a child of thePod that this link is a member of, i.e. it must already have been read from the APIC. This can most easilybe done by populating the entire physical heirarchy from the Pod down.
Returns Node object at second end of link
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_port1()Returns the Interface object that corresponds to the first port of the link. The port must be a child of theLinecard in the Node in the Pod that this link is a member of, i.e. it must already have been read from theAPIC. This can most easily be done by populating the entire physical heirarchy from the Pod down.
Returns Interface object at first end of link
get_port2()Returns the Interface object that corresponds to the second port of the link. The port must be a child of theLinecard in the Node in the Pod that this link is a member of, i.e. it must already have been read from theAPIC. This can most easily be done by populating the entire physical heirarchy from the Pod down.
Returns Interface object at second end of link
get_port_id1()Returns the port ID of the first end of the link in the format pod/node/slot/port
Returns port ID string
get_port_id2()Returns the port ID of the second end of the link in the format pod/node/slot/port
Returns port ID string
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Gets serial number.
Returns serial number string
get_slot1()Returns the Linecard object that corresponds to the first slot of the link. The Linecard must be a child ofthe Node in the Pod that this link is a member of, i.e. it must already have been read from the APIC. Thiscan most easily be done by populating the entire physical heirarchy from the Pod down.
Returns Linecard object at first end of link
get_slot2()
Returns the Linecard object that corresponds to the second slot of the link. The Linecard must be achild of
108 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
the Node in the Pod that this link is a member of, i.e. it must already have been read from the APIC. Thiscan most easily be done by populating the entire physical heirarchy from the Pod down.
Returns Linecard object at second end of link
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
6.1. acitoolkit package 109
acitoolkit Documentation, Release 0.1
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
110 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Node(name=None, pod=None, node=None, role=None, par-ent=None)
Bases: acitoolkit.acibaseobject.BaseACIPhysObject
Node : roughly equivalent to fabricNode
Parameters
• pod – String representation of the pod number
• node – String representation of the node number
• name – Name of the node
• role – Role of the node. Valid roles are None, ‘spine’, ‘leaf’, ‘controller’, ‘loosenode’
• parent – Parent pod object of the node.
6.1. acitoolkit package 111
acitoolkit Documentation, Release 0.1
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
112 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, node_id=None)Gets all of the Nodes from the APIC. If the parent pod is specified, only nodes of that pod will be retrieved.
If parent pod and node_id is specified, only the matching switch will be retrieved.
APIC controller nodes will have a ‘role’ of ‘controller’, while switch nodes will have a ‘role’ of ‘leaf’ or‘spine’
Parameters
• session – APIC session
• parent – optional parent object or pod_id
• node_id – optional node_id of switch
Returns list of Nodes
getFabricSt()retrieves the fabric state.
Returns fabric state
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_chassis_type()Returns the chassis type of this node. The chassis type is derived from the model number. This is a chassistype that is compatible with Cisco’s Cable Plan XML.
Returns chassis type of node of type str
6.1. acitoolkit package 113
acitoolkit Documentation, Release 0.1
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_firmware(working_data)retrieves firmware version :param working_data:
get_from_json(data, parent=None)returns a Tenant object from a json
get_health()This will get the health of the switch node
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
114 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_role()retrieves the node role :returns: role
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Gets serial number.
Returns serial number string
static get_table(switches, title=”)Creates report of basic switch information :param switches: Array of Node objects :param title: optionaltitle for this table
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
6.1. acitoolkit package 115
acitoolkit Documentation, Release 0.1
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
116 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
operStchanged value to “oper_st” so this makes the class backward compatible :return:
populate_children(deep=False, include_concrete=False)Will populate all of the children modules such as linecards, fantrays and powersupplies, of the node.
Parameters
• deep – boolean that when true will cause the entire sub-tree to be populated. When false,only the immediate children are populated
• include_concrete – boolean to indicate that concrete objects should also be popu-lated
Returns List of children objects
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
6.1. acitoolkit package 117
acitoolkit Documentation, Release 0.1
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.PhysicalModel(session=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
This is the root class for the physical part of the network. It’s corrolary is the LogicalModel class. It is acontainer that can hold all of physical model instances. Initially this is only an instance of Pod.
From this class, you can populate all of the children classes.
Initialization method that sets up the Fabric. :return:
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
118 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session=None, parent=None)Method to get all of the PhysicalModels. It will get one and return it in a list. :param session: :paramparent: :return: list of PhysicalModel
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
6.1. acitoolkit package 119
acitoolkit Documentation, Release 0.1
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
120 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
6.1. acitoolkit package 121
acitoolkit Documentation, Release 0.1
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
122 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Pod(pod, dn=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysObject
Pod : roughly equivalent to fabricPod
Initialize the basic object. It will create the name of the pod and set the type before calling the base class __init__method. Typically the pod_id will be 1.
Parameters
• pod – pod id string
• dn – distinguished name
• parent – optional parent object
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
6.1. acitoolkit package 123
acitoolkit Documentation, Release 0.1
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the Pods from the APIC. Generally there will be only one.
Parameters
• parent – optional parent of class PhysicalModel
• session – APIC session
Returns list of Pods. Note that this will be a list even though there typically will only be oneitem in the list.
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
124 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
6.1. acitoolkit package 125
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Gets serial number.
Returns serial number string
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
126 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
6.1. acitoolkit package 127
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
128 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Powersupply(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule
class for a power supply in a node
Initialize the basic object. It will create the name of the powersupply and set the type before calling the baseclass __init__ method :param pod: pod id :param node: node id :param slot: slot id :param parent: optionalparent object
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
6.1. acitoolkit package 129
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the power supplies from the APIC. If parent is specified, it will only get power supplies that arechildren of the the parent. The power supplies will also be added as children to the parent Node.
The Powersupply object is derived mostly from the APIC ‘eqptPsu’ class.
Parameters
• session – APIC session
• parent – optional parent switch of class Node
Returns list of powersupplies
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
130 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
6.1. acitoolkit package 131
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
Returns list of module objects derived from the specified apic_classes
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Returns the serial number. :returns: serial number string
get_slot()Gets slot id
Returns slot id
static get_table(modules, super_title=”)Will create table of power supply information :param super_title: :param modules:
get_tags()Get the tags assigned to this object.
132 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
6.1. acitoolkit package 133
acitoolkit Documentation, Release 0.1
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
134 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.ProcessBases: acitoolkit.acibaseobject.BaseACIPhysObject
Class to hold information about a process running on a node - either switch or controller
Returns
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
6.1. acitoolkit package 135
acitoolkit Documentation, Release 0.1
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent)
Parameters
• session –
• parent –
Returns
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
136 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
6.1. acitoolkit package 137
acitoolkit Documentation, Release 0.1
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Gets serial number.
Returns serial number string
static get_table(aci_objects, title=’Process’)
Parameters
• aci_objects – list of process objects to build table for
• title – Title of the table
Returns Table
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
138 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
6.1. acitoolkit package 139
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
140 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Supervisorcard(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule
Class representing the supervisor card of a switch
Initialize the basic object. This should be called by the init routines of inheriting subclasses.
Parameters
• pod – pod id
• node – node id
• slot – slot id
• parent – optional parent object
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
6.1. acitoolkit package 141
acitoolkit Documentation, Release 0.1
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent_node=None)Gets all of the supervisor cards from the APIC. If parent is specified, it will only get the supervisor cardthat is a child of the the parent Node. The supervisor will also be added as a child to the parent Node.
The Supervisorcard object is derived mostly from the APIC ‘eqptSupC’ class.
If parent_node is a str, then it is the Node id of the switch for the supervisor.
Parameters
• session – APIC session
• parent_node – optional parent switch of class Node or the node id of a switch
Returns list of linecards
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
142 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
6.1. acitoolkit package 143
acitoolkit Documentation, Release 0.1
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
Returns list of module objects derived from the specified apic_classes
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Returns the serial number. :returns: serial number string
144 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_slot()Gets slot id
Returns slot id
static get_table(modules, super_title=”)Will create table of supervisor information :param super_title: :param modules:
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
6.1. acitoolkit package 145
acitoolkit Documentation, Release 0.1
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
146 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.aciphysobject.Systemcontroller(pod, node, slot, parent=None)Bases: acitoolkit.acibaseobject.BaseACIPhysModule
class of the motherboard of the APIC controller node
Initialize the basic object. It will create the name of the Systemcontroller and set the type before calling the baseclass __init__ method.
Parameters
• pod – pod id
• node – node id
• slot – slot id
• parent – optional parent object
add_child(child_obj)Add a child to the children list. All children must be unique so it will first delete the child if it alreadyexists.
6.1. acitoolkit package 147
acitoolkit Documentation, Release 0.1
Parameters child_obj – a child object to be added as a child to this object. This will be putinto the _children list.
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
classmethod check_parent(parent)If a parent is specified, it will check that it is the correct class of parent If not, then an exception is raised.:param parent: :return:
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, phys_obj)Check if an apic phys_obj exists on the APIC. Returns True if the phys_obj does exist.
Parameters
• session – APIC session to use when accessing the APIC controller.
• phys_obj – The object that you are checking for.
Returns True if the phys_obj exists, False if it does not.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
148 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get(session, parent=None)Gets all of the System controllers from the APIC. This information comes from the APIC ‘eqptBoard’class.
If parent is specified, it will only get system controllers that are children of the the parent. The systemcontrolles will also be added as children to the parent Node.
Parameters
• session – APIC session
• parent – parent Node
Returns list of Systemcontrollers
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(child_type=None)Returns the list of children. If childType is provided, then it will return all of the children of the matchingtype.
Parameters child_type – This optional parameter will cause this method to return onlythose children that match the type of childType. If this parameter is ommitted, then all of thechildren will be returned.
6.1. acitoolkit package 149
acitoolkit Documentation, Release 0.1
Returns list of children
classmethod get_deep(session, include_concrete=False)Will return the atk object and the entire tree under it. :param session: APIC session to use :param in-clude_concrete: flag to indicate that concrete objects should also be included :return:
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the object
Returns JSON of contained Interfaces
get_name()Gets name.
Returns Name string
get_node()Gets node id
Returns id of node
classmethod get_obj(session, apic_classes, parent_node)Gets all of the Nodes from the APIC. This is called by the module specific get() methods. The parameterspassed include the APIC object class, apic_classes, so that this will work for different kinds of modules.
Parameters
• parent_node – parent object or node id
• session – APIC session to use when retrieving the nodes
• apic_classes – The object class in APIC to retrieve
150 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns list of module objects derived from the specified apic_classes
get_parent()
Returns Parent of this object.
get_pod()Gets pod_id :returns: id of pod
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_serial()Returns the serial number. :returns: serial number string
get_slot()Gets slot id
Returns slot id
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_type()Gets physical object type
Returns type string of the object.
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no fmt parameter is specified, the format willbe ‘json’ otherwise it will return ‘/api/mo/uni.’ with the fmt string appended.
Parameters fmt – optional fmt string
Returns Nothing - physical objects are not modifiable
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
6.1. acitoolkit package 151
acitoolkit Documentation, Release 0.1
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
152 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
6.1. acitoolkit package 153
acitoolkit Documentation, Release 0.1
Returns List of subscribed classes
class acitoolkit.aciphysobject.WorkingData(session=None, toolkit_class=None, url=None,deep=False, include_concrete=False)
Bases: object
This class will hold the entire json tree from topSystem down, for a switch. The attributes of a specific classcan be retrieved in which case it will be as a list of objects. It will allow all children of an object to be retrievedresult is list of objects It will allow an instance of a class to be retrieved returned as a single object.
add(session=None, toolkit_class=None, url=None, deep=False, include_concrete=False)
Parameters
• session –
• toolkit_class –
• url –
• deep –
• include_concrete –
Returns
build_vnid_dictionary()Will build a dictionary that is indexed by vnid and will return context or bridge_domain and the name ofthat segment. :param self:
get_class(class_name)returns all the objects of a given class :param class_name: The name of the class you are looking for.
get_object(dname)Will return the object specified by dn. :param dname: Distinguished Name (dn)
get_subtree(class_name, dname)will return list of matching classes and their attributes
It will get all classes that are classes under dn. :param class_name: name of class you are looking for:param dname: Distinguished Name (dn)
Future Work
Future work items to be added to aciphysobject include:
• Add an events sub-object. This would work similarly to the stats object.
• Add a top level object called Topology that would have Pod as its child. This object would also contain devicesattached to the fabric, so called loose nodes, external links, and discovered end-points.
6.1.1.3 acisession module
This module contains the Session class that controls communication with the APIC.
class acitoolkit.acisession.Session(url, uid, pwd=None, cert_name=None, key=None,verify_ssl=False, appcenter_user=False, sub-scription_enabled=True, proxies=None, relo-gin_forever=False)
Bases: object
Session class This class is responsible for all communication with the APIC.
154 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• url – String containing the APIC URL such as https://1.2.3.4
• uid – String containing the username that will be used as part of the the APIC login cre-dentials.
• pwd – String containing the password that will be used as part of the the APIC login cre-dentials.
• cert_name – String containing the certificate name that will be used as part of the theAPIC certificate authentication credentials.
• key – String containing the private key file name that will be used as part of the the APICcertificate authentication credentials.
• verify_ssl – Used only for SSL connections with the APIC. Indicates whether SSLcertificates must be verified. Possible values are True and False with the default being False.
• appcenter_user – Set True when using certificate authentication from the context of anAPIC appcenter app
• proxies – Optional dictionary containing the proxies passed directly to the Requests li-brary
• relogin_forever – Boolean that when set to True will attempt to re-login forever re-gardless of the error returned from APIC.
close()Close the session
deregister_login_callback(callback_fn)Delete the registration of a callback function that was registered via the register_login_callback function.
Parameters callback_fn – function to be deregistered
get(url, timeout=None)Perform a REST GET call to the APIC.
Parameters url – String containing the URL that will be used to send the object data to theAPIC.
Returns Response class instance from the requests library. response.ok is True if request is sentsuccessfully. response.json() will return the JSON data sent back by the APIC.
get_event(url)Get an event for a particular URL. Used internally by the class and instance subscriptions.
Parameters url – URL string belonging to subscription
Returns Object belonging to the instance or class that the subscription was made.
get_event_count(url)Check the number of subscription events for a particular APIC URL
Parameters url – URL string belonging to subscription
Returns Interger number of events in event queue
has_events(url)Check if there are events for a particular URL. Used internally by the class and instance subscriptions.
Parameters url – URL string belonging to subscription
Returns True or False. True if an event exists for this subscription.
6.1. acitoolkit package 155
acitoolkit Documentation, Release 0.1
invoke_login_callbacks()Invoke registered callback functions when the session performs a successful relogin attempt after discon-necting from the APIC.
is_subscribed(url)Check if subscribed to events for a particular URL.
Parameters url – URL string to issue subscription
logged_in()Returns whether the session is logged in to the APIC
Returns True or False. True if the session is logged in to the APIC.
login(timeout=None)Initiate login to the APIC. Opens a communication session with the APIC using the python requests library.
Returns Response class instance from the requests library. response.ok is True if login is suc-cessful.
push_to_apic(url, data, timeout=None)Push the object data to the APIC
Parameters
• url – String containing the URL that will be used to send the object data to the APIC.
• data – Dictionary containing the JSON objects to be sent to the APIC.
Returns Response class instance from the requests library. response.ok is True if request is sentsuccessfully.
refresh_login(timeout=None)Refresh the login to the APIC
Parameters timeout – Integer containing the number of seconds for connection timeout
Returns Instance of requests.Response
register_login_callback(callback_fn)Register a callback function that will be called when the session performs a successful relogin attemptafter disconnecting from the APIC.
Parameters callback_fn – function to be called
resubscribe()Resubscribe to the current subscriptions. Used by the login thread after a re-login
Returns None
subscribe(url, only_new=False)Subscribe to events for a particular URL. Used internally by the class and instance subscriptions.
Parameters url – URL string to issue subscription
unsubscribe(url)Unsubscribe from events for a particular URL. Used internally by the class and instance subscriptions.
Parameters url – URL string to remove issue subscription
156 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
6.1.1.4 acitoolkit module
ContractSubject
OutputTerminal FilterInputTerminal
EPG
IPEndpoint
Tag
AttributeCriterion Endpoint
FilterEntry
AppProfile
OutsideL3
OutsideEPG
Taboo
Tenant
ContextContract BridgeDomainOutsideL2 ContractInterface
AnyEPG
OutsideNetwork
Fabric
LogicalModel PhysicalModel
SubnetOutsideL2EPG
Pod
ExternalSwitchLink Node
Powersupply Linecard Supervisorcard FantraySystemcontroller
Interface Fan
Main ACI Toolkit module This is the main module that comprises the ACI Toolkit.
class acitoolkit.acitoolkit.AnyEPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG
AnyEPG class, roughly equivalent to vz:Any
Parameters
• epg_name – String containing the name of this EPG
• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
consume(contract)Make this EPG consume a Contract
Parameters contract – Contract class instance to be consumed by this EPG.
Returns True
consume_cif(contract_interface)Make this EPG consume a ContractInterface
Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.
6.1. acitoolkit package 157
acitoolkit Documentation, Release 0.1
Returns True
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
does_consume(contract)Check if this EPG consumes a specific Contract
Parameters contract – Instance of Contract class to check if it is consumed by this EPG.
Returns True or False. True if the EPG does consume the Contract.
does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract
Parameters contract_interface –
Returns True or False. True if the EPG does consume the ContractInterface.
does_protect(taboo)Check if this EPG is protected by a specific Taboo.
Parameters taboo – Instance of Taboo class to check if it protects this EPG.
Returns True or False. True if the EPG is protected by the Taboo.
does_provide(contract)Check if this EPG provides a specific Contract.
Parameters contract – Instance of Contract class to check if it is provided by this EPG.
Returns True or False. True if the EPG does provide the Contract.
dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed
Parameters contract – Instance of Contract class to be no longer consumed by this EPG.
Returns True
dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed
Parameters contract_interface –
Returns True
dont_protect(taboo)Make this EPG not protected by a Taboo
Parameters taboo – Instance of Taboo class to no longer protect this EPG.
Returns True
dont_provide(contract)Make this EPG not provide a Contract
Parameters contract – Instance of Contract class to be no longer provided by this EPG.
158 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.
• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.
Returns List of CommonEPG instances (or EPG instances if called from EPG class)
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted
Returns List of Contract objects that are consumed by the EPG.
get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG
Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted
Returns List of ContractInterface objects that are consumed by the EPG.
6.1. acitoolkit package 159
acitoolkit Documentation, Release 0.1
get_all_protected(deleted=False)Get all of the Taboos protecting this EPG
Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted
Returns List of Taboo objects that are protecting the EPG.
get_all_provided(deleted=False)Get all of the Contracts provided by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted
Returns List of Contract objects that are provided by the EPG.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
160 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)
Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.
Returns List of Interface objects
get_json()Returns json representation of the EPG
Returns json dictionary of the EPG
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
6.1. acitoolkit package 161
acitoolkit Documentation, Release 0.1
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
162 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
protect(taboo)Make this EPG protected by a Taboo
Parameters taboo – Instance of Taboo class to protect this EPG.
Returns True
provide(contract)Make this EPG provide a Contract
Parameters contract – Instance of Contract class to be provided by this EPG.
Returns True
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
6.1. acitoolkit package 163
acitoolkit Documentation, Release 0.1
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.AppProfile(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
The AppProfile class is used to represent the Application Profiles within the acitoolkit object model. In theAPIC model, this class is roughly equivalent to the fvAp class.
Parameters
• name – String containing the Application Profile name
• parent – An instance of Tenant class representing the Tenant which contains this Appli-cation Profile.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
164 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, tenant)Gets all of the Application Profiles from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant used to limit the Application Profiles retreived from theAPIC
Returns List of AppProfile objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
6.1. acitoolkit package 165
acitoolkit Documentation, Release 0.1
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
166 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the AppProfile object.
Returns json dictionary of fvAp
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(app_profiles, title=”)Will create table of app_profile information for a given tenant
Parameters
• title –
• app_profiles –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
6.1. acitoolkit package 167
acitoolkit Documentation, Release 0.1
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
168 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.AttributeCriterion(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
AttributeCriterion : roughly equivalent to fvCrtrn
Initializes the AttributeCriterion with a name and optionally an EPG parent
Parameters
• name – String containing the AttributeCriterion name
6.1. acitoolkit package 169
acitoolkit Documentation, Release 0.1
• parent – Instance of the EPG class representing where this AttributeCriterion is defined
Returns Instance of AttributeCriterion class
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_ip_address(ip_addr)Add an IP address as an attribute
Parameters ip_addr – String containing the IP address
Returns None
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
170 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
6.1. acitoolkit package 171
acitoolkit Documentation, Release 0.1
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_ip_addresses()return the list of IP addresses
get_json()Returns JSON representation of the AttributeCriterion :return:
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
172 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
6.1. acitoolkit package 173
acitoolkit Documentation, Release 0.1
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
matchReturn the match property :return: String containing the match property. Possible values are ‘any’ or ‘all’
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
174 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.BGPSession(name, router_id=None, peer_ip=None,node_id=None)
Bases: acitoolkit.acibaseobject.BaseACIObject
Creates an BGP router interface that can be attached to a L3 interface. This interface defines the BGP AS,authentication, etc.
Parameters
• name – String containing the name of this BGPSession object.
• router_id – String containing the IPv4 router-id
• peer_ip – String containing the IP address of the BGP peer Default is None.
• node_id – String Containing the node-id (e.g. ‘101’)
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
6.1. acitoolkit package 175
acitoolkit Documentation, Release 0.1
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
176 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
6.1. acitoolkit package 177
acitoolkit Documentation, Release 0.1
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of BGPSession
Returns json dictionary of BGP Session
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
178 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
static is_bgp()
Returns True if this interface is an BGP interface. In the case of BGPSession instances, this isalways True.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
is_interface()Returns whether this instance is considered an interface.
Returns True
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
6.1. acitoolkit package 179
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
180 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.BaseContract(contract_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
BaseContract : Base class for Contracts and Taboos
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
6.1. acitoolkit package 181
acitoolkit Documentation, Release 0.1
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_filter_entries(direction=’bidirectional-only’)Get all of the filter entries contained within this Contract/Taboo
Parameters direction – String containing the type of filter entries to gather Valid values are‘bidirectional-only’, ‘input-only’, ‘output-only’, ‘all’ Default is ‘bidirectional-only’
Returns List of FilterEntry instances
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
182 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the contract
6.1. acitoolkit package 183
acitoolkit Documentation, Release 0.1
Returns json dictionary of the contract
get_parent()
Returns Parent of this object.
get_scope()Get the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
184 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
6.1. acitoolkit package 185
acitoolkit Documentation, Release 0.1
Returns None
set_scope(scope)Set the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’
Parameters scope – String containing one of the following ‘context’, ‘global’, ‘tenant’, or‘application-profile’
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.BaseMonitorClassBases: object
Base class for monitoring policies. These are methods that can be used on all monitoring objects.
add_collection_policy(coll_obj)Add a collection policy.
Parameters coll_obj – A collection policy object of type CollectionPolicy
add_stats(stat_obj)Adds a stats family object.
Parameters stat_obj – Statistics family object of type MonitorStats.
186 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
add_target(target_obj)Add a target object.
Parameters target_obj – target object of type MonitorTarget
get_parent()
Returns parent object
isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC
remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.
Parameters collection – CollectionPolicy to remove.
remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.
Parameters stats_family – Statistics family string.
remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.
Parameters target – target to remove.
set_description(description)
Sets the description of the MonitorStats.
Parameters description – String to use as the description
set_name(name)
Sets the name of the MonitorStats.
Parameters name – String to use as the name
class acitoolkit.acitoolkit.BaseSubnet(name, parent=None, address=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Base class for Subnet and OutsideNetwork
Parameters
• name – String containing the name of this instance.
• parent – An instance of the parent class.
• address – String containing the IP address. Can optionally be set later.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
6.1. acitoolkit package 187
acitoolkit Documentation, Release 0.1
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
addrSubnet address
Returns String containing the subnet default gateway IP address and mask e.g. “1.2.3.4/24”
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_addr()Get the subnet address
188 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns The subnet address as a string in the form of <ipaddr>/<mask>
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
6.1. acitoolkit package 189
acitoolkit Documentation, Release 0.1
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_scope()Get the subnet scope
Returns The subnet scope as a string
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
190 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
ipIP address of the subnet in the form of Address/mask e.g. 10.1.1.1/16
6.1. acitoolkit package 191
acitoolkit Documentation, Release 0.1
Returns String containing the IP address
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_addr(addr)Set the subnet address
Parameters addr – The subnet default gateway address as a string in the form of<ipaddr>/<mask>
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
192 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
set_scope(scope)Set the subnet scope
Parameters scope – String containing the subnet scope
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.BaseTerminal(terminal_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Base class for Input terminal and output terminal
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_filter(filter_obj)Add Filter to the Terminal, roughly equivalent to vzRsFiltAtt
Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theTerminal. Multiple Filters can be assigned to a single Terminal.
6.1. acitoolkit package 193
acitoolkit Documentation, Release 0.1
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
194 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
6.1. acitoolkit package 195
acitoolkit Documentation, Release 0.1
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_filters()Get all of the filters that are attached to this Terminal.
Returns List of Filter objects
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the Terminal Object
Returns json dictionary of the ContractSubject
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
196 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
6.1. acitoolkit package 197
acitoolkit Documentation, Release 0.1
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
198 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.BridgeDomain(bd_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
BridgeDomain : roughly equivalent to fvBD
Parameters
• bd_name – String containing the name of this BridgeDomain object.
• parent – An instance of Tenant class representing the Tenant which contains this Bridge-Domain.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_context(context)Set the Context for this BD
Parameters context – Context to assign this BridgeDomain
add_l3out(l3out)Set the L3Out for this BD
Parameters l3out – OutsideL3 to assign this BridgeDomain
add_subnet(subnet)Add a subnet to this BD.
Parameters subnet – Instance of Subnet class to add to this BridgeDomain.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
6.1. acitoolkit package 199
acitoolkit Documentation, Release 0.1
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, tenant)Gets all of the Bridge Domains from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant used to limit the BridgeDomain instances retreived fromthe APIC
Returns List of BridgeDomain objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_arp_flood()Get the ARP flooding policy for this BD
Returns a string containing the ARP flooding policy of the BridgeDomain
200 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
get_context()Get the Context for this BD
Returns Instance of Context class that this BridgeDomain is assigned.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
6.1. acitoolkit package 201
acitoolkit Documentation, Release 0.1
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
static get_from_json(self, data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the bridge domain
Returns json dictionary of bridge domain
get_l3out()
Returns List of OutsideL3 objects
get_mac()Get the mac address for the BD
Returns string containing the mac address of the BD (e.g. 00:22:BD:F8:19:FF)
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
get_subnets()Get all of the subnets on this BD.
Returns List of Subnet instances assigned to this BridgeDomain.
static get_table(bridge_domains, title=”)Will create table of context information
Parameters
• title –
• bridge_domains –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
get_unicast_route()Get the Unicast Routing policy for this BD
202 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns a string containing the unicast routing policy of the BridgeDomain
get_unknown_mac_unicast()Gets the unknown mac unicast for this BD
Returns unknown mac unicast of the BridgeDomain
get_unknown_multicast()Gets the unknown multicast for this BD
Returns unknown multicast of the BridgeDomain
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_context()Check if the Context has been set for this BD
Returns True or False. True if this BridgeDomain is assigned to a Context.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_l3out()Check if this BD has an OutsideL3 :return: True if the BD has an OutsideL3 configured. False, otherwise.
has_parent()returns True if this object has a parent
Returns bool
has_subnet(subnet)Check if the BD has this particular subnet.
Parameters subnet –
Returns True or False. True if this BridgeDomain has this particular Subnet.
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
6.1. acitoolkit package 203
acitoolkit Documentation, Release 0.1
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_arp_flood()Check if ARP flooding is enabled
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
is_unicast_route()Check if unicast routing is enabled
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_context()Remove the assigned Context from this BD
remove_subnet(subnet)Remove a subnet from this BD
204 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters subnet – Instance of Subnet class to remove from this BridgeDomain.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_arp_flood(arp_value)Set the ARP flood for this BD
Parameters arp_value – arp to assign this BridgeDomain
set_mac(mac)Set the mac address for the BD
Parameters mac – string mac address (XX:XX:XX:XX:XX:XX)
set_multidestination(multidestination)Set the multidestination flood policy for this BD
Parameters multidestination – policy to assign this BridgeDomain
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
set_unicast_route(route)Set the unicast route for this BD
Parameters route – route to assign this BridgeDomain
set_unknown_mac_unicast(unicast)Set the unknown mac unicast for this BD
Parameters unicast – Unicast to assign this BridgeDomain
set_unknown_multicast(multicast)Set the unknown multicast for this BD
Parameters multicast – Multicast to assign this BridgeDomain
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
6.1. acitoolkit package 205
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.CollectionPolicy(parent, granularity, retention, admin-State=’enabled’)
Bases: acitoolkit.acitoolkit.BaseMonitorClass
This class is a child of a MonitorPolicy object, MonitorTarget object or a MonitorStats object. It is wherethe statistics collection policy is actually specified. It applies to all of the statistics that are at the scope levelof the parent object, i.e. all, specific to a target, or specific to a statistics family. What is specified in theCollectionPolicy is the time granularity of the collection and how much history to retain. For example, thegranularity might be 5 minutes (5min) or 1 hour (1h). How much history to retain is similarly specified. Forexample you might specify that it be kept for 10 days (10d) or 2 years (2year).
If the CollectionPolicy is a child of a MonitorStats object, it can optionally have children that specify the policyfor raising threshold alarms on the fields in the stats family specified in the MonitorStats object. This has yet tobe implemented.
This object is roughly the same as the statsColl and statsHierColl objects in the APIC.
The CollectionPolicy must always be initialized with a parent object of type MonitorPolicy, Monitor-Target or MonitorStats. The granularity must also be specifically specified. The retention period canbe specified, set to “none”, or set to “inherited”. Note that the “none” value is a string, not the PythonNone. When the retention period is set to “none” there will be no historical stats kept. However,assuming collection is enabled, stats will be kept for the current time period.
If the retention period is set to “inherited”, the value will be inherited from the less specific policydirectly above this one. The same applies to the adminState value. It can be ‘disabled’, ‘enabled’, or‘inherited’. If ‘disabled’, the current scope of counters are not gathered. If enabled, they are gathered.If ‘inherited’, it will be according to the next higher scope.
Having the ‘inherited’ option on the retention and administrative status allows these items indepen-dently controlled at the current stats granularity. For example, you can specify that ingress unknownpackets are gathered every 15 minutes by setting adding a collection policy that specifies a 15 min-utes granularity and an adminState of ‘enabled’ under a MonitorStats object that sets the scope to beingress unknown packets. This might override a higher level policy that disabled collection at a 15minute interval. However, you can set the retention in that same object to be “inherited” so that thisspecific policy does not change the retention behavior from that of the higher, less specific, policy.
When the CollectionPolicy is a child at the top level, i.e. of the MonitorPolicy, the ‘inherited’ op-tion is not allowed because there is no higher level policy to inherit from. If this were to happen,‘inherited’ will be treated as ‘enabled’.
206 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• parent – Parent object that this collection policy should be applied to. This must be anobject of type MonitorStats, MonitorTarget, or MonitorPolicy.
• granularity – String specifying the time collection interval or granularity of this policy.Possible values are: [‘5min’, ‘15min’, ‘1h’, ‘1d’, ‘1w’, ‘1mo’, ‘1qtr’, ‘1year’].
• retention – String specifying how much history to retain the collected statistics for.The retention will be for time units of the granularity specified. Possible values are [‘none’,‘inherited’, ‘5min’, ‘15min’, ‘1h’, ‘1d’, ‘1w’, ‘10d’, ‘1mo’, ‘1qtr’, ‘1year’, ‘2year’, ‘3year’].
• adminState – Administrative status. String to specify whether stats should be collectedat the specified granularity. Possible values are [‘enabled’, ‘disabled’, ‘inherited’]. Thedefault if not specified is ‘enabled’.
add_collection_policy(coll_obj)Add a collection policy.
Parameters coll_obj – A collection policy object of type CollectionPolicy
add_stats(stat_obj)Adds a stats family object.
Parameters stat_obj – Statistics family object of type MonitorStats.
add_target(target_obj)Add a target object.
Parameters target_obj – target object of type MonitorTarget
get_parent()
Returns parent object
granularityEnum = ['5min', '15min', '1h', '1d', '1w', '1mo', '1qtr', '1year']
isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC
remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.
Parameters collection – CollectionPolicy to remove.
remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.
Parameters stats_family – Statistics family string.
remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.
Parameters target – target to remove.
retentionEnum = ['none', 'inherited', '5min', '15min', '1h', '1d', '1w', '10d', '1mo', '1qtr', '1year', '2year', '3year']
setAdminState(adminState)Sets the administrative status.
6.1. acitoolkit package 207
acitoolkit Documentation, Release 0.1
Parameters adminState – Administrative status. String to specify whether stats should becollected at the specified granularity. Possible values are [‘enabled’, ‘disabled’, ‘inherited’].The default if not specified is ‘enabled’.
setRetention(retention)
Sets the retention period.
Parameters retention – String specifying how much history to retain the collected statisticsfor. The retention will be for time units of the granularity specified. Possible values are[‘none’, ‘inherited’, ‘5min’, ‘15min’, ‘1h’, ‘1d’, ‘1w’, ‘10d’, ‘1mo’, ‘1qtr’, ‘1year’, ‘2year’,‘3year’].
set_description(description)
Sets the description of the MonitorStats.
Parameters description – String to use as the description
set_name(name)
Sets the name of the MonitorStats.
Parameters name – String to use as the name
class acitoolkit.acitoolkit.CommonEPG(epg_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Base class for EPG and OutsideEPG. Not meant to be instantiated directly
Parameters
• epg_name – String containing the name of this EPG
• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
consume(contract)Make this EPG consume a Contract
208 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters contract – Contract class instance to be consumed by this EPG.
Returns True
consume_cif(contract_interface)Make this EPG consume a ContractInterface
Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.
Returns True
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
does_consume(contract)Check if this EPG consumes a specific Contract
Parameters contract – Instance of Contract class to check if it is consumed by this EPG.
Returns True or False. True if the EPG does consume the Contract.
does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract
Parameters contract_interface –
Returns True or False. True if the EPG does consume the ContractInterface.
does_protect(taboo)Check if this EPG is protected by a specific Taboo.
Parameters taboo – Instance of Taboo class to check if it protects this EPG.
Returns True or False. True if the EPG is protected by the Taboo.
does_provide(contract)Check if this EPG provides a specific Contract.
Parameters contract – Instance of Contract class to check if it is provided by this EPG.
Returns True or False. True if the EPG does provide the Contract.
dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed
Parameters contract – Instance of Contract class to be no longer consumed by this EPG.
Returns True
dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed
Parameters contract_interface –
Returns True
6.1. acitoolkit package 209
acitoolkit Documentation, Release 0.1
dont_protect(taboo)Make this EPG not protected by a Taboo
Parameters taboo – Instance of Taboo class to no longer protect this EPG.
Returns True
dont_provide(contract)Make this EPG not provide a Contract
Parameters contract – Instance of Contract class to be no longer provided by this EPG.
Returns True
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.
• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.
Returns List of CommonEPG instances (or EPG instances if called from EPG class)
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG
210 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted
Returns List of Contract objects that are consumed by the EPG.
get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG
Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted
Returns List of ContractInterface objects that are consumed by the EPG.
get_all_protected(deleted=False)Get all of the Taboos protecting this EPG
Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted
Returns List of Taboo objects that are protecting the EPG.
get_all_provided(deleted=False)Get all of the Contracts provided by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted
Returns List of Contract objects that are provided by the EPG.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
6.1. acitoolkit package 211
acitoolkit Documentation, Release 0.1
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)
Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.
Returns List of Interface objects
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
212 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
6.1. acitoolkit package 213
acitoolkit Documentation, Release 0.1
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
protect(taboo)Make this EPG protected by a Taboo
Parameters taboo – Instance of Taboo class to protect this EPG.
Returns True
provide(contract)Make this EPG provide a Contract
Parameters contract – Instance of Contract class to be provided by this EPG.
Returns True
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
214 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Context(context_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Context : roughly equivalent to fvCtx
Parameters
• context_name – String containing the Context name
• parent – An instance of Tenant class representing the Tenant which contains this Context.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
6.1. acitoolkit package 215
acitoolkit Documentation, Release 0.1
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, tenant=None)Gets all of the Contexts from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant used to limit the Contexts retreived from the APIC
Returns List of Context objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
216 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_allow_all()Returns the allow_all value from this Context. When set, contracts will not be enforced in this context.
Returns True or False.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
6.1. acitoolkit package 217
acitoolkit Documentation, Release 0.1
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of fvCtx object
Returns json dictionary of fvCtx object
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(contexts, title=”)Will create table of context information
Parameters
• title –
• contexts –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
218 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
6.1. acitoolkit package 219
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_allow_all(value=True)Set the allow_all value. When set, contracts will not be enforced in this context.
Parameters value – True or False. Default is True.
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
220 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Contract(contract_name, parent=None)Bases: acitoolkit.acitoolkit.BaseContract
Contract : Class for Contracts
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
6.1. acitoolkit package 221
acitoolkit Documentation, Release 0.1
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, tenant)Gets all of the Contracts from the APIC for a particular tenant.
Parameters
• tenant –
• session –
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_consuming_epgs(deleted=False)Get all of the EPGs consuming this contract
Parameters deleted – Boolean indicating whether to get EPGs that are consuming or that theconsuming relationship was marked as deleted
Returns List of EPG instances
get_all_filter_entries(direction=’bidirectional-only’)Get all of the filter entries contained within this Contract/Taboo
Parameters direction – String containing the type of filter entries to gather Valid values are‘bidirectional-only’, ‘input-only’, ‘output-only’, ‘all’ Default is ‘bidirectional-only’
Returns List of FilterEntry instances
get_all_providing_epgs(deleted=False)Get all of the EPGs providing this contract
Parameters deleted – Boolean indicating whether to get EPGs that are providing or that theproviding relationship was marked as deleted
Returns List of EPG instances
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
222 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
6.1. acitoolkit package 223
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the contract
Returns json dictionary of the contract
get_parent()
Returns Parent of this object.
get_scope()Get the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(contracts, title=”)Will create of each contract
Parameters
• title –
• contracts –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
224 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
6.1. acitoolkit package 225
acitoolkit Documentation, Release 0.1
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
set_scope(scope)Set the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’
Parameters scope – String containing one of the following ‘context’, ‘global’, ‘tenant’, or‘application-profile’
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.ContractInterface(contractif_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
226 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
ContractInterface : roughly equivalent to vzCPIf
Parameters
• contractif_name – String containing the ContractInterface name
• parent – An instance of Tenant class representing the Tenant which contains this Con-tractInterface.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
does_import_contract(contract)Check if this ContractInterface imports a specific Contract.
Parameters contract – Instance of Contract class to check if it is imported by this Contract-Interface.
Returns True or False. True if the ContractInterface does import the Contract.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
6.1. acitoolkit package 227
acitoolkit Documentation, Release 0.1
Returns List of objects
classmethod get(session, tenant=None)Gets all of the ContractInterfaces from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant used to limit the ContractInterfaces retrieved from theAPIC
Returns List of ContractInterface objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
228 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_import_contract(deleted=False)Get the specific Contract that this ContractInterface is importing.
Parameters contract – Instance of Contract class that is imported by this ContractInterface.
Returns Contract class instance or None if not importing a contract
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of vzCPIf object
Returns json dictionary of vzCPIf object
get_parent()
Returns Parent of this object.
6.1. acitoolkit package 229
acitoolkit Documentation, Release 0.1
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_import_contract()Check if the ContractInterface has any imported Contract :return: True or False. True if the ContractInter-face does import a Contract.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
import_contract(contract)Set the Contract that is imported by this ContractInterface
230 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters contract – Instance of Contract
Returns None
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
6.1. acitoolkit package 231
acitoolkit Documentation, Release 0.1
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.ContractSubject(subject_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
ContractSubject : roughly equivalent to vzSubj
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_filter(filter_obj)Add Filter to the ContractSubject, roughly equivalent to vzRsSubjFiltAtt
Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theContractSubject. Multiple Filter can be assigned to a single ContractSubject.
232 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
6.1. acitoolkit package 233
acitoolkit Documentation, Release 0.1
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
234 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_filters(deleted=False)Get all of the filters that are attached to this ContractSubject.
Returns List of Filter objects
static get_from_json(self, data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the ContractSubject or TabooContractSubject
Returns json dictionary of the ContractSubject or TabooContractSubject
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
6.1. acitoolkit package 235
acitoolkit Documentation, Release 0.1
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
236 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
6.1. acitoolkit package 237
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.EPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG
EPG : roughly equivalent to fvAEPg
Initializes the EPG with a name and, optionally, an AppProfile parent. If the parent is specified and is not anAppProfile, an error will occur.
Parameters
• epg_name – String containing the name of the EPG.
• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.
add_bd(bridgedomain)Add BridgeDomain to the EPG, roughly equivalent to fvRsBd
Parameters bridgedomain – Instance of BridgeDomain class. Represents the BridgeDo-main that this EPG will be assigned. An EPG can only be assigned to a single BridgeDo-main.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_infradomain(infradomain)Add Infrastructure Domain to the EPG
Parameters infradomain – Instance of InfraDomain class.
add_static_leaf_binding(leaf_id, encap_type, encap_id, encap_mode=’regular’, immedi-acy=’lazy’, pod=1)
Adds a static leaf binding to this EPG.
Parameters
• leaf_id – Integer containing the node ID (e.g. 101)
• encap_type – String containing the encapsulation type. Valid values are ‘vlan’, ‘vxlan’,or ‘nvgre’.
• encap_id – String containing the encapsulation specific identifier representing the vir-tual L2 network (i.e. for VXLAN, this is the numeric value of the VNID).
238 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• encap_mode – String containing the encapsulation mode. Use
“regular” for normal dot1q tagged traffic, “untagged” for traffic reaching the leaf without any dot1q tags,and “native” for traffic tagged with a 802.1P tag.
Parameters
• immediacy – String containing either “immediate” or “lazy”
• pod – Integer containing the ACI Pod where the supplied leaf is located.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
consume(contract)Make this EPG consume a Contract
Parameters contract – Contract class instance to be consumed by this EPG.
Returns True
consume_cif(contract_interface)Make this EPG consume a ContractInterface
Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.
Returns True
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
does_consume(contract)Check if this EPG consumes a specific Contract
Parameters contract – Instance of Contract class to check if it is consumed by this EPG.
Returns True or False. True if the EPG does consume the Contract.
does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract
Parameters contract_interface –
6.1. acitoolkit package 239
acitoolkit Documentation, Release 0.1
Returns True or False. True if the EPG does consume the ContractInterface.
does_protect(taboo)Check if this EPG is protected by a specific Taboo.
Parameters taboo – Instance of Taboo class to check if it protects this EPG.
Returns True or False. True if the EPG is protected by the Taboo.
does_provide(contract)Check if this EPG provides a specific Contract.
Parameters contract – Instance of Contract class to check if it is provided by this EPG.
Returns True or False. True if the EPG does provide the Contract.
dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed
Parameters contract – Instance of Contract class to be no longer consumed by this EPG.
Returns True
dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed
Parameters contract_interface –
Returns True
dont_protect(taboo)Make this EPG not protected by a Taboo
Parameters taboo – Instance of Taboo class to no longer protect this EPG.
Returns True
dont_provide(contract)Make this EPG not provide a Contract
Parameters contract – Instance of Contract class to be no longer provided by this EPG.
Returns True
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.
Parameters
240 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.
• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.
Returns List of CommonEPG instances (or EPG instances if called from EPG class)
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_consumed(deleted=False, include_any_epg=False)Get all of the Contracts consumed by this EPG
Parameters
• deleted – Boolean indicating whether to get Contracts that are consumed or that theconsumed was marked as deleted
• include_any_epg – Boolean indicating whether to include Contracts that are con-sumed due to inheritance from an AnyEPG within the same Context that this EPG is in.
Returns List of Contract objects that are consumed by the EPG.
get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG
Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted
Returns List of ContractInterface objects that are consumed by the EPG.
get_all_protected(deleted=False)Get all of the Taboos protecting this EPG
Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted
Returns List of Taboo objects that are protecting the EPG.
get_all_provided(deleted=False, include_any_epg=False)Get all of the Contracts provided by this EPG
Parameters
• deleted – Boolean indicating whether to get Contracts that are provided or that theprovided was marked as deleted
• include_any_epg – Boolean indicating whether to include Contracts that are provideddue to inheritance from an AnyEPG within the same Context that this EPG is in.
6.1. acitoolkit package 241
acitoolkit Documentation, Release 0.1
Returns List of Contract objects that are provided by the EPG.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_bd()Return the assigned BridgeDomain. There should only be one item in the returned list.
Returns List of BridgeDomain objects
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
242 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
static get_from_json(self, data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)
Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.
Returns List of Interface objects
get_json()Returns json representation of the EPG
Returns json dictionary of the EPG
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(epgs, title=”)Will create table of EPG information for a given tenant
Parameters
• epgs –
• title –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_bd()Check if a BridgeDomain has been assigned to the EPG
Returns True or False. True if the EPG has been assigned a BridgeDomain.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
6.1. acitoolkit package 243
acitoolkit Documentation, Release 0.1
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_attributed_basedGet whether the EPG is attribute based :return: True if attribute based. False otherwise.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
244 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
protect(taboo)Make this EPG protected by a Taboo
Parameters taboo – Instance of Taboo class to protect this EPG.
Returns True
provide(contract)Make this EPG provide a Contract
Parameters contract – Instance of Contract class to be provided by this EPG.
Returns True
remove_bd()Remove BridgeDomain from the EPG. Note that there should only be one BridgeDomain attached to theEPG.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_base_epg(epg)Sets the Base EPG. Used by Attribute-based EPGs to indicate that the BridgeDomain, NodeAttach, andPathAttach relations should be copied from the base EPG when generating JSON.
Parameters epg – EPG class instance of the Base EPG
Returns None
set_deployment_immediacy(immediacy)Set the deployment immediacy of the EPG
Parameters immediacy – String containing either “immediate” or “lazy”
set_dom_deployment_immediacy(immediacy)Set the deployment immediacy for PhysDomain of the EPG
Parameters immediacy – String containing either “immediate” or “lazy”
6.1. acitoolkit package 245
acitoolkit Documentation, Release 0.1
set_dom_resolution_immediacy(immediacy)Set the resolution immediacy for PhysDomain of the EPG
Parameters immediacy – String containing either “immediate” or “lazy”
set_intra_epg_isolation(isolation)Set the intra-EPG isolation of the EPG
Parameters isolation – String containing either “unenforced” or “enforced”
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.EPGDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
EPGDomain class
Parameters
246 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• name – String containing the name of a source relation to an infrastructure domain profileassociated with application endpoint groups. The domain profile can be either a VMMdomain profile or a physical domain profile.
• parent – An instance of EPG class representing the EPG which contains this DomainProfile.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)Gets all of the Physical Domains from the APIC
Parameters session – the instance of Session used for APIC communication
Returns List of Switch Profile objects
6.1. acitoolkit package 247
acitoolkit Documentation, Release 0.1
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
classmethod get_by_name(session, infra_name)Gets all of the Physical Domains from the APIC
Parameters
• infra_name –
• session – the instance of Session used for APIC communication
Returns List of Switch Profile objects
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
248 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the fvTenant object
Returns A json dictionary of fvTenant
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
6.1. acitoolkit package 249
acitoolkit Documentation, Release 0.1
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
250 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
6.1. acitoolkit package 251
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Endpoint(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
Endpoint class
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
252 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
static get(session, endpoint_name=None)Gets all of the endpoints connected to the fabric from the APIC
Parameters
• endpoint_name –
• session – Session instance used to communicate with the APIC. Assumed to be loggedin
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
classmethod get_all_by_epg(session, tenant_name, app_name, epg_name,with_interface_attachments=True)
Get all of the Endpoints for a specified EPG
Parameters
• session – Session instance used to communicate with the APIC. Assumed to be loggedin
• tenant_name – String containing the tenant name
• app_name – String containing the app name
• epg_name – String containing the epg name
• with_interface_attachments – Boolean indicating whether interfaces should beattached or not. True is default.
Returns List of Endpoint instances
6.1. acitoolkit package 253
acitoolkit Documentation, Release 0.1
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session, with_relations=True)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
254 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(endpoints, title=”)Will create table of taboo information for a given tenant
Parameters
• title –
• endpoints –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
6.1. acitoolkit package 255
acitoolkit Documentation, Release 0.1
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
256 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
6.1. acitoolkit package 257
acitoolkit Documentation, Release 0.1
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.FexInterface(if_type, pod, node, fex, module, port)Bases: acitoolkit.acibaseobject.BaseACIObject
This class describes a physical interface on a FEX device
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
258 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
6.1. acitoolkit package 259
acitoolkit Documentation, Release 0.1
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
260 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
6.1. acitoolkit package 261
acitoolkit Documentation, Release 0.1
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
classmethod is_dn_a_fex_interface(dn)
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
classmethod parse_dn(dn)Parse the pod, node, interface name from the dn :param dn: String containing the interface DN :return:Tuple consisting of if_type, pod, node, fex, module, port
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
262 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Filter(filter_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Filter : roughly equivalent to vzFilter
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
6.1. acitoolkit package 263
acitoolkit Documentation, Release 0.1
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, tenant)Gets all of the Filters for the current tenant from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant used to limit the Filters retreived from the APIC
Returns List of Filter objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
264 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
classmethod get_by_name_and_tenant(session, tenant, filter_name)Returns the Filter Object with name == filter_name and tenant == tenant
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant used to limit the search scope
• filter_name – the searched Filter Object
Returns a single Filter Object
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
6.1. acitoolkit package 265
acitoolkit Documentation, Release 0.1
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
static get_from_json(self, data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the Filter
Returns json dictionary of the Filter
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
266 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
has_entry(applyToFrag, arpOpc, dFromPort, dToPort, etherT, prot, sFromPort, sToPort, tcpRules,stateful, icmpv4T=’not-given’, icmpv6T=’not-given’)
Returns whether or not the Filter has a FilterEntry. All fields are compared except name.
Returns True if the Filter has a matching FilterEntry. False otherwise
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
6.1. acitoolkit package 267
acitoolkit Documentation, Release 0.1
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
268 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.FilterEntry(name, parent, applyToFrag=’0’, arpOpc=’0’,dFromPort=’0’, dToPort=’0’, etherT=’0’,prot=’0’, sFromPort=’0’, sToPort=’0’,tcpRules=’0’, stateful=’0’, icmpv4T=’not-given’,icmpv6T=’not-given’)
Bases: acitoolkit.acibaseobject.BaseACIObject
FilterEntry : roughly equivalent to vzEntry
Parameters
• name – String containing the name of this FilterEntry instance.
• applyToFrag – True or False. True indicates that this FilterEntry should be applied to IPfragments.
• arpOpc – ‘req’ or ‘reply’. Indicates that this FilterEntry should be applied to ARP Requestsor ARP replies.
• dFromPort – String containing the lower L4 destination port number of the L4 destinationport number range.
• dToPort – String containing the upper L4 destination port number of the L4 destinationport number range.
• etherT – String containing the EtherType of the frame to be matched by this FilterEntry.
• prot – String containing the L4 protocol number to be matched by this FilterEntry.
• sFromPort – String containing the lower L4 source port number of the L4 source portnumber range.
• sToPort – String containing the upper L4 source port number of the L4 source port num-ber range.
• tcpRules – Bit mask consisting of the TCP flags to be matched by this FilterEntry.
• stateful – True or False. True indicates that this FilterEntry should monitor the TCPACK bit.
• icmpv4T – String containing the ICMPv4 type.
• icmpv6T – String containing the ICMPv6 type.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
6.1. acitoolkit package 269
acitoolkit Documentation, Release 0.1
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
classmethod create_from_apic_json(data, parent)create from the apic json
Parameters
• data – json dictionary
• parent – parent object
Returns object created from json dictionary
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent, tenant)To get all of acitoolkit style Filter Entries APIC class.
Parameters
• session – the instance of Session used for APIC communication
• parent – Object to assign as the parent to the created objects.
270 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• tenant – Tenant object to assign the created objects.
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
6.1. acitoolkit package 271
acitoolkit Documentation, Release 0.1
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the FilterEntry
Returns json dictionary of the FilterEntry
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(filters, title=”)Will create table of filter information for a given tenant
Parameters
• title –
• filters –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
272 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
6.1. acitoolkit package 273
acitoolkit Documentation, Release 0.1
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
274 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.IPEndpoint(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
Endpoint class
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
6.1. acitoolkit package 275
acitoolkit Documentation, Release 0.1
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
static get(session)Gets all of the IP endpoints connected to the fabric from the APIC
Parameters session – Session instance assumed to be logged into the APIC
Returns List of IPEndpoint instances
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
classmethod get_all_by_epg(session, tenant_name, app_name, epg_name)Get all of the IP Endpoints for the specified EPG
Parameters
• session – Session instance assumed to be logged into the APIC
• tenant_name – String containing the Tenant name that holds the EPG
• app_name – String containing the AppProfile name that holds the EPG
• epg_name – String containing the EPG name
Returns List of IPEndpoint instances
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
276 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
6.1. acitoolkit package 277
acitoolkit Documentation, Release 0.1
get_json()Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
278 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
6.1. acitoolkit package 279
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.InputTerminal(terminal_name, parent=None)Bases: acitoolkit.acitoolkit.BaseTerminal
Input terminal for a graph. It is input with respect to the provider
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
280 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
add_filter(filter_obj)Add Filter to the Terminal, roughly equivalent to vzRsFiltAtt
Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theTerminal. Multiple Filters can be assigned to a single Terminal.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
6.1. acitoolkit package 281
acitoolkit Documentation, Release 0.1
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
282 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_filters()Get all of the filters that are attached to this Terminal.
Returns List of Filter objects
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the Terminal Object
Returns json dictionary of the ContractSubject
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
6.1. acitoolkit package 283
acitoolkit Documentation, Release 0.1
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
284 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
6.1. acitoolkit package 285
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.L2ExtDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
L2ExtDomain class
Parameters
• name – String containing the L2ExtDomain name
• parent – An instance of DomP class representing
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
286 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)Gets all of the L2Ext Domains from the APIC
Parameters session – the instance of Session used for APIC communication
Returns List of L2ExtDomain objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
classmethod get_by_name(session, infra_name)Gets all of the Physical Domainss from the APIC
6.1. acitoolkit package 287
acitoolkit Documentation, Release 0.1
Parameters
• infra_name –
• session – the instance of Session used for APIC communication
Returns List of L2ExtDomain objects
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
288 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the l2extDomP object
Returns A json dictionary of fvTenant
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
6.1. acitoolkit package 289
acitoolkit Documentation, Release 0.1
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
290 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.L2Interface(name, encap_type, encap_id, encap_mode=None)Bases: acitoolkit.acibaseobject.BaseACIObject
The L2Interface class creates an logical L2 interface that can be attached to a physical interface. This interfacedefines the L2 encapsulation i.e. VLAN, VXLAN, or NVGRE
Parameters
• name – String containing the L2Interface instance name
6.1. acitoolkit package 291
acitoolkit Documentation, Release 0.1
• encap_type – String containing the encapsulation type. Valid values are ‘VLAN’,‘VXLAN’, or ‘NVGRE’.
• encap_id – String containing the encapsulation specific identifier representing the virtualL2 network (i.e. for VXLAN, this is the numeric value of the VNID).
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
292 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
6.1. acitoolkit package 293
acitoolkit Documentation, Release 0.1
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
get_encap_id()Get the encap_id of the L2 interface. The value is returned as a string and depends on the encap_type (i.e.VLAN VID, VXLAN VNID, or NVGRE VSID)
Returns String containing encapsulation identifier value.
get_encap_type()Get the encap_type of the L2 interface. Valid values are ‘vlan’, ‘vxlan’, and ‘nvgre’
Returns String containing encap_type value.
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
294 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
6.1. acitoolkit package 295
acitoolkit Documentation, Release 0.1
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
is_interface()Returns whether this instance is considered an interface.
Returns True
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
static parse_encap(encap)Parses the encap_type and encap_id from a json encap string Examples: vlan-515 / vxlan-5000
Parameters encap – String containing the json encap format
Returns encap_type, encap_id
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
296 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.L3ExtDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
L3ExtDomain class
Parameters
• name – String containing the name of the external routed domain
• parent – An instance of DomP class
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
6.1. acitoolkit package 297
acitoolkit Documentation, Release 0.1
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)Gets all of the Physical Domains from the APIC
Parameters session – the instance of Session used for APIC communication
Returns List of L3Ext Domain objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
298 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
classmethod get_by_name(session, infra_name)Gets all of the L3Ext Domains from the APIC
Parameters
• infra_name –
• session – the instance of Session used for APIC communication
Returns List of L3Ext Domain objects
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
6.1. acitoolkit package 299
acitoolkit Documentation, Release 0.1
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the fvTenant object
Returns A json dictionary of fvTenant
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
300 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
6.1. acitoolkit package 301
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
302 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.L3Interface(name)Bases: acitoolkit.acibaseobject.BaseACIObject
Creates an L3 interface that can be attached to an L2 interface. This interface defines the L3 address i.e. IPv4
Parameters name – String containing the name of this L3Interface object.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_context(context)Add context to the EPG
Parameters context – Instance of Context class to assign to this L3Interface.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>
6.1. acitoolkit package 303
acitoolkit Documentation, Release 0.1
is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_addr()Get the L3 address assigned to this interface. The address is set via the L3Interface.set_addr() method
Returns String containing the L3 address in dotted decimal notation.
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
304 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
get_context()Return the assigned context
Returns Instance of Context class that this L3Interface is assigned. If no Context is assigned,None is returned.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
6.1. acitoolkit package 305
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of L3Interface
Returns json dictionary of L3Interface
get_l3if_type()Get the l3if_type of this L3 interface.
Returns L3 interface type. Valid values are ‘sub-interface’, ‘l3-port’, and ‘ext-svi’
get_mtu()Get the MTU of this interface
Returns MTU of the interface
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_context()Check if the context has been assigned
Returns True or False. True if a Context has been assigned to this L3Interface.
306 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
is_interface()Check if this is an interface object.
Returns True
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
6.1. acitoolkit package 307
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_context()Remove context from the EPG
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_addr(addr)Set the L3 address assigned to this interface
Parameters addr – String containing the L3 address in dotted decimal notation.
set_l3if_type(l3if_type)Set the l3if_type of this L3 interface.
Parameters l3if_type – L3 interface type. Valid values are ‘sub-interface’, ‘l3-port’, and‘ext-svi’
set_mtu(mtu)Set the L3 MTU of this interface
Parameters mtu – String containing MTU
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
308 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.LogicalModel(session=None, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
This is the root class for the logical part of the network. Its corollary is the PhysicalModel class. It is a containerthat can hold all of logical model instances such as Tenants.
From this class, you can populate all of the children classes.
Initialization method that sets up the Fabric. :return:
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
6.1. acitoolkit package 309
acitoolkit Documentation, Release 0.1
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session=None, parent=None)Method to get all of the LogicalModels. It will get one and return it in a list.
Parameters
• session –
• parent –
Returns list of LogicalModel
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
310 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
6.1. acitoolkit package 311
acitoolkit Documentation, Release 0.1
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
312 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
6.1. acitoolkit package 313
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.MonitorPolicy(policyType, name)Bases: acitoolkit.acitoolkit.BaseMonitorClass
This class is the top-most container for a monitoring policy that controls how statistics are gathered. It hasimmediate children, CollectionPolicy objects, that control the default behavior for any network element thatuses this monitoring policy. It may optionally have MonitorTarget objects as children that are used to overridethe default behavior for a particular target class such as Interfaces. There can be further granularity of controlthrough children of the MonitorTarget sub-objects.
314 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Children of the MonitorPolicy will be CollectionPolicy objects that define the collection policy plus optionalMonitorTarget objects that allow finer grained control over specific target APIC objects such as ‘l1PhysIf’ (layer1 physical interface).
The CollectionPolicy children are contained in a dictionary called “collection_policy” that is indexed by thegranulariy of the CollectionPolicy, e.g. ‘5min’, ‘15min’, etc.
The MonitorTarget children are contained in a dictionary called “monitor_target” that is indexed by the name ofthe target object, e.g. ‘l1PhysIf’.
To make a policy take effect for a particular port, for example, you must attach that monitoring policy to theport.
Note that the name of the MonitorPolicy is used to construct the dn of the object in the APIC. As a result, thename cannot be changed. If you read a policy from the APIC, change the name, and write it back, it will createa new policy with the new name and leave the old, original policy, in place with its original name.
A description may be optionally added to the policy.
The MonitorPolicy is initialized with simply a policy type and a name. There are two policy types: ‘fabric’ and‘access’. The ‘fabric’ monitoring policies can be applied to certain MonitorTarget types and ‘access’ monitoringpolicies can be applied to other MonitorTarget types. Initially however, both policies can have l1PhysIf astargets.
A name must be specified because it is used to build the distinguising name (dn) along with the policyType inthe APIC. The dn for “fabric” policies will be /uni/fabric/monfabric-[name] and for “access” policies it will be/uni/infra/moninfra-[name] in the APIC.
Parameters
• policyType – String specifying whether this is a fabric or access policy
• name – String specifying a name for the policy.
add_collection_policy(coll_obj)Add a collection policy.
Parameters coll_obj – A collection policy object of type CollectionPolicy
add_stats(stat_obj)Adds a stats family object.
Parameters stat_obj – Statistics family object of type MonitorStats.
add_target(target_obj)Add a target object.
Parameters target_obj – target object of type MonitorTarget
flat(target=’l1PhysIf’)This method will return a data structure that is a flattened version of the monitor policy. The flattenedversion is one that walks through the heirarchy of the policy and determines the administrative state andretention policy for each granularity of each statistics family. This is done for the target specified, i.e.‘l1PhysIf’
For example, if ‘foo’ is a MonitorPolicy object, then flatPol = foo.flat(‘l1PhysIf’) will return a dictionarythat looks like the following:
adminState = flatPol[‘counter_family’][‘granularity’].adminState retention = flat-Pol[‘counter_family’][‘granularity’].retention
The dictionary will have all of the counter families for all of the granularities and the value returned is theadministrative state and retention value that is the final result of resolving the policy hierarchy.
6.1. acitoolkit package 315
acitoolkit Documentation, Release 0.1
Parameters target – APIC target object. This will default to ‘l1PhysIf’
Returns Dictionary of statistic administrative state and retentions indexed by counter family andgranularity.
classmethod get(session)
get() will get all of the monitor policies from the APIC and return them as a list. It will get bothfabric and access (infra) policies including default policies.
Parameters session – the instance of Session used for APIC communication
Returns List of MonitorPolicy objects
get_parent()
Returns parent object
isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC
remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.
Parameters collection – CollectionPolicy to remove.
remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.
Parameters stats_family – Statistics family string.
remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.
Parameters target – target to remove.
set_description(description)
Sets the description of the MonitorStats.
Parameters description – String to use as the description
set_name(name)
Sets the name of the MonitorStats.
Parameters name – String to use as the name
class acitoolkit.acitoolkit.MonitorStats(parent, statsFamily)Bases: acitoolkit.acitoolkit.BaseMonitorClass
This class is a child of a MonitorTarget object. It is used to specify a scope for applying a monitoring policy thatis more fine grained than the MonitorTarget. Specifically, the MonitorStats object specifies a statistics familysuch as “ingress packets” or “egress bytes”.
The MonitorStats object must always be initialized with a parent object of type MonitorTarget. Itsets the scope of its children collection policies (CollectionPolicy) to a particular statistics family.
316 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
The MonitorStats object contains a dictionary of collection policies called collection_policy. This isa dictionary of children CollectionPolicy objects indexed by their granularity, e.g. ‘5min’, ‘15min’,etc.
Parameters
• parent – Parent object that this monitor stats object should be applied to. This must be anobject of type MonitorTarget.
• statsFamily – String specifying the statistics family that the children collection poli-cies should be applied to. Possible values are:[‘egrBytes’, ‘egrPkts’, ‘egrTotal’, ‘egrDropP-kts’, ‘ingrBytes’, ‘ingrPkts’, ‘ingrTotal’, ‘ingrDropPkts’, ‘ingrUnkBytes’, ‘ingrUnkPkts’,‘ingrStorm’]
add_collection_policy(coll_obj)Add a collection policy.
Parameters coll_obj – A collection policy object of type CollectionPolicy
add_stats(stat_obj)Adds a stats family object.
Parameters stat_obj – Statistics family object of type MonitorStats.
add_target(target_obj)Add a target object.
Parameters target_obj – target object of type MonitorTarget
get_parent()
Returns parent object
isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC
remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.
Parameters collection – CollectionPolicy to remove.
remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.
Parameters stats_family – Statistics family string.
remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.
Parameters target – target to remove.
set_description(description)
Sets the description of the MonitorStats.
Parameters description – String to use as the description
set_name(name)
6.1. acitoolkit package 317
acitoolkit Documentation, Release 0.1
Sets the name of the MonitorStats.
Parameters name – String to use as the name
statsDictionary = {'eqptEgrBytes': 'egrBytes', 'eqptEgrDropPkts': 'egrDropPkts', 'eqptEgrPkts': 'egrPkts', 'eqptEgrTotal': 'egrTotal', 'eqptIngrBytes': 'ingrBytes', 'eqptIngrDropPkts': 'ingrDropPkts', 'eqptIngrPkts': 'ingrPkts', 'eqptIngrStorm': 'ingrStorm', 'eqptIngrTotal': 'ingrTotal', 'eqptIngrUnkBytes': 'ingrUnkBytes', 'eqptIngrUnkPkts': 'ingrUnkPkts'}
statsFamilyEnum = ['egrBytes', 'egrPkts', 'egrTotal', 'egrDropPkts', 'ingrBytes', 'ingrPkts', 'ingrTotal', 'ingrDropPkts', 'ingrUnkBytes', 'ingrUnkPkts', 'ingrStorm']
class acitoolkit.acitoolkit.MonitorTarget(parent, target)Bases: acitoolkit.acitoolkit.BaseMonitorClass
This class is a child of a MonitorPolicy object. It is used to specify a scope for appling a monitoring policy. Anexample scope would be the Interface class, meaning that the monitoring policies specified here will apply to allInterface clas objects (l1PhysIf in the APIC) that use the parent MonitoringPolicy as their monitoring policy.
Children of the MonitorTarget will be CollectionPolicy objects that define the collection policy for the specifiedtarget plus optional MonitorStats objects that allow finer grained control over specific families of statistics suchas ingress packets, ingrPkts.
The CollectionPolicy children are contained in a dictionary called “collection_policy” that is indexed by thegranularity of the CollectionPolicy, e.g. ‘5min’, ‘15min’, etc.
The MonitorStats children are contained in a dictionary called “monitor_stats” that is indexed by the name ofthe statistics family, e.g. ‘ingrBytes’, ‘ingrPkts’, etc.
The MonitorTarget object is initialized with a parent of type MonitorPolicy, and a target string. Ini-tially, this toolkit only supports a target of type ‘l1PhysIf’. The ‘l1PhyIf’ target is a layer 1 physicalinterface or “port”. The MonitorTarget will narrow the scope of the policy specified by the childrenof the MonitorTarget to be only the target class.
Parameters
• parent – Parent object that this monitor target is a child. It must be of type MonitorPolicy
• target – String specifying the target class for the Monitor policy.
add_collection_policy(coll_obj)Add a collection policy.
Parameters coll_obj – A collection policy object of type CollectionPolicy
add_stats(stat_obj)Adds a stats family object.
Parameters stat_obj – Statistics family object of type MonitorStats.
add_target(target_obj)Add a target object.
Parameters target_obj – target object of type MonitorTarget
get_parent()
Returns parent object
isModified()Returns True if this policy and any children have been modified or created and not been written to theAPIC
remove_collection_policy(collection)Remove a collection_policy object. The object to remove is identified by its granularity, e.g. ‘5min’,‘15min’, etc. This string can be found in the ‘CollectionPolicy.granularity’ attribute of the object.
318 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters collection – CollectionPolicy to remove.
remove_stats(stats_family)Remove a stats family object. The object to remove is identified by a string, e.g. ‘ingrPkts’, or ‘egrTotal’.This string can be found in the ‘MonitorStats.scope’ attribute of the object.
Parameters stats_family – Statistics family string.
remove_target(target)Remove a target object. The object to remove is identified by a string, e.g ‘l1PhysIf’. This string can befound in the ‘MonitorTarget.scope’ attribute of the object.
Parameters target – target to remove.
set_description(description)
Sets the description of the MonitorStats.
Parameters description – String to use as the description
set_name(name)
Sets the name of the MonitorStats.
Parameters name – String to use as the name
class acitoolkit.acitoolkit.NetworkPool(name, encap_type, mode, start_id=None,end_id=None)
Bases: acitoolkit.acibaseobject.BaseACIObject
This class defines a pool of network ids
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
6.1. acitoolkit package 319
acitoolkit Documentation, Release 0.1
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)
Parameters session – apic session
Returns list of network pools
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
320 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
6.1. acitoolkit package 321
acitoolkit Documentation, Release 0.1
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.
Parameters fmt – optional format string, default is ‘json’
Returns URL string
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
322 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
6.1. acitoolkit package 323
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OSPFInterface(name, router=None, area_id=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Creates an OSPF router interface that can be attached to a L3 interface. This interface defines the OSPF area,authentication, etc.
Parameters
• name – String containing the name of this OSPFInterface object.
• area_id – String containing the OSPF area id of this interface. Default is None.
324 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
6.1. acitoolkit package 325
acitoolkit Documentation, Release 0.1
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
326 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of OSPFInterface :returns: json dictionary of OSPFInterface
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
6.1. acitoolkit package 327
acitoolkit Documentation, Release 0.1
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
is_interface()Returns whether this instance is considered an interface. :returns: True
328 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static is_ospf()
Returns True if this interface is an OSPF interface. In the case of OSPFInterface instances, thisis always True.
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_area_type(area_type)Set the area_type for this OSPFInterface
Parameters area_type – AreaType to use for this OSPFInterface
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
6.1. acitoolkit package 329
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OSPFInterfacePolicy(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Represents the interface settings of an OSPF interface
param name: String containing the name of this OSPF interface policy param parent: Instance of the Tenantclass representing the tenant owning this OSPF interface policy
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
330 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
6.1. acitoolkit package 331
acitoolkit Documentation, Release 0.1
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
332 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of OSPFRouter
Returns json dictionary of OSPFIRouter
get_nw_type()Get the nw-type of this interface ospf policy :returns: string of the network type for this policy
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
6.1. acitoolkit package 333
acitoolkit Documentation, Release 0.1
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
334 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_nw_type(network_type)sets the L3 nw_type with some validation
Parameters network_type – string of bcast or p2p
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OSPFRouter(name)Bases: acitoolkit.acibaseobject.BaseACIObject
Represents the global settings of the OSPF Router
Parameters name – String containing the name of this OSPFRouter object.
6.1. acitoolkit package 335
acitoolkit Documentation, Release 0.1
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
336 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
6.1. acitoolkit package 337
acitoolkit Documentation, Release 0.1
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of OSPFRouter
Returns json dictionary of OSPFIRouter
get_node_id():returns string containing the Node ID
get_parent()
Returns Parent of this object.
get_router_id():returns string containing the Router ID
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
338 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
6.1. acitoolkit package 339
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_node_id(node)Sets the router id of the object
Parameters node – String containing the node id
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
set_router_id(rid)Sets the router id of the object
Parameters rid – String containing the router id
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
340 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OutputTerminal(terminal_name, parent=None)Bases: acitoolkit.acitoolkit.BaseTerminal
Input terminal for a graph. It is input with respect to the provider
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_filter(filter_obj)Add Filter to the Terminal, roughly equivalent to vzRsFiltAtt
Parameters filter_obj – Instance of Filter class. Represents a Filter that is added to theTerminal. Multiple Filters can be assigned to a single Terminal.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
6.1. acitoolkit package 341
acitoolkit Documentation, Release 0.1
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
342 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
6.1. acitoolkit package 343
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_filters()Get all of the filters that are attached to this Terminal.
Returns List of Filter objects
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the Terminal Object
Returns json dictionary of the ContractSubject
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
344 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
6.1. acitoolkit package 345
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
346 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OutsideEPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG
OutsideEPG class, roughly equivalent to l3ext:InstP
Parameters
• epg_name – String containing the name of this EPG
• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
consume(contract)Make this EPG consume a Contract
Parameters contract – Contract class instance to be consumed by this EPG.
Returns True
consume_cif(contract_interface)Make this EPG consume a ContractInterface
Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.
Returns True
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
6.1. acitoolkit package 347
acitoolkit Documentation, Release 0.1
Parameters item – Object to be detached.
does_consume(contract)Check if this EPG consumes a specific Contract
Parameters contract – Instance of Contract class to check if it is consumed by this EPG.
Returns True or False. True if the EPG does consume the Contract.
does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract
Parameters contract_interface –
Returns True or False. True if the EPG does consume the ContractInterface.
does_protect(taboo)Check if this EPG is protected by a specific Taboo.
Parameters taboo – Instance of Taboo class to check if it protects this EPG.
Returns True or False. True if the EPG is protected by the Taboo.
does_provide(contract)Check if this EPG provides a specific Contract.
Parameters contract – Instance of Contract class to check if it is provided by this EPG.
Returns True or False. True if the EPG does provide the Contract.
dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed
Parameters contract – Instance of Contract class to be no longer consumed by this EPG.
Returns True
dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed
Parameters contract_interface –
Returns True
dont_protect(taboo)Make this EPG not protected by a Taboo
Parameters taboo – Instance of Taboo class to no longer protect this EPG.
Returns True
dont_provide(contract)Make this EPG not provide a Contract
Parameters contract – Instance of Contract class to be no longer provided by this EPG.
Returns True
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>
348 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.
• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.
Returns List of CommonEPG instances (or EPG instances if called from EPG class)
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted
Returns List of Contract objects that are consumed by the EPG.
get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG
Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted
Returns List of ContractInterface objects that are consumed by the EPG.
get_all_protected(deleted=False)Get all of the Taboos protecting this EPG
Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted
Returns List of Taboo objects that are protecting the EPG.
6.1. acitoolkit package 349
acitoolkit Documentation, Release 0.1
get_all_provided(deleted=False)Get all of the Contracts provided by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted
Returns List of Contract objects that are provided by the EPG.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
350 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)
Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.
Returns List of Interface objects
get_json()Returns json representation of the EPG
Returns json dictionary of the EPG
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
6.1. acitoolkit package 351
acitoolkit Documentation, Release 0.1
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
352 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
protect(taboo)Make this EPG protected by a Taboo
Parameters taboo – Instance of Taboo class to protect this EPG.
Returns True
provide(contract)Make this EPG provide a Contract
Parameters contract – Instance of Contract class to be provided by this EPG.
Returns True
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
6.1. acitoolkit package 353
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OutsideL2(l2out_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Represents the L2Out for external connectivity
Parameters
• l2out_name – String containing the name of this OutsideL2
• parent – Instance of the Tenant class representing the tenant owning this OutsideL2.
add_bd(bd)Add BridgeDomain to the EPG
Parameters bd – Instance of BridgeDomain class to assign to this OutsideL2.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_l2extdom(extdom)Set the L2ExternalDomain for this BD
Parameters extdom –
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
354 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
6.1. acitoolkit package 355
acitoolkit Documentation, Release 0.1
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
356 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of OutsideL2
Returns json dictionary of OutsideL2
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_bd()Check if the BridgeDomain has been assigned
Returns True or False. True if a BridgeDomain has been assigned to this L2Interface.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
6.1. acitoolkit package 357
acitoolkit Documentation, Release 0.1
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_l2extdom()
Returns Boolean indicating presence of L2 External Domain Attachment
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
358 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_bd()Remove the BridgeDomain from the EPG
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
6.1. acitoolkit package 359
acitoolkit Documentation, Release 0.1
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OutsideL2EPG(epg_name, parent=None)Bases: acitoolkit.acitoolkit.CommonEPG
OutsideL2EPG class, roughly equivalent to l2ext:InstP
Parameters
• epg_name – String containing the name of this EPG
• parent – Instance of the AppProfile class representing the Application Profile where thisEPG is contained.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
consume(contract)Make this EPG consume a Contract
Parameters contract – Contract class instance to be consumed by this EPG.
Returns True
consume_cif(contract_interface)Make this EPG consume a ContractInterface
Parameters contract_interface – ContractInterface class instance to be consumed bythis EPG.
Returns True
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
360 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
does_consume(contract)Check if this EPG consumes a specific Contract
Parameters contract – Instance of Contract class to check if it is consumed by this EPG.
Returns True or False. True if the EPG does consume the Contract.
does_consume_cif(contract_interface)Check if this EPG consumes a specific Contract
Parameters contract_interface –
Returns True or False. True if the EPG does consume the ContractInterface.
does_protect(taboo)Check if this EPG is protected by a specific Taboo.
Parameters taboo – Instance of Taboo class to check if it protects this EPG.
Returns True or False. True if the EPG is protected by the Taboo.
does_provide(contract)Check if this EPG provides a specific Contract.
Parameters contract – Instance of Contract class to check if it is provided by this EPG.
Returns True or False. True if the EPG does provide the Contract.
dont_consume(contract)Make this EPG not consume a Contract. It does not check to see if the Contract was already consumed
Parameters contract – Instance of Contract class to be no longer consumed by this EPG.
Returns True
dont_consume_cif(contract_interface)Make this EPG not consume a ContractInterface. It does not check to see if the ContractInterface wasalready consumed
Parameters contract_interface –
Returns True
dont_protect(taboo)Make this EPG not protected by a Taboo
Parameters taboo – Instance of Taboo class to no longer protect this EPG.
Returns True
dont_provide(contract)Make this EPG not provide a Contract
Parameters contract – Instance of Contract class to be no longer provided by this EPG.
Returns True
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
6.1. acitoolkit package 361
acitoolkit Documentation, Release 0.1
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, tenant=None)Gets all of the EPGs from the APIC.
Parameters
• session – the instance of Session used for APIC communication
• parent – Instance of the AppProfile class used to limit the EPGs retreived from theAPIC.
• tenant – Instance of Tenant class used to limit the EPGs retreived from the APIC.
Returns List of CommonEPG instances (or EPG instances if called from EPG class)
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_consumed(deleted=False)Get all of the Contracts consumed by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are consumed or thatthe consumed was marked as deleted
Returns List of Contract objects that are consumed by the EPG.
get_all_consumed_cif(deleted=False)Get all of the ContractInterfaces consumed by this EPG
Parameters deleted – Boolean indicating whether to get ContractInterfaces that are con-sumed or that the consumed was marked as deleted
Returns List of ContractInterface objects that are consumed by the EPG.
get_all_protected(deleted=False)Get all of the Taboos protecting this EPG
Parameters deleted – Boolean indicating whether to get Taboos that are protected or that theprotected was marked as deleted
Returns List of Taboo objects that are protecting the EPG.
362 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_all_provided(deleted=False)Get all of the Contracts provided by this EPG
Parameters deleted – Boolean indicating whether to get Contracts that are provided or thatthe provided was marked as deleted
Returns List of Contract objects that are provided by the EPG.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
6.1. acitoolkit package 363
acitoolkit Documentation, Release 0.1
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interfaces that this EPG is attached. The default is to get list of ‘attached’ interfaces. If‘status’ is set to ‘detached’ it will return the list of detached Interface objects (Those EPGs which are nolonger attached to an Interface, but the configuration is not yet pushed to the APIC.)
Parameters status – ‘attached’ or ‘detached’. Defaults to ‘attached’.
Returns List of Interface objects
get_json()Returns json representation of the EPG
Returns json dictionary of the EPG
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
364 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
6.1. acitoolkit package 365
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
protect(taboo)Make this EPG protected by a Taboo
Parameters taboo – Instance of Taboo class to protect this EPG.
Returns True
provide(contract)Make this EPG provide a Contract
Parameters contract – Instance of Contract class to be provided by this EPG.
Returns True
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
366 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OutsideL3(l3out_name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Represents the L3Out for external connectivity
Parameters
• l3out_name – String containing the name of this OutsideL3
• parent – Instance of the Tenant class representing the tenant owning this OutsideL3.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_context(context)Add context to the EPG
Parameters context – Instance of Context class to assign to this OutsideL3.
add_l3extdom(extdom)Set the L3ExternalDomain for this BD
Parameters extdom –
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
6.1. acitoolkit package 367
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
368 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
get_context()Return the assigned context
Returns Instance of Context class that this OutsideL3 is assigned. If no Context is assigned,None is returned.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
6.1. acitoolkit package 369
acitoolkit Documentation, Release 0.1
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of OutsideL3
Returns json dictionary of OutsideL3
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_context()Check if the context has been assigned
370 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True or False. True if a Context has been assigned to this L3Interface.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_l3extdom()
Returns Boolean indicating presence of L3 External Domain Attachment
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
6.1. acitoolkit package 371
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_context()Remove the context from the EPG
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
372 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.OutsideNetwork(name, parent, address=None)Bases: acitoolkit.acitoolkit.BaseSubnet
OutsideNetwork class, roughly equivalent to l3extSubnet in the APIC model
Parameters
• name – String containing the OutsideNetwork name
• parent – An instance of OutsideEPG class
• address – String containing the IP address of the OutsideNetwork. e.g. ‘1.2.3.0/24’
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
addrSubnet address
Returns String containing the subnet default gateway IP address and mask e.g. “1.2.3.4/24”
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
6.1. acitoolkit package 373
acitoolkit Documentation, Release 0.1
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_addr()Get the subnet address
Returns The subnet address as a string in the form of <ipaddr>/<mask>
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
374 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
6.1. acitoolkit package 375
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the OutsideNetwork object.
Returns json dictionary of OutsideNetwork
get_parent()
Returns Parent of this object.
get_scope()Get the subnet scope
Returns The subnet scope as a string
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
376 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
ipIP address of the subnet in the form of Address/mask e.g. 10.1.1.1/16
Returns String containing the IP address
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
6.1. acitoolkit package 377
acitoolkit Documentation, Release 0.1
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_addr(addr)Set the subnet address
Parameters addr – The subnet default gateway address as a string in the form of<ipaddr>/<mask>
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
set_scope(scope)Set the subnet scope
Parameters scope – String containing the scope
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
378 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.PhysDomain(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
Physical Network domain
Parameters
• name – String containing the PhysDomain name
• parent – An instance of DomP class representing
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_network(network_pool)associate network pool to the physical domain :param network_pool: vlan or vxlan pool
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>
6.1. acitoolkit package 379
acitoolkit Documentation, Release 0.1
is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)Gets all of the Physical Domains from the APIC
Parameters session – the instance of Session used for APIC communication
Returns List of PhysDomain objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
classmethod get_by_name(session, infra_name)Gets all of the Physical Domains from the APIC
Parameters
• infra_name –
• session – the instance of Session used for APIC communication
Returns List of PhysDomain objects
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
380 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the physDomP object
6.1. acitoolkit package 381
acitoolkit Documentation, Release 0.1
Returns A json dictionary of physical domain
get_network()Get the network pool for this domain
Returns Instance of NetworkPool class associated to this Domain.
get_network_from_apic(session)get network from apic :param session:
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.
Parameters fmt – optional format string, default is ‘json’
Returns URL string
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_network()Check if the network pool has been set for this physical domain
382 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True or False. True if this network pool is assigned to the domain.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
6.1. acitoolkit package 383
acitoolkit Documentation, Release 0.1
• deep – True or False. Default is False.
push_to_apic(session)Push the appropriate configuration to the APIC for this Phys Domain. All of the subobject configurationwill also be pushed.
Parameters session – the instance of Session used for APIC communication
Returns Requests Response code
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_network()removes the associated vlan or vxlan from the physical domain :return:
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
384 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.PortChannel(name)Bases: acitoolkit.acibaseobject.BaseInterface
This class defines a port channel interface.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(interface)Attach an interface to this PortChannel
Parameters interface –
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
classmethod create_from_dn(dn)Create a PortChannel instance based on the specified DN
Parameters dn – String containing the DN
Returns Instance of PortChannel class
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(interface)Detach an interface from this PortChannel
Parameters interface –
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
6.1. acitoolkit package 385
acitoolkit Documentation, Release 0.1
Parameters search_object – ACI object to search
Returns List of objects
static get(session)Gets all of the port channel interfaces from the APIC
Parameters session –
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
386 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()
Returns json representation of the PortChannel
Returns json dictionary of the PortChannel
get_parent()
Returns Parent of this object.
get_port_channel_selector_json(port_name)Get the JSON for the Port Channel selector
Parameters port_name – String containing the port name
Returns Dictonary containing the JSON for the Port Channel selector
get_port_selector_json()Returns the port selector.
6.1. acitoolkit package 387
acitoolkit Documentation, Release 0.1
Returns
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
static get_url(fmt=’json’)Get the URLs used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.
Parameters fmt – optional format string, default is ‘json’
Returns URL string
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
388 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_dn_vpc(dn)Check if the DN is a VPC
Parameters dn – String containing the DN
Returns True if the the DN is a VPC. False otherwise.
is_interface()Returns True since a PortChannel is an interface
is_vpc()Returns True if the PortChannel is a VPC
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
6.1. acitoolkit package 389
acitoolkit Documentation, Release 0.1
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.SearchBases: acitoolkit.acibaseobject.BaseACIObject
This is an empty class used to create a search object for use with the “find” method.
Attaching attributes to this class and then invoking find will return all objects with matching attributes in theobject hierarchy at and below where the find is invoked.
add_child(obj)Add a child to the children list.
390 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
6.1. acitoolkit package 391
acitoolkit Documentation, Release 0.1
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
392 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
6.1. acitoolkit package 393
acitoolkit Documentation, Release 0.1
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
394 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
6.1. acitoolkit package 395
acitoolkit Documentation, Release 0.1
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Subnet(subnet_name, parent=None)Bases: acitoolkit.acitoolkit.BaseSubnet
Subnet : roughly equivalent to fvSubnet
Parameters
• subnet_name – String containing the name of this Subnet instance.
• parent – An instance of BridgeDomain class representing the BridgeDomain which con-tains this Subnet.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
addrSubnet address
Returns String containing the subnet default gateway IP address and mask e.g. “1.2.3.4/24”
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
396 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, bridgedomain, tenant)Gets all of the Subnets from the APIC for a particular tenant and bridgedomain.
Parameters
• session – the instance of Session used for APIC communication
• bridgedomain – the instance of BridgeDomain used to limit the Subnet instances re-treived from the APIC
• tenant – the instance of Tenant used to limit the Subnet instances retreived from theAPIC
Returns List of Subnet objects
get_addr()Get the subnet address
Returns The subnet address as a string in the form of <ipaddr>/<mask>
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
6.1. acitoolkit package 397
acitoolkit Documentation, Release 0.1
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
398 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the subnet
Returns json dictionary of subnet
get_parent()
Returns Parent of this object.
get_scope()Get the subnet scope
Returns The subnet scope as a string
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
6.1. acitoolkit package 399
acitoolkit Documentation, Release 0.1
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
ipIP address of the subnet in the form of Address/mask e.g. 10.1.1.1/16
Returns String containing the IP address
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
400 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_addr(addr)Set the subnet address
Parameters addr – The subnet default gateway address as a string in the form of<ipaddr>/<mask>
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
set_scope(scope)Set the subnet scope
Parameters scope – The scope of the subnet. Use “public” when the subnet
needs to be advertised externally, “private” when no external routing for the subnet is required (onlyinternal), and “shared” when a route for the subnet needs to be leaked to a different VRF within the fabric.Note that “public” and “private” are mutually exclusive, but “shared” can be appended to any of them(“e.g. set_scope(“public,shared”)).
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
6.1. acitoolkit package 401
acitoolkit Documentation, Release 0.1
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Taboo(contract_name, parent=None)Bases: acitoolkit.acitoolkit.BaseContract
Taboo : Class for Taboos
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
402 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_filter_entries(direction=’bidirectional-only’)Get all of the filter entries contained within this Contract/Taboo
Parameters direction – String containing the type of filter entries to gather Valid values are‘bidirectional-only’, ‘input-only’, ‘output-only’, ‘all’ Default is ‘bidirectional-only’
Returns List of FilterEntry instances
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
6.1. acitoolkit package 403
acitoolkit Documentation, Release 0.1
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
404 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the contract
Returns json dictionary of the contract
get_parent()
Returns Parent of this object.
get_scope()Get the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(taboos, title=”)Will create table of taboo information for a given tenant
Parameters
• title –
• taboos –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
6.1. acitoolkit package 405
acitoolkit Documentation, Release 0.1
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
406 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
set_scope(scope)Set the scope of this contract. Valid values are ‘context’, ‘global’, ‘tenant’, and ‘application-profile’
Parameters scope – String containing one of the following ‘context’, ‘global’, ‘tenant’, or‘application-profile’
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
6.1. acitoolkit package 407
acitoolkit Documentation, Release 0.1
Returns List of subscribed classes
class acitoolkit.acitoolkit.Tag(name=None, parent=None)Bases: acitoolkit.acibaseobject._Tag
Tag class.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None, tenant=None)Gets all of the Tags from the APIC.
Parameters
• session – the instance of Session used for APIC communication
408 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• parent – Instance of the possible Tag parent classes used to limit the Tags retreived fromthe APIC.
• tenant – Instance of Tenant class used to limit the Tags retreived from the APIC.
Returns List of Tag instances
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
6.1. acitoolkit package 409
acitoolkit Documentation, Release 0.1
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json(obj_class, attributes=None, children=None, get_children=True)Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
410 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
6.1. acitoolkit package 411
acitoolkit Documentation, Release 0.1
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
412 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.Tenant(name, parent=None)Bases: acitoolkit.acibaseobject.BaseACIObject
The Tenant class is used to represent the tenants within the acitoolkit object model. In the APIC model, thisclass is roughly equivalent to the fvTenant class.
Parameters
• name – String containing the Tenant name
• parent – None or An instance of Fabric class representing the Pod which contains thisTenant.
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
6.1. acitoolkit package 413
acitoolkit Documentation, Release 0.1
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
classmethod exists(session, tenant)Check if a tenant exists on the APIC.
Parameters
• session – the instance of Session used for APIC communication
• tenant – the instance of Tenant to check if exists on the APIC
Returns True or False
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session, parent=None)Gets all of the tenants from the APIC.
Parameters
• parent – Parent object of the Tenant
• session – the instance of Session used for APIC communication
Returns a list of Tenant objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
414 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(session, names=(), limit_to=(), subtree=’full’, config_only=False, par-ent=None)
Get the Tenant objects and all of the children objects.
Parameters
• session – the instance of Session used for APIC communication
• names – list of strings containing the tenant names. If no list is given, all tenants will becollected. It should be noted that if relations extend across tenants, the relation will onlybe populated if the tenants are included in this list.
• limit_to – list of strings containing the APIC classes to limit the collection to i.e.[‘fvTenant’, ‘fvBD’]. If no list is given, all classes will be collected.
• subtree – String containing the rsp-subtree option. Default is ‘full’.
• config_only – Boolean containing whether to collect only configurable parameters
• parent – The parent instance to assign to the tenant objects. If None, a Fabric instancewill be created.
Returns Requests Response code
6.1. acitoolkit package 415
acitoolkit Documentation, Release 0.1
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the fvTenant object
Returns A json dictionary of fvTenant
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(tenants, title=”)Will create table of switch context information
Parameters
• title –
• tenants –
get_tags()Get the tags assigned to this object.
Returns List of tag instances
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.
Parameters fmt – optional format string, default is ‘json’
416 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns URL string
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
6.1. acitoolkit package 417
acitoolkit Documentation, Release 0.1
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
push_to_apic(session)Push the appropriate configuration to the APIC for this Tenant. All of the subobject configuration will alsobe pushed.
Parameters session – the instance of Session used for APIC communication
Returns Requests Response code
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
418 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.TunnelInterface(if_type, pod, node, tunnel)Bases: object
This class describes a tunnel interface
class acitoolkit.acitoolkit.VMM(name, ipaddr, credentials, vswitch_info, network_pool)Bases: acitoolkit.acibaseobject.BaseACIObject
This class defines an instance of connectivity to a Virtual Machine Manager (such as VMware vCenter)
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
6.1. acitoolkit package 419
acitoolkit Documentation, Release 0.1
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
420 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
6.1. acitoolkit package 421
acitoolkit Documentation, Release 0.1
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
static get_url(fmt=’json’)Get the URL used to push the configuration to the APIC if no format parameter is specified, the formatwill be ‘json’ otherwise it will return ‘/api/mo/uni.’ with the format string appended.
Parameters fmt – optional format string, default is ‘json’
Returns URL string
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
422 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
6.1. acitoolkit package 423
acitoolkit Documentation, Release 0.1
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
424 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.VMMCredentials(name, uid, pwd)Bases: acitoolkit.acibaseobject.BaseACIObject
This class defines the credentials used to login to a Virtual Machine Manager
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
6.1. acitoolkit package 425
acitoolkit Documentation, Release 0.1
classmethod get(session, toolkit_class, apic_class, parent=None, tenant=None,query_target_type=’subtree’)
Generic classmethod to get all of a particular APIC class.
Parameters
• session – the instance of Session used for APIC communication
• toolkit_class – acitoolkit class to return
• apic_class – String containing class name from the APIC object model.
• parent – Object to assign as the parent to the created objects.
• tenant – Tenant object to assign the created objects.
• query_target_type – type of the query either self,children,subtree
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
426 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Get the JSON representation of this class in the actual APIC Object Model.
Parameters
• obj_class – Object Class Name within the APIC model.
• attributes – Additional attributes that should be set in the JSON.
• children – Children objects to traverse as well.
• get_children – Indicates whether the children objects should be included.
Returns JSON dictionary to be pushed to the APIC.
6.1. acitoolkit package 427
acitoolkit Documentation, Release 0.1
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
428 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
6.1. acitoolkit package 429
acitoolkit Documentation, Release 0.1
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
class acitoolkit.acitoolkit.VMMvSwitchInfo(vendor, container_name, vswitch_name)Bases: object
This class contains the information necessary for creating the vSwitch on the Virtual Machine Manager
class acitoolkit.acitoolkit.VmmDomain(name, parent)Bases: acitoolkit.acibaseobject.BaseACIObject
VMMDomain class
Parameters
• name – String containing the VMM Domain name
• parent – An instance of DomP class
add_child(obj)Add a child to the children list.
Parameters obj – Child object to add to the children list of the called object.
add_tag(tag)Assign this object a particular tag. Tags are strings that can be used to classify objects. More than 1 tagcan be assigned to an object.
Parameters tag – string containing the tag to assign to this object or an instance of _Tag
430 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
attach(item)Attach the object to the other object.
Parameters item – Object to be attached.
static check_session(session)This will check that the session is of type Session and raise exception if it not
Parameters session – the session to check
Returns
delete_tag(tag)Mark a particular tag as being deleted from this object.
Parameters tag – string containing the tag to delete from this object or an instance of _Tag
detach(item)Detach the object from the other object. A relationship is either ‘attached’, ‘detached’, or does not exist.A detached relationship will cause the relationship to be deleted when pushed to the APIC.
Parameters item – Object to be detached.
find(search_object)This will check to see if self is a match with search_object and then call find on all of the children ofsearch. If there is a match, a list containing self and any matches found by the children will be returned asa list.
The criteria for a match is that all attributes of self are compared to all attributes of search_object. Ifsearch_object.<attr> exists and is the same as self.<attr> or search_object.<attr>is ‘None’, then that attribute matches. If all such attributes match, then there is a match and self will bereturned in the result.
If there is an attribute of search_object that does not exist in self, it will be considered a mismatch.If there is an attribute of self that does not exist in search_object, it will be ignored.
Parameters search_object – ACI object to search
Returns List of objects
classmethod get(session)Gets all of the VMM Domains from the APIC
Parameters session – the instance of Session used for APIC communication
Returns List of VMM Domain objects
get_all_attached(attached_class, status=’attached’, relation_type=None)Get all of the relations of objects belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
get_all_attachments(attached_class, status=’attached’, relation_type=None)Get all of the attachments to an object belonging to the specified class with the specified status.
Parameters
• attached_class – The class that is the subject of the search.
• status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
6.1. acitoolkit package 431
acitoolkit Documentation, Release 0.1
get_attributes(name=None)Will return the value of the named attribute in a dictionary format. If no name is given, then it will returnall attributes.
Note that attributes that start with _ (underbar) will NOT be included unless explicitly named
This method should be over-written as appropriate by inheriting objects to handle how their local attributesare implemented.
This is intended to normalize how all attributes on all objects can be accessed since the implementationswere not consistent.
Parameters name – optional name of attribute to return
Returns dictionary of attributes and their values
classmethod get_by_name(session, infra_name)Gets all of the VMM Domains from the APIC
Parameters
• infra_name –
• session – the instance of Session used for APIC communication
Returns List of VMM Domain objects
get_child(child_type, child_name)Gets a specific immediate child of this object
Parameters
• child_type – Class of the child to return
• child_name – Name of the child to return
Returns The specific instance of child_type or None if not found
get_children(only_class=None)Get a list of the immediate child objects of this object.
Parameters only_class – Optional parameter that will be used to limit the objects returnedto only those belonging to the class passed in this parameter.
Returns List of children objects.
classmethod get_deep(full_data, working_data, parent=None, limit_to=(), subtree=’full’, con-fig_only=False)
Gets all instances of this class from the APIC and gets all of the children as well.
Parameters
• full_data –
• working_data –
• parent –
• limit_to –
• subtree –
• config_only –
classmethod get_deep_apic_classes(include_concrete=False)Get all the apic classes needed for this acitoolkit class and all of its children. :return: list of all apic classes
432 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get_dn_from_attributes(attributes)Will get the dn from the attributes or construct it using the dn of the parent plus the rn. Failing those, itwill return None
Parameters attributes –
Returns String containing dn or None
classmethod get_event(session)Gets the event that is pending for this class. Events are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
classmethod get_fault(session, extension=”)Gets the fault that is pending for this class. Faults are returned in the form of objects. Objects that havebeen deleted are marked as such.
Parameters session – the instance of Session used for APIC communication
get_from_json(data, parent=None)returns a Tenant object from a json
get_interfaces(status=’attached’)Get all of the interface relations. Note that multiple classes are considered “interfaces” such as Interface,L2Interface, L3Interface, etc.
Parameters status – Valid values are ‘attached’ and ‘detached’. Default is ‘attached’.
Returns List of interfaces that this object has relations and the status matches.
get_json()Returns json representation of the vmmDomP object
Returns A json dictionary of vmmDomP
get_parent()
Returns Parent of this object.
get_searchable()Method to recursively retrieve all of the searchable items from all the children objects, add the currentobject to them as additional context, append the local searchable terms, and return the result.
static get_table(aci_object, title=”)Abstract method that should be replaced by a version that is specific to the object
Parameters
• aci_object –
• title – String containing the table title
Returns list of Table objects
get_tags()Get the tags assigned to this object.
Returns List of tag instances
has_attachment(item)Indicates whether this object is attached to the item/ :returns: True or False, True indicates the object isattached.
has_child(obj)Check for existence of a child in the children list
6.1. acitoolkit package 433
acitoolkit Documentation, Release 0.1
Parameters obj – Child object that is the subject of the check.
Returns True or False, True indicates that it does indeed have the obj object as a child.
has_detachment(item)Indicates whether the object is detached from this item. :returns: True or False, True indicates the objectis detached.
classmethod has_events(session, extension=”)Check for pending events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
Returns True or False. True if there are events pending.
has_parent()returns True if this object has a parent
Returns bool
has_tag(tag)Checks whether this object has a particular tag assigned.
Parameters tag – string containing the tag name or an instance of _Tag
Returns True or False. True indicates the object has this tag assigned.
has_tags()Checks whether this object has any tags assigned at all.
Returns True or False. True indicates the object has at least one tag assigned.
info()Node information summary.
Returns Formatted string that has a summary of all of the info gathered about the node.
infoList()Node information. Returns a list of (attr, value) tuples.
Returns list of [(attr, value),]
is_attached(item)Indicates whether the item is attached to this object/ :returns: True or False, True indicates the item isattached.
is_deleted()Check if the object has been deleted.
Returns True or False, True indicates the object has been deleted.
is_detached(item)Indicates whether the item is detached from this object.
Returns True or False, True indicates the item is detached.
static is_interface()Indicates whether this object is considered an Interface. The default is False.
Returns False
mark_as_deleted()Mark the object as deleted. This will cause the JSON status to be set to deleted.
classmethod mask_class_from_graphs()Mask (hide) this class from graph creation
434 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
Returns False indicating that this class should not be masked.
populate_children(deep=False, include_concrete=False)Populates all of the children and then calls populate_children of those children if deep is True. This methodshould be overridden by any object that does have children.
If include_concrete is True, then if the object has concrete objects below it, i.e. is a switch, then alsopopulate those conrete object.
Parameters
• include_concrete – True or False. Default is False
• deep – True or False. Default is False.
remove_child(obj)Remove a child from the children list
Parameters obj – Child object that is to be removed.
remove_tag(tag)Remove a particular tag from being assigned to this object. Note that this does not delete the tag from theAPIC.
Parameters tag – string containing the tag to remove from this object or an instance of _Tag
set_parent(parent_obj)Set the parent object
Parameters parent_obj – Instance of the parent object
Returns None
classmethod subscribe(session, extension=”, only_new=False)Subscribe to events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
subscribe_to_fault_instances_subtree(session, extension=”, deep=False)Subscribe to faults instances for the whole subtree.
Parameters
• session – the instance of Session used for APIC communication
• extension – Optional string that can be used to extend the URL
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod unsubscribe(session)Unsubscribe for events from the APIC that pertain to instances of this class.
Parameters session – the instance of Session used for APIC communication
update_db(session, subscribed_classes, deep=False)
6.1. acitoolkit package 435
acitoolkit Documentation, Release 0.1
Parameters
• session – Session class instance representing the connection to the APIC
• subscribed_classes – List of subscribed classes
• deep – Boolean indicating whether to go deep or not. Default is False
Returns List of subscribed classes
acitoolkit.acitoolkit.build_object_dictionary(objs)Will build a dictionary indexed by object class that contains all the objects of that class
Parameters objs –
Returns
6.1.1.5 acitoolkitlib module
Collection of utility classes to make getting credentials and configuration easier.
class acitoolkit.acitoolkitlib.AcitoolkitGraphBuilderBases: object
Class to build class hierarchy diagrams for the ACI toolkit Physical and Logical Models
static build_graph_from_parent(root_parent_name)Create a graph starting from the root class name
Parameters root_parent_name – String containing the class name to use as the root of theclass hierarchy graph
Returns None
build_graphs()Build the graphs starting with the various parent class names
class acitoolkit.acitoolkitlib.Credentials(qualifier=’apic’, description=”)Bases: object
Used to get the APIC and MySQL login credentials from the command line (–help gives usage).
The login credentials are taken in the following order
• Command line arguments
• Environment variables
• File named credentials.py
• From an interactive prompt
These are done in a per credential basis so it is possible to specify only some of the arguments. For instance,the username and URL can be specified in credentials.py but the password can be taken from the user throughthe interactive prompt. Another example is using the command line argument to override the URL specified incredentials.py to temporarily connect to a different APIC.
add_argument(*args, **kwargs)Pass through function to allow the underlying parser to be extended.
add_argument_group(*args, **kwargs)Pass through function to allow the underlying parser to be extended.
add_mutually_exclusive_group(*args, **kwargs)Pass through function to allow the underlying parser to be extended.
436 Chapter 6. API Reference
acitoolkit Documentation, Release 0.1
get()Get the arguments and verify them
print_help(*args, **kwargs)Pass through function to allow the underlying parser to be extended.
verify()Verify that the arguments have been passed in some way. If not, ask the user through interactive prompt.
6.1.1.6 aciFaults module
This module deals with Fault objects.
class acitoolkit.aciFaults.FaultsBases: acitoolkit.acibaseobject.BaseACIObject
A class for Fault objects
classmethod get_fault(session, extension=”)Not implemented for this class. Use get_faults() instead
Parameters
• session – Not used
• extension – Not used
Raises AttributeError
classmethod get_faults(session, fault_filter=None, tenant_name=None)Gets the fault that is pending for this class. Faults are returned in the form of objects.
Parameters
• session – the instance of Session used for APIC communication
• fault_filter – fault_filter is used to filter the attributes of a fault. given in a hashformat with domain, types, severity
• tenant_name – tenant_name is a string
get_faults_by_filter(fault_filter=None)filters a fault obj based on the keys given in fault_filter
Parameters fault_filter – fault_filter is used to filter the attributes of a fault. given in ahash format with domain, types, severity
Returns fault obj if it satisfies fault_filter
classmethod has_faults(session, fault_filter=None)Check for pending events from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• fault_filter – fault_filter is used to filter the attributes of a fault. given in a hashformat with domain, types, severity
Returns True or False. True if there are events pending.
is_deleted()Not supported
Raises AttributeError
6.1. acitoolkit package 437
acitoolkit Documentation, Release 0.1
mark_as_deleted()Not supported
Raises AttributeError
classmethod subscribe_faults(session, fault_filter=None, only_new=False)Subscribe to faults from the APIC that pertain to instances of this class.
Parameters
• session – the instance of Session used for APIC communication
• fault_filter – fault_filter is used to filter the attributes of a fault. given in a hashformat with domain, types, severity
• only_new – Boolean indicating whether to get all events or only the new events. Allevents (indicated by setting only_new to False) will queue a create event for all of thecurrently existing objects. Setting only_new to True will only queue events that occurafter the initial subscribe. The default has only_new set to False.
classmethod validate_fault_filter(fault_filter=None)validates the fault_filter with the schema
Parameters fault_filter – fault_filter is used to filter the attributes of a fault. given in ahash format with domain, types, severity
438 Chapter 6. API Reference
CHAPTER 7
Applications
7.1 ACI Endpoint Tracker
The ACI Endpoint Tracker application tracks all of the attachment, detachment, and movement of Endpoints on theACI fabric. It stores all of this activity in a database that allows administrators to examine and query the data to gaindeep visibility into what is happening in the network. The database also provides a foundation for visualization andquerying tools.
Some sample questions that can be answered with the ACI Endpoint Tracker:
• What are all of the current Endpoints on the network ?
• Where is a specific Endpoint ?
• What was connected to the network last Thursday between 3:30 and 4:00 ?
• What are all of the Endpoints belonging to a given Tenant ?
• What Endpoints are on this subnet ?
• What is the history of a given Endpoint (i.e. movement, etc.)?
7.1.1 Installation
7.1.1.1 acitoolkit
This application uses the acitoolkit. The installation steps for the acitoolkit can be found at http://datacenter.github.io/acitoolkit/.
7.1.1.2 MySQL database
The ACI Endpoint Tracker uses the open source MySQL database to store the Endpoint data. MySQL is installedseparately and the installation steps are dependent on the platform. It is recommended that MySQL be installed in thesame machine as the ACI Endpoint Tracker.
439
acitoolkit Documentation, Release 0.1
MySQL installation instructions for most platforms can be found here: MySQL installation instructions.
For Ubuntu, the installation instructions can be found here: Ubuntu MySQL installation instructions.
Once the above package is installed, you should verify that the MySQL database is running. In Linux and Mac OS X,this can be done by entering the following command:
mysqladmin -u root -p status
If the database is running, the output should be similar to below:
Uptime: 358118 Threads: 3 Questions: 5767 Slow queries: 0Opens: 109 Flush tables: 1 Open tables: 61 Queries per secondavg: 0.016
If the database is not running, the output should be similar to below:
mysqladmin: connect to server at 'localhost' failed
7.1.1.3 MySQL Connector
In order for the ACI Endpoint Tracker to communicate with the MySQL database, the MySQL Connector/Python mustbe installed. This is available for most platforms at http://dev.mysql.com/downloads/connector/python/.
7.1.1.4 Flask
Flask is required for the optional GUI frontend. The installation steps for Flask can be found at http://flask.pocoo.org/.
7.1.2 Usage
The ACI Endpoint Tracker serves as a conduit between the APIC and the MySQL database. It requires login credentialsto both, namely the username, password, and IP address or URL.
The user can choose any one of 3 ways to specify the login credentials. If multiple ways are used, they are taken inthe following priority order:
1. Command Line Arguments
The login credentials can be passed directly as command line arguments. The command is shown below:
python aci-endpoint-tracker.py [[ -u | --url] <apicurl>][[ -l | --login ] <apicusername>] [[ -p | --password ]<apicpassword>] [[ -i | --mysqlip ] <mysqlip> [[ -a| --mysqladminlogin ] <mysqladminlogin] [[ -s | --mysqlpassword ]<mysqlpassword> ]
where the parameters are as follows:
440 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
apicurl The URL used to communicate with the APIC.
apicusername The username used to login to the APIC.
apicpassword The password used to login to the APIC.
mysqlip The IP address of the MySQL DB host.
mysqladminlogin The username used to login to the MySQL DB
mysqlpassword The password used to login to the MySQL DB
An example would be the following:
python aci-endpoint-tracker.py -u https://172.35.200.100 -ladmin -p apicpassword -i 127.0.0.1 -a root -s mysqlpassword
2. Environment Variables
The login credentials can be pulled from environment variables in operating systems such as Mac OS X andvarious Linux distributions.
The environmental variables are as follows:
APIC_URLAPIC_LOGINAPIC_PASSWORDAPIC_MYSQLIPAPIC_MYSQLLOGINAPIC_MYSQLPASSWORD
These variables should be set to the correct value. Setting the environment variable is OS dependent. Forexample, in Mac OS X, environment variables can be set in your ~/.bash_profile as follows:
export APIC_URL=https://172.35.200.100export APIC_LOGIN=adminexport APIC_PASSWORD=apicpasswordexport APIC_MYSQLIP=127.0.0.1export APIC_MYSQLLOGIN=rootexport APIC_MYSQLPASSWORD=mysqlpassword
If environmental variables are used to specify the credentials, then the following command will execute the ACIEndpoint Tracker.:
python aci-endpoint-tracker.py
3. Importing a credentials.py file
Alternatively, the login credentials can be pulled from a python file named credentials.py. In this file, itis assumed that the following variables will be set appropriately for your environment.:
URL = 'https://172.35.200.100'LOGIN = 'admin'PASSWORD = 'apicpassword'MYSQLIP = '127.0.0.1'
(continues on next page)
7.1. ACI Endpoint Tracker 441
acitoolkit Documentation, Release 0.1
(continued from previous page)
MYSQLLOGIN = 'root'MYSQLPASSWORD = 'mysqlpassword'
If a credentials.py file is used to specify the credentials, then the following command will execute the ACIEndpoint Tracker.:
python aci-endpoint-tracker.py
7.1.3 What’s it doing ?
Once the ACI Endpoint Tracker is running, it will connect to the APIC and pull all of the existing static and dynamicendpoints that are currently connected to the fabric along with the relevant associated information such as:
• Tenant, Application Profile, and EPG membership
• Interface to which it is connected
• Timestamp of when it connected to the fabric
This data is then inserted into a database called acitoolkit that the ACI Endpoint Tracker will create. Within thedatabase, it creates a single table called endpoints where all of the endpoint information will be inserted.
Once all of this information is collected, the ACI Endpoint Tracker subscribes through the web socket interface to anyupdates to both static and dynamic endpoints. When these updates such as endpoint attachment, detachment, or moveoccurs, the database will be immediately updated with the live data.
Note that updates to the database will only occur when the ACI Endpoint Tracker is running.
7.1.4 Direct Database Query
Once the data is in the database, the MySQL client can be used to query the data directly. Using this method, the fullpower of SQL can be used to provide deep insight into the network endpoint behavior.
To connect to the MySQL database, you can execute the following command locally on the same host where thedatabase is running.:
mysql -u <mysqllogin> -p
The client will then prompt for the MySQL database password. After successfully entering the password, the MySQLprompt will come up as shown in the screenshot below:
$ mysql -u root -pEnter password:Welcome to the MySQL monitor. Commands end with ; or \g.Your MySQL connection id is 145Server version: 5.6.22 MySQL Community Server (GPL)
Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
Oracle is a registered trademark of Oracle Corporation and/or itsaffiliates. Other names may be trademarks of their respectiveowners.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
mysql>
442 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
At this point, the acitoolkit database should be available. The available databases can be shown by entering thefollowing command at the prompt.:
mysql> show databases;
A sample output is shown below.:
+--------------------+| Database |+--------------------+| information_schema || acitoolkit || mysql || performance_schema || test |+--------------------+5 rows in set (0.00 sec)
To switch to the acitoolkit database, enter the following command.:
mysql> use acitoolkit;
The endpoint data is stored in a single table called endpoints. You can then display all of the endpoint data by thefollowing query (shown with a snippet of the output).:
mysql> select * from endpoints;+-------------------+---------------+--------------+--------------+-------------+-----→˓-----------+---------------------+---------------------+| mac | ip | tenant | app | epg |→˓interface | timestart | timestop |+-------------------+---------------+--------------+--------------+-------------+-----→˓-----------+---------------------+---------------------+| 74:26:AC:76:80:5B | 192.168.1.133 | Tenant1 | Application1 | WEB |→˓VPC1 | 2014-12-09 19:08:27 | 0000-00-00 00:00:00 || 00:50:56:94:D8:73 | 0.0.0.0 | Tenant1 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-13 23:48:15 | 0000-00-00 00:00:00 || 00:50:56:94:07:7E | 0.0.0.0 | Tenant1 | Application1 | WEB | eth→˓1/103/1/11 | 2014-12-19 00:58:16 | 0000-00-00 00:00:00 || 00:50:56:94:9A:1C | 192.168.0.5 | Tenant5 | Application1 | USER | eth→˓1/102/1/12 | 2015-01-05 15:29:13 | 0000-00-00 00:00:00 || 00:50:56:94:F3:CD | 0.0.0.0 | Tenant5 | Application1 | USER | eth→˓1/102/1/12 | 2015-01-13 23:49:33 | 0000-00-00 00:00:00 || 00:50:56:94:17:5E | 0.0.0.0 | Tenant5 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-10 01:55:40 | 0000-00-00 00:00:00 || 00:50:56:94:A9:B5 | 10.0.0.5 | Tenant5 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-05 15:29:13 | 0000-00-00 00:00:00 || 00:50:56:94:93:6F | 0.0.0.0 | Tenant5 | Application1 | WEB | eth→˓1/102/1/12 | 2015-01-10 01:55:40 | 0000-00-00 00:00:00 |
At this point, we can query the data using the SQL SELECT command. If you haven’t used SQL before, you maywant to spend some time learning some of the basic syntax related to the SQL SELECT command as it forms the basisfor all queries in the database.
Here are just a few example queries that are possible.
Various fields can be used to filter the results.
Show all of the endpoint information for a specific tenant:
7.1. ACI Endpoint Tracker 443
acitoolkit Documentation, Release 0.1
mysql> select * from endpoints where tenant='cisco';
Show all of the endpoints for a given EPG within a certain tenant:
mysql> select * from endpoints where tenant='cisco' and epg='WEB';
Show all of the endpoints that were on the network on 2014-12-25:
mysql> select * from endpoints where timestart <= '2014-12-25'and timestop > '2014-12-24';
Show all of the history (attach, detach, move) for a particular endpoint:
mysql> select * from endpoints where ip='10.1.1.1' andtenant='cisco';
Output can be limited to certain fields
Show the current location of a given endpoint:
mysql> select interface from endpoints where ip='10.1.1.1' andtenant='cisco';
Unique fields can be shown using the distinct keyword.
Show the EPGs with active endpoints on 2014-12-25:
mysql> select distinct tenant,app,epg from endpoints wheretimestart <= '2014-12-25' and timestop > '2014-12-24';
Counts can be provided for filtered data using the count keyword.
Show the number of Endpoints active on 2014-12-25:
mysql> select count(*) from endpoints where timestart <='2014-12-25' and timestop > '2014-12-24';
Wildcarding can be used with the % wildcard.
Show the endpoints belonging to a given subnet:
mysql> select * from endpoints where ip like '10.10.%';
7.1.5 GUI FrontEnd
In addition to the very powerful MySQL interface, there is also a GUI frontend that allows quick simple searching onthe database using a web browser. The GUI frontend leverages the DataTables package.
7.1.5.1 Demo
The usage of this GUI should be fairly intuitive and a live demo with fake endpoint data can be found at the link below.Please give it a try, specifically the Search function to get a feel for how it works.
ACI Endpoint Tracker GUI Demo
444 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
For instance, to see all of the endpoints for tenant ‘cisco’ simply type cisco in the Search box. To narrow the searchfurther to the endpoints owned by tenant ‘cisco’ on leaf 102, type ‘cisco 102’ in the Search box. Also, each columncan be sorted by clicking on the arrows found in each of the column headers.
7.1.5.2 Usage
To use the GUI front end locally on your own database, you simply need to execute theaci-endpoint-tracker-gui.py file assuming you have installed the Flask package as mentioned inthe Installation section.
The GUI front end deals exclusively with the MySQL database and does not communicate with the APIC, so it onlyrequires the MySQL credentials. These can be passed in the same manner as described for the ACI Endpoint Trackercredentials.
python aci-endpoint-tracker-gui.py -i 127.0.0.1 -a root -smysqlpassword
It should be noted that while the GUI does not communicate with the APIC, as long as the Endpoint Tracker is running,the database will contain the live data for the APIC.
7.1.6 License
Copyright 2015 Cisco Systems, Inc.
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except incompliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is dis-tributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, eitherexpress or implied. See the License for the specific language governing permissions and limitations underthe License.
7.2 ACI Lint
acilint is a static analysis tool for Cisco ACI fabrics. Some example use cases for such a tool include the following:
• Configuration Analysis
In this purpose, it can be used to examine the APIC configuration and determine whether any of theconfiguration could be possibly problematic or suspicious. It examines the configuration much likestatic code analysis tools such as the original lint checker did for software development in C or pylintfor Python. It generates Warnings and Errors that give indications that the configuration should beexamined. Often these Warnings are not problems, but incomplete or stale configuration that is notcurrently in use.
• Compliance, Governance, and Auditing
In this purpose, it can be used to determine whether the configuration meets higher level goveranceand compliance rules. These rules are similar to lint style rules but exploit the APIC ability to provideadditional classification tags on objects. Tags provide a simple and flexible way to classify any APICobject in one or more user-defined groups.
7.2. ACI Lint 445
acitoolkit Documentation, Release 0.1
For example, EPGs can be tagged as secure and non-secure. A compliance rule can be defined thatspecifies that secure EPGs cannot consume a contract from a non-secure EPG. Upon violation of thisrule, a warning or an error can be raised.
7.2.1 Usage
acilint can be run against the current running APIC configuration or a previously saved set of configuration snap-shot files.
7.2.1.1 Running using Live APIC configuration
When acilint collects the configuration directly from the APIC, it needs the proper login credentials. These canbe passed via the command line arguments, a credentials.py file, environment variables, or if none of these, theuser will be directly queried.
The following example shows how to run using the command line arguments for credentials:
python acilint.py -l admin -p password -u https://1.2.3.4
where admin is the APIC login username, password is the APIC password, and https://1.2.3.4 is the URLused to login to the APIC.
7.2.1.2 Running using Configuration Snapshot files
The snapback application provides the ability to save snapshots of the APIC configuration into JSON files.acilint can use these snapshot files as input rather than connecting to a live APIC.
This can be useful in debugging as it lets the user compare the acilint output of the live APIC to the outputof a previous configuration snapshot. acilint can also be used to perform some “What If” scenarios. A singleconfiguration snapshot actually consists of multiple snapshot files. These configuration files are then fed as input intoacilint. These snapshot files fed into acilint can actually be from different configuration snapshot versionscreating an entirely new configuration that may have never existed on the APIC, but we can run acilint against thisconfiguration to check for possible errors and warnings that would occur if this configuration were to be deployed.
The following example shows how to run with configuration snapahot files as input:
python acilint.py --snapshotfiles infra.json tenant-cisco.json fabric.json
7.2.1.3 Customization
By default, all checks will be performed. However, like many static code analysis tools, acilint is customizableand only the desired warnings and errors can be issued.
To customize acilint, generate a configuration file with the following command:
python acilint.py --generateconfigfile acilint.cfg
or even shorter:
python acilint.py -g acilint.cfg
446 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
where acilint.cfg is the filename you wish to create.
The generated configuration file will contain a list of all of the current checks being performed.
An example config file is shown below:
# acilint configuration file# Remove or comment out any warnings or errors that you no longer wish to seeerror_001error_002warning_001warning_002warning_003
To remove checks, either:
• Delete the line containing the check, or
• Comment it out by prepending a # in front of the check
7.2.2 Errors and Warnings
The following list of Errors and Warnings are performed by acilint. Since acilint is written on top ofthe acitoolkit package, the checks are limited to the functionality exposed by that package. However as theacitoolkit expands, so shall acilint.
7.2.2.1 Warnings
warning_001 Tenant has no app profilewarning_002 Tenant has no contextwarning_003 AppProfile has no EPGswarning_004 Context has no BridgeDomainwarning_005 BridgeDomain has no EPGs assignedwarning_006 Contract is not provided at allwarning_007 Contract is not consumed at allwarning_008 EPG providing contracts but in a Context with no enforcementwarning_010 EPG providing contract but consuming EPG is in a different contextwarning_011 Contract contains bi-directional TCP Subjectswarning_012 Contract contains bi-directional UDP Subjectswarning_013 Contract has no Subjectswarning_014 Contract has Subjects with no Filters
7.2.2.2 Errors
error_001 BridgeDomain has no contexterror_002 EPG has no BD assignederror_005 Duplicate or overlapping subnets in Contexterror_006 ExternalNetwork Subnets duplicated in fabric
7.2. ACI Lint 447
acitoolkit Documentation, Release 0.1
7.2.2.3 Critical
critical_001 Compliance check example
critical_001 is a compliance check example that will perform the following:
• Ensure that all of the EPGs in the system have been classified as secure and nonsecure using the tagging capa-bility provided by the acitoolkit.
• Ensures that none of the secure EPGs can communicate with the nonsecure EPGs by checking that no contractprovided by secure EPGs is consumed by nonsecure EPGs.
7.2.3 Developing Checks
Additional checks can be added through new methods on the Checker class. If the method begins with warning_or error_ or critical_, it will automatically be executed as part of the acilint execution. The new checks willalso automatically inherit the customization capability through the usage of the configuration file. Some familiaritywith the acitoolkit object model is necessary to write additional checks.
7.3 Cableplan Application
The Cable Plan module allows the programmer to easily import existing cable plans from XML files, import thecurrently running cable plan from an APIC controller, export previously imported cable plans to a file, and comparecable plans.
More advanced users can use the Cable Plan to easily build a cable plan XML file, query a cable plan, and modify acable plan.
7.3.1 Using the Cable Plan
7.3.1.1 Invoking
The Cable Plan module is imported from cableplan.py which can be found in the acitoolkit/applications/cableplan directory.
It can be incorporated directly into a python script, or it can be used from the command-line.
>>>from cableplan import CABLEPLAN
When you want to create a cable plan from the current running topology of an ACI fabric, simply do the following:
>>>cp = CABLEPLAN.get(session)
Where session is an ACI session object generated using the acitoolkit. cp will be the cable plan object.
You can export that cable plan by opening a file and calling the export() method as follows:
>>>cpFile = open('cableplan1.xml','w')>>>cp.export(cpFile)>>>cpFile.close()
The cable plan will be written to the cableplan1.xml file.
Reading an existing cable plan xml file is equally easy.:
448 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
>>>fileName = 'cableplan2.xml'>>>cp2 = CABLEPLAN.get(fileName)
Note that you don’t have to explicitly open or close the file. The get(fileName) method will take care of that foryou.
Comparing cable plans is one of the more interesting cabablilities of the Cable Plan module and is very easy to dousing the “difference” methods. When generating the difference between two cable plans, the module will return thoseitems that exist in the first cable plan, but not in the second.
For example, assume that in the above example, the second cable plan read from the cableplan2.xml file doesnot have switch “Spine3” and the first cable plan does have it. The following example will print all of the switches inthe first cable plan and not in the second.:
>>>missing_switches = cp1.difference_switch(cp2)>>>for switch in missing_switches :>>> print switch.get_name()Spine3
Similiarly, the following example will print all of the missing links:
>>>missing_links = cp1.difference_link(cp2)>>>for link in missing_links :>>> print link.get_name()
To understand all of the differences between two cable plans it is necessary to compare them in both directions
>>>missing_links = cp1.difference_link(cp2)>>>extra_links = cp2.difference_link(cp1)>>>print('The following links are missing from the second cable plan')>>>for link in missing_links :>>> print link.get_name()>>>print('The following links are extra links in the second cable plan')>>>for link in extra_links:>>> print link.get_name()
If multiple ports are specified in the link object with minPorts and maxPorts attributes (see Cable Plan XML Syntaxbelow), it is possible that a link object in the first cable plan is only partially met by the link objects in the second cableplan. The remaining_need() method of the CpLink object.:
>>>missing_links = cp1.difference_link(cp2)>>>for link in missing_links :>>> print('Link',link.get_name(), 'still needs',link.remaining_need(),'links to→˓satisfy its mimimum requirement')
There is a similar method,
>>>missing_links = cp1.difference_link(cp2) >>>for link in missing_links : >>>print(‘Link’,link.get_name(), ‘still needs’,link.remaining_need(),’links to satisfy its mimimum re-quirement’)
There is a similar method,
>>>missing_links = cp1.difference_link(cp2) >>>for link in missing_links : >>>print(‘Link’,link.get_name(), ‘still needs’,link.remaining_need(),’links to satisfy its mimimum re-quirement’)
There is a similar method, remaining_avail() that returns the number of physical links the link object couldmatch.
7.3. Cableplan Application 449
acitoolkit Documentation, Release 0.1
The remaining_need() and remaining_avail() values are reset when the difference_link()methodis invoked.
It might be necessary to compare cable plans when the names of the switches are different, but the topologies arethe same. This can easily done by simply changing the names of the switches that are different and then doing thecomparisons.:
>>>switch = cp1.get_switch('Spine1')>>>switch.set_name('Spine1_new_name')
This will automatically also fix-up all of the link names that are connected to the switch whose name is being changed.Note that this is also an easy way to change the name of a switch in a cable plan file. Simply read it in, change theswitch name, and export it out. The following example will read in cable_plan2.xml, change the name of ‘Leaf1’to ‘Leaf35’, and then export to the same file the modified cable plan:
>>>fileName = 'cable_plan2.xml'>>>cp2 = CABLEPLAN.get(fileName)>>>switch = cp2.get_switch('Leaf1')>>>switch.set_name('Leaf35')>>>f = open(fileName,'w')>>>cp2.export(f)>>>f.close()
7.3.2 Cable Plan from the Command Line
Invoking the cable plan application from the command line is very simple.
From the command prompt do the following:: > python cableplan.py -h
This will then return usage instructions that explain each of the command line options.
There are two primary functions that can be invoked from the command-line: ‘export’ and ‘compare’.
The ‘export’ function, selected with the ‘-e’ option, will create a cable plan by reading the state of the ACI fabric fromthe APIC controller. This cable plan will be either displayed on the monitor or, if a filename is specified, will be placedin a file. It will be in nicely formatted XML.
The ‘compare’ function will compare two cable plans. One of those must be in a file that is specified at the commandline and the second one can come either directly from the APIC or from a second file. If only the ‘-c1 file_name’option is used, then the content of file_name is compared to the actual running configuration of the ACI fabric.:
> python cableplan.py -c1 netwrk1.xml
If you want to compare two files, then both the ‘-c1 file_name1’ and ‘-c2 file_name2’ options must be used.:
> python cableplan.py -c1 netwrk1.xml -c2 netwrk2.xml
This comparison will list all of the links in the first cable plan that are not in the second and vice-versa.
7.3.3 Cable Plan XML Syntax
The cable plan XML looks like the following
<?xml version="1.0" encoding="UTF-8"?><?created by cable.py?><CISCO_NETWORK_TYPES version="None" xmlns="http://www.cisco.com/cableplan/Schema2"→˓xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="nxos-→˓cable-plan-schema.xsd"> (continues on next page)
450 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
(continued from previous page)
<DATA_CENTER networkLocation="None" idFormat="hostname"><CHASSIS_INFO sourceChassis="spine1" type="n9k">
<LINK_INFO sourcePort="eth2/35" destChassis="leaf1" destPort="eth1/50"/><LINK_INFO sourcePort="eth2/3" destChassis="leaf3" destPort="eth1/50"/><LINK_INFO sourcePort="eth2/2" destChassis="leaf2" destPort="eth1/50"/>
</CHASSIS_INFO><CHASSIS_INFO sourceChassis="spine2" type="n9k">
<LINK_INFO sourcePort="eth2/1" destChassis="leaf1" destPort="eth1/49"/><LINK_INFO sourcePort="eth2/3" destChassis="leaf3" destPort="eth1/49"/><LINK_INFO sourcePort="eth2/2" destChassis="leaf2" destPort="eth1/49"/>
</CHASSIS_INFO></DATA_CENTER>
</CISCO_NETWORK_TYPES>
The CHASSIS_INFO tag normally identifies the spine switches and the leaf switches are contained in theLINK_INFO. When the XML is read in, both leaf and spine switch objects will be created and the get_switch()and get_link() methods can be used to access them.
The LINK_INFO syntax also allows more flexible and loose specifications of the links. If the sourcePort ordestPort attributes are left out, then any port on that corresponding switch can be used. The sourcePort anddestPort attributes can also take port ranges, and lists as shown here:
<LINK_INFO sourcePort="eth1/1-eth1/15, eth1/20" destChassis ="leaf3"/>
In addition, you can add minPorts and maxPorts attributes to specify the minimum number of ports or maximumnumber of ports when multiple are defined.:
<LINK_INFO sourcePort="eth2/3, eth3/4 - eth3/10",destChassis="leaf2", destPort="eth1/1 - eth1/8", minPorts=3,maxPorts=5>
If minPorts is omitted, the default will be 1. If maxPorts is omitted, the default will be unlimited.
When comparing two cable plans using the difference_link() method, if the minimum number of links in thefirst cable plan can be met with second cable plan, then the difference will show no difference. Note that it is possiblethat requirements of several links specified in one cable plan may be met by one or more links in the other. Basically,the difference is calculated such that the minimum requirements of the first cable plan are met without exceeding themaximum capacity of the second cable plan.
7.3.4 Cable Plan API Reference
class cableplan.CpPort(port_set)This class holds the information for a link’s port. Since the port can be a single port, a list or a range, putting itin a class allows more flexible operations on it.
list()
name()
remove_available_port(port)
reset_accounting()
class cableplan.CpLink(source_chassis, dest_chassis, source_port=None, dest_port=None,min_ports=None, max_ports=None)
7.3. Cableplan Application 451
acitoolkit Documentation, Release 0.1
export(chassis, level)Will return string of XML describing the LINK_INFO. It will use ‘chassis’ to determine which is thesource chassis so that it will be omitted from the XML and the other chassis will become the destination.‘level’ is the indentation level.
Parameters
• chassis – Chassis that is the parent of the LINK_INFO xml
• level – Indentation level
Returns str
get_name()
has_port_in_common(link)Returns True if link has any ports that match self. It will compare all ports included expanded lists of portsets.
Parameters link – link to check to see if matches, or overlaps, with self
Returns Boolean
is_connected(switch1, switch2=None)Returns True if switch1 is one of the switch endpoints of the link and switch2 is unspecified otherwise iswill return True if both switch1 and switch2 are switch endpoints of the link. If switch1 is the same asswitch2, it will return False.
Parameters
• switch1 – first switch to check if it an end-point of the link
• switch2 – optional second switch to check if it an end-point of the link
Returns True if switch1 (and optional switch2) is an end-point of the link
static match_links(link1, link2)This will match-up link1 and link2 and increment the reference count in each link for each of the matchesthat happen. It will do this until the minimum number of links has been reached for link1. It will returnthe number of matches that occurred.
Parameters
• link1 – first link of type CpLink that is part of the matching
• link2 – second link of type CpLink that is part of the matching
Returns number of matches that occured.
order()Calculates the order of the link defined by the maximum number of physical links this link can represent
Returns int
remaining_avail()returns the remaining number of physical links available to match against The parameters used to cal-culate this value are reset by the reset_accounting() method which is typically invoked when invoking adifference_link() method on the CABLEPLAN parent object.
Returns int
remaining_need()returns the remaining number of physical links needed to match against self to satisfy requirements. Theparameters used to calculate this value are reset by the reset_accounting() method which is typically in-voked when invoking a difference_link() method on the CABLEPLAN parent object.
452 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
Returns int
reset_accounting()Resets account on the source and dest ports as well as reference count
class cableplan.CpSwitch(name, chassis_type=None, spine=False, parent=None)Bases: object
class holding a switch
export(level)
get_links()returns a list of CP_LINKS from the parent CABLEPLAN that are connected to self.
Returns list of CP_LINKS
get_name()Gets the name of the chassis.
Returns str
get_type()Gets the chassis type. Examples of chassis types are ‘n7k’ or ‘n9k’
Returns str
is_spine()Checks if the ‘spine’ flag is set.
Returns True if the spine flag is set, otherwise False
merge(new_switch)Merges the content of new_switch with self. If self has variables set, then they will not be changed. If theyhave not been set, then they will be assigned the value from new_switch.
Parameters new_switch – switch object to merge with self
set_name(name)Sets the switch name. This will over-ride any preexisting name. Note that this new name will now becomepart of the link name for all the links attached to this switch.
Parameters name – name string to set in the switch
set_parent(parent)Sets the parent of the switch. Parent must be of type CABLEPLAN. If a parent CABLEPLAN was alreadyset and it is differnt from parent, then an error is raised.
Parameters parent – parent object of type CABLEPLAN
class cableplan.CABLEPLAN(version=None)
add_link(new_link)Will add a link to the CABLEPLAN. Duplicates will not be allow, but overlapping will be.
Parameters new_link – Link to be added of type CpLink
Returns None
add_switch(new_switch)This will new_switch to the CABLEPLAN. If the switch already exists, it will merge the new_switch withthe existing one. It will also set the parent of the switch to be the CABLEPLAN. It will return the finalswitch, i.e. new_switch if no merge occurred or the newly merged switch if a merge did occur.
Parameters new_switch – switch to be added of type CpSwitch
7.3. Cableplan Application 453
acitoolkit Documentation, Release 0.1
Returns CpSwitch
delete_link(link)
delete_switch(old_switch)
difference_link(cp)returns a list of links that are in self, but not in cp.
Parameters cp – cable plan of type CABLEPLAN
Returns list of CpLink
difference_switch(cp)Will return a list of switches that are in self, but not in cp.
Parameters cp – cable plan
Returns list of CpSwitch
exists_link(link)
exists_switch(switch)
export(out_file=None, level=0)Will generate XML text of the entire CABLEPLAN and return it as a string. If out_file is specified, itwill write the XML to that file. out_file should be opened for writing before calling this method. ‘level’specifies the amount of indentation to start with.
export_data_center(level=0)Will generate the XML of the CABLEPLAN with DATA_CENTER as the root. This will then be returneda string. ‘level’ specifies the indentation level to start with.
Parameters level – optional indention level, integer
Returns string that is the DATA_CENTER xml
classmethod get(source)This will get input a cable plan from ‘source’. If source is a string, it will get the cable plan from XML ina file whose name is source. If it is a Session, it will read the corresponding APIC to get the cable plan.
Parameters source – filename of type string or Session of type Session
Returns CABLEPLAN
get_links(switch1=None, switch2=None)Returns a list of links. If switch is unspecified, it will return all links. If switch is specified, it will returnall of the links that are connected to switch. If both switch1 and swithc2 are specified, it will return alllinks that are connected between the two switches.
Parameters
• switch1 – optional first switch of type CpSwitch
• switch2 – optional second switch of type CpSwitch
Returns list of links of type CpLink
get_spines()Will return list of switches that are spines
Returns list of CpSwitch
get_switch(switch_name=None)
reset_accounting()clears the refernce count on each link :rtype : None
454 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
sorted_links(switch1, switch2)returns a sorted list of links between switch1 and switch2. They are sorted by specificity from most specificto least specific. The specificity is determined by which list of ports is the minimum between source anddestination and which is the minimum across links. :rtype : list :param switch1: :param switch2:
7.4 Snapback : Configuration Snapshot and Rollback
SummaryGeneral OverviewInstallationWeb based Usage
CredentialsSchedule SnapshotsSnapshotsVersion DiffsAboutFeedback
Command Line UsageVersion Repository
7.4.1 Summary
Snapback is a Configuration Snapshot and Rollback tool for ACI fabrics. Specifically, the tool allows an administratorto perform the following tasks:
• Live snapshots of the running ACI fabric configuration
• One-time and recurring snapshots, both immediate and scheduled
• Versioned storage of the configuration
• Full viewing of any snapshot configuration including the differences between snapshots
• Rollback to any previous configuration snapshot; Full or Partial
• Web based or Command Line administration
7.4.2 General Overview
Snapback provides the ability to generate configuration snapshots of the APIC configuration.
7.4.2.1 Snapshot Files
The configuration snapshots consist of text files containing the system configuration at the time of the snapshot storedin JSON format. Each snapshot is stored in a versioned repository along with a version identifier. The version identifieris automatically generated by concatenating the date with the time of the snapshot.
A single configuration snapshot contains a number of files. All of the configuration under the managed object calledfabric is placed in the file fabric.json. Similarly, all of the configuration under the managed object called infrais placed in the file infra.json. Each tenant has their own configuration file with the file name formatted astenant-<tenantname>.json where <tenantname> is replaced with the actual name of the tenant.
7.4. Snapback : Configuration Snapshot and Rollback 455
acitoolkit Documentation, Release 0.1
Each snapshot will only record the differences between the previous snapshot and the current APIC configurationat the time of the snapshot. This ensures that the minimal amount of state is stored on disk to represent the actualconfiguration. This also means that even though a snapshot make occur, it may not create a new version of everyconfiguration file. In fact, if there have been no changes at all since the previous snapshot, no new files will be created.
7.4.2.2 Rollback
Rollback is when a previous configuration snapshot is used to replace the current APIC configuration. This can be doneon the granularity of a snapshot file. This means that a single tenant can be moved back to a previous configurationwhile the other tenants keep their current configuration state. This is often referred to as partial rollback. When all ofthe configuration files for a particular version are used to replace the current APIC configuration, this is referred to asa full rollback.
7.4.3 Installation
Snapback is part of the acitoolkit and will be installed at the same time. The installation details can be found here.
7.4.4 Web based Usage
Snapback can be run as a web application. Running Snapback as a web application is done by switching to thesnapback directory and running the application:
cd acitoolkit/applications/snapbackpython snapback.py
By default, snapback will run locally on the loopback address. Accessing the tool is done by running a web browserlocally and pointing to the following URL:
http://127.0.0.1:5000/
Upon pointing the web browser to the Snapback URL, the Snapback welcome screen along with the navigation menuon the left hand side.
7.4.4.1 Credentials
Entering the APIC credentials is necessary for Snapback to be able to perform configuration snapshots. Selecting theCredentials in the navigation menu will bring up the Credentials screen where the APIC credentials can be entered.
456 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
A number of fields allow the entry of the APIC credentials. These fields are:
APIC IP Address: This field is the IP address used to communicate with the APIC.
Use secure connection: When selected, this checkbox indicates that the APIC communication uses httpsinstead of http.
APIC Username: The username used when logging in to the APIC.
APIC Password: The password used when logging in to the APIC.
The credentials are stored with Snapback by selecting the Save button. Once the credentials are entered, they willbe saved as part of the user session on that browser. This means that another window or tab using Snapback can beopened on the same machine without having to reenter the credentials.
When entered, the current credentials are shown as in the screenshot below. Note that for security purposes, thepassword is not displayed. Clicking the Reset button will cause Snapback to forget the current credentials, but willnot impact the APIC in any way.
7.4.4.2 Schedule Snapshots
Once the credentials have been entered, configuration snapshots can be taken. Snapshots are configured by setting asnapshot schedule. By selecting the Schedule Snapshots in the navigation menu, the following screen will appear.
7.4. Snapback : Configuration Snapshot and Rollback 457
acitoolkit Documentation, Release 0.1
The snapshot can be a one time occurrence or recurring. The Start date and Start time fields will be used as the dateand time that will be used to create the snapshot. If the time has passed, the snapshot will be triggered immediately.
Selecting the radio button labeled One time will schedule a single configuration snapshot.
Selecting the radio button labeled Every will schedule a recurring configuration snapshot starting at the specified Startdate and Start time. Immediately below the Every radio button is the field to enter the time interval for the snapshot.This is entered as a numeric value within the text box and selecting the granularity of the interval from the drop downbox. The granularity options are minutes, hours, or days.
Selecting the Schedule Snapshot button will cause the schedule to be submitted to Snapback. Below the ScheduleSnapshot button, the last successful snapshot time is shown.
Once a configuration snapshot has been scheduled, the option to cancel the current snapshot schedule is shown as inthe screenshot below.
7.4.4.3 Snapshots
Selecting Snapshots in the navigation window will bring up the following screen.
458 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
The existing snapshots will be shown in a table format. Each row in the table represents a snapshot file. The columnsconsist of the following:
Version: This is the timestamp of the configuration file. The format is YY-MM-DD_HH:MM:SS
Filename: The name of the configuration file as described in section Snapshot Files.
Changes: The Changes column gives the number of lines that have changed in this version as comparedto the previous version. The changes are represented as additions/deletions. The additions are shown ingreen text and the deletions are shown in red text.
Latest: This column shows whether the configuration file is the most recent version of configuration. Acheckmark indicates that this file is the latest. Since a configuration snapshot file is only created whenthere are changes in the configuration, the latest version of different configuration filenames may bedifferent.
Each of the columns can be sorted by clicking on the column title.
The Search text box can be used to filter the table rows shown to the text entered into the box. The filter matching willbe performed on the data contained within the Version and Filename columns.
Filters can be added by selecting the Add Filter pulldown menu in the top right corner of the screen. Filters can beadded for the Version, Filename, and/or Latest columns.
Each row has a checkbox as the leftmost column. Rows can be selected individually or all rows can be selected bychecking the checkbox in the column title row. Rows that have been selected can be subject to the actions containedwithin the With Selected pulldown menu. The following options are available within as With Selected options:
• Rollback Selecting Rollback will cause the selected configuration snapshot files to be pushed to the APICoverwriting the current existing configuration. Since this can be a disruptive operation, a confirmationdialog box will appear to confirm the user’s intent.
• View Selecting View will open the selected files in a separate screen showing the entire JSON configuration.
7.4. Snapback : Configuration Snapshot and Rollback 459
acitoolkit Documentation, Release 0.1
• View Diffs Selecting View Diffs requires 2 and only 2 files to be selected. In this view, the 2 files are opened ina new screen and shown side-by-side. The 2 files should be of the same file name but different versions.
File differences are shown highlighted in green for additions, red for deletions, and yellow for small intra-line changes. The left-most column allows quick navigation between the changes by clicking on the letterwithin the column. The letter f moves to the first change. The letter n moves to the next change. The lastchange will be marked with the letter t which when clicked will move to the first change in the file.
460 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
7.4.4.4 Version Diffs
Selecting Version Diffs in the navigation will show a visual representation of the differences between the variousversions of configuration snapshots.
Within this view, the number of lines changed per version are shown as a stacked bar chart with Additions marked asgreen and Deletions marked as red.
Since many configuration snapshots may not contain any changes, there is a button that can be selected to hide or showthe versions that have no changes.
7.4. Snapback : Configuration Snapshot and Rollback 461
acitoolkit Documentation, Release 0.1
Since there may be huge change differences between different configuration versions, it may be useful to narrow thegraph to a specific date range. For instance, the very first snapshot will likely have a large number of additions whichmay visually hide the subsequent changes due to scale. By adjusting the date range, the initial snapshot can be removedfrom the bar chart.
Hovering the mouse pointer over the bar will show the actual value.
The value is the cumulative changes from all snapshot files within that version. Clicking on the bar will open up theSnapshots view with only the files from that configuration version. In the Snapshots view, the changes are shown onper configuration file.
7.4.4.5 About
This is a simple summary screen with a link to the documentation and a description of the software license.
7.4.4.6 Feedback
This screen provides the ability for the users to submit comments, suggestions, feature requests, and bug reportsdirectly to the authors of the tool.
7.4.5 Command Line Usage
Snapback can also be run as a command line application. This is done by switching to the snapback directory andrunning the application:
cd acitoolkit/applications/snapback
The application is run with options provided in the command line. The help for this command is shown by:
python aciconfigdb.py --help
The output for this command is shown below:
usage: aciconfigdb.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][-s | -ls | -lc [VERSION [VERSION ...]] | --rollbackVERSION [CONFIGFILE ...] | --show VERSION CONFIGFILE]
Configuration Snapshot and Rollback tool for APIC.
optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC IP address.-l LOGIN, --login LOGIN
APIC login ID.-p PASSWORD, --password PASSWORD
APIC login password.-s, --snapshot Take a snapshot of the APIC configuration-ls, --list-snapshots
List all of the available snapshots-lc [VERSION [VERSION ...]], --list-configfiles [VERSION [VERSION ...]]
List all of the available configuration files.--rollback VERSION [CONFIGFILE ...]
Rollback the configuration to the specified version.Optionally only for certain configuration files.
(continues on next page)
462 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
(continued from previous page)
--show VERSION CONFIGFILEShow the contents of a particular configfile from aparticular snapshot version.
The APIC credentials are provided with the –url, –login, and –password options.
An immediate snapshot is taken by passing the –snapshot option.
All of the snapshot versions can be shown by passing the –list-snapshots option.
All of the snapshot files can be listed by passing the –list-configfiles option. If the optional version is passed, the filesfrom those versions will be listed. If no version is passed, the files from the most recent configuration snapshot will belisted.
Configuration snapshot files can be used to rollback the running APIC configuration by issuing the –rollback option.This can be issued for all snapshot files in the version or if the optional list of configuration files is given, the rollbackwill only occur for the specified files.
The file aciconfigdb.py serves a dual purpose. It is both a standalone tool and provides the back end to the GUI. It canbe imported as a library and used in your own applications in the same way as used by the GUI.
7.4.6 Version Repository
The core of the configuration snapshot engine is the Git repository. This is automatically created by Snapback andhidden from the user if so desired. The actual repository is created in the directory named apic-config-db. All of thesnapshot files can be found in this directory and all of the regular git commands can be used on this repository. Eachversion is stored as a git tag. This allows easy access to any version directly from the command line. If you wish toview the repository directly, the following commands will likely be useful:
* git tag
This will show all of the configuration snapshot versions.
* git show <version>:<filename>
This will show the contents of the specific version of thespecified configuration file.
* git diff <version>:<filename> <version>:<filename>
This can be used to view the differences between 2 versions ofthe same configuration file.
7.5 Visualization Examples
This directory contains a number of visualization examples that can be used to display information collected usingthe acitoolkit. Many of the examples are meant to run alongside the ACI Endpoint Tracker applicationand interact with the MySQL database that the ACI Endpoint Tracker populates. Most of the visualizationexamples are interactive.
7.5.1 Installation
To run the visualizations, the python package Flask is required. This can be installed using pip as follows:
7.5. Visualization Examples 463
acitoolkit Documentation, Release 0.1
pip install flask
It is also recommended that the ACI Endpoint Tracker is installed.
7.5.2 Usage
Run the visualizations as follows (supplying your own MySQL credentials):
python acitoolkit-visualizations.py --mysqlip 127.0.0.1 --mysqllogin root --→˓mysqlpassword password
Alternatively, you can create a credentials.py file in the same directory with the following:
MYSQLIP='127.0.0.1'MYSQLLOGIN='root'MYSQLPASSWORD='password'
If the credentials.py file is used, run the visualizations as follows:
python acitoolkit-visualizations.py
Once the visualizations are running, you should see the following displayed:
* Running on http://127.0.0.1:5000/
* Restarting with reloader
Simply point your favorite web browser to the following URL and explore:
http://127.0.0.1:5000/
7.6 EventFeeds: ACI Events to Atom Feed
The EventFeeds application subscribes to APIC Managed Objects and records any updates to the objects over a web-socket connection. These updates can be viewed in a variety of Atom Feeds provided over HTTP.
Some sample use cases for the ACI Events to Atom Feed app:
• Display recent endpoints in a NOC
• Display updated tenants on an IPTV
• Monitor EPG changes in a feed client
7.6.1 Installation
7.6.1.1 acitoolkit
This application uses the acitoolkit. The installation steps for the acitoolkit can be found at http://datacenter.github.io/acitoolkit/.
464 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
7.6.1.2 Flask
Flask is required. Flask should be installed automatically as a dependency of acitoolkit. If not the installation steps forFlask can be found at http://flask.pocoo.org/.
7.6.2 Usage
1. Command Line Arguments
The login credentials can be passed directly as command line arguments. The command is shown below:
python eventfeeds.py --helpusage: eventfeeds.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD]
[--snapshotfiles SNAPSHOTFILES [SNAPSHOTFILES ...]] [--ip IP][--port PORT] [--test]
where the parameters are as follows:
URL The URL used to communicate with the APIC.
LOGIN The username used to login to the APIC.
PASSWORD The password used to login to the APIC.
IP The IP address the webserver should bind to
PORT The PORT the webserver should bind to
An example would be the following:
python eventfeeds.py -u https://172.35.200.100 -ladmin -p apicpassword --ip 127.0.0.1 --port 5000
2. Configuration
The application can be configured via the GUI at http://[ip]:[port]/config/
Under Record Events For. . . select the classes that you would like the app to monitor.
Only select the classes that you are interested in to save on network and database usage.
Log Filename and Events Database can be used to set where the log files are saved to and wherethe sqlite3 event database will be stored. The path is relative to the working directory of the app.
Clicking Save Configuration will write out the configuration to config.json
You must restart the process for the changes to take effect.
7.6.3 What’s it doing ?
Once the application is running, it will connect to the APIC and subscribes (over a websocket) to any requested classesin the configuration file.
Whenever an update is received a row is inserted into a local database table named events. Each row has the ClassName, Name, Timestamp, and JSON representation of the object.
7.6. EventFeeds: ACI Events to Atom Feed 465
acitoolkit Documentation, Release 0.1
When you request a feed the Flask web application will query the database for the relevant events and then dynamicallygenerate an Atom compatable feed.
Note that updates to the database will only occur when the ACI Events to Atom Feed is running.
7.6.4 Feed Details
The feed produced by this application is compatable with the Atom Syndication Format standard
Each feed entry consists of the following fields:
<entry xml:base="http://[ip]:[port]/events/class/[Class]/[Filter]/"><title type="text">[Class]</title><id>[Name]</id><updated>[Timestamp]</updated><author><name>APIC</name>
</author><content type="text">[JSON]</content>
</entry>
Note: The JSON body will have the following characters escaped ” ‘ < > &
7.6.5 Screenshots
Head to the root of the application to get a list of available feeds e.g. http://127.0.0.1:5000/
466 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
Configuration is available at the /config/ URL e.g. http://127.0.0.1:5000/config/
7.6. EventFeeds: ACI Events to Atom Feed 467
acitoolkit Documentation, Release 0.1
7.6.6 License
Copyright 2015 Cisco Systems, Inc.
Licensed under the Apache License, Version 2.0 (the “License”); you may not use this file except incompliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is dis-tributed on an “AS IS” BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, eitherexpress or implied. See the License for the specific language governing permissions and limitations underthe License.
7.7 Intersite Application
7.7.1 Overview
The Intersite application allows application policies to be applied across ACI fabrics. This is configured on an EndpointGroup (EPG) basis. When endpoints appear in an EPG that is configured as an intersite EPG, the endpoint (EP) andEPG information is propagated to the remote sites as per the intersite policy.
On the remote sites, the EP and EPG information is used at the ingress L3out interface to reclassify the endpoint trafficinto the appropriate EPG. Since multiple sites may be involved, the information may be propagated to more than 1remote site as per the intersite policy. Likewise, each site may use more than 1 L3out interface to communicate withthe other sites so the endpoint and EPG information may be installed on more than 1 L3out interface within the site.
468 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
7.7.2 Installation
The Intersite application runs on top of the acitoolkit and comes as part of its applications suite. Installation of theacitoolkit can be performed as per the instructions here. It is recommended that the acitoolkit be installed usingthe git clone commands. Once installed, the Intersite application can be found in the directory acitoolkit/applications/multisite.
7.7.3 Usage
For each site, a single instance of the Intersite application is to be run. This instance will handle exporting the EP andEPG information from the local site to the remote sites as per the Intersite policy. Since most communication will bebidirectional, this implies that there will be a similar policy on the remote site application exporting the EPs on thedesired EPGs back to the local site. The Intersite application is run as a standard python script and can be called asshown below:
python intersite.py -h
usage: intersite.py [-h] [--config CONFIG] [--generateconfig][--debug [{verbose,warnings,critical}]]
ACI Multisite Tool
optional arguments:-h, --help show this help message and exit--config CONFIG Configuration file--generateconfig Generate an empty example configuration file--maxlogfiles MAXLOGFILES
Maximum number of log files (default is 10)--debug [{verbose,warnings,critical}]
Enable debug messages.
The Intersite policy that defines the operation of the tool is provided using the --config command line option. Thisoption is followed by the configuration filename that contains the intersite policy. The intersite policy is describedusing JSON and the details are described in the Configuration File section.
A sample configuration file can be generated by using the --generateconfig command line option. Specifyingthis option will produce the following output and quit the application. The sample JSON will be found in the filenamed sample_config.json and the contents are described in the Configuration File section.
python intersite.py --generateconfig
Sample configuration file written to sample_config.jsonReplicate the site JSON for each site.
Valid values for use_https and local are 'True' and 'False'One site must have local set to 'True'
Replicate the export JSON for each exported contract.
The --debug and --maxlogfiles options are described in the Logging section.
7.7.4 Configuration File
The configuration file defines the policy that is used to configure the tool, connect to the local and remote APICs, andthe EPG export policies. The sample configuration file generated by the --generateconfig command line optiondescribed in the Usage section is shown below.
7.7. Intersite Application 469
acitoolkit Documentation, Release 0.1
{"config": [
{"site": {
"username": "","name": "","ip_address": "","password": "","local": "","use_https": ""
}},{
"export": {"epg": "","app": "","tenant": "","remote_epg": "","remote_sites": [
{"site": {
"interfaces": [{
"l3out": {"consumes_interface": [
{"cif_name": ""
}],"name": "","protected_by": [
{"taboo_name": ""
}],"provides": [
{"contract_name": ""
}],"consumes": [
{"contract_name": ""
}],"tenant": ""
}}
],"name": ""
}}
]}
}]
}
470 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
It should be noted that the configuration consists of site and EPG export policies.
7.7.4.1 Site Policy
The site policy defines how the tool will communicate with the APIC of each fabric. There is a single site object inthe JSON configuration for each site that the tool will communicate. Each site consists of the following items:
• username: The username used to login to the APIC of this site
• name: The name of this Site used in the context of the tool to correlate which site the EPG export policy isreferring.
• ip_address: The IP address of the APIC of this site
• password: The password used to login to the APIC of this site
• local: True or False. True if this site is considered the local site for this tool. Endpoints are only exported fromthe local site.
• use_https: True or False. True if the tool should use https to login to the APIC.
7.7.4.2 EPG Export Policy
The EPG export policy defines which EPG to export EPs and where the EPs should be exported. There is at most asingle EPG export policy for any EPG. The EPG policy contains the following items:
• epg: The name of the EPG to export endpoints
• app: The name of the Application Profile that contains the EPG.
• tenant: The name of the tenant that contains the EPG.
• remote_epg: The name to be used as the EPG (l3extInstP) on the remote site outside L3 interface (l3extOut).
• remote_sites: The remote site policy for this exported EPG.
The remote_sites policy contains one or more remote site policies where the EPG will be exported. Each remotesite policy contains the following items:
• name: The name of the remote site. This should correspond to one of the sites defined in the Site policies.
• interfaces: The list of remote L3out interface policies on the remote site to install the endpoints for this EPG.
Each L3out interface policy contains the following items which describes how the endpoints should be configured onthat particular L3out interface.
• name: The name of this L3out interface. This should match the name configured in the remote site APIC.
• tenant: The tenant name that contains the L3out interface. This should match the name configured in the remotesite APIC. It should be noted that this may be a different tenant than the EPG on the local site.
• provides: This contains a list of zero or more contract names that the EP should provide when configured on theremote site.
• consumes: This contains a list of zero or more contract names that the EP should consume when configured onthe remote site.
• consumes_interface: This contains a list of zero or more contract interface names that the EP should consumewhen configured on the remote site.
• protected_by: This contains a list of zero or more taboo names that the EP should be protected by when config-ured on the remote site.
7.7. Intersite Application 471
acitoolkit Documentation, Release 0.1
• noclean: True of False value that determines whether ‘stale’ contracts should be removed from a remote EPGon script start up (default False, stale contracts are removed).
7.7.5 Command Shell
When the Intersite application is running, there is a small simple command line shell that provides basic interactionwith the tool. The following commands are available at the command prompt.
configfile <filename> Set the configuration filename to the specified filename.show configfile Show the current setting of the configuration filename.show config Show the current JSON configuration that the tool is using.reloadconfig Reload the JSON configuration from the configuration file.→˓This is used to enable new configuration additions, changes, or deletions.show debug Show the current level setting of the debug messages.debug critical Sets the debug message level to critical.debug warnings Sets the debug message level to warnings.debug verbose Sets the debug message level to verbose.help [cmd] Displays help for any command.quit Quit the Intersite tool.
7.7.6 REST API
The Intersite application can be accessed through a simple server application using a REST API. When run as a server,the application usage is run as follows:
python intersite_rest_server.py -husage: intersite_rest_server.py [-h] [--config CONFIG]
[--maxlogfiles MAXLOGFILES] [--generateconfig][--debug [{verbose,warnings,critical}]]
ACI Multisite Tool
optional arguments:-h, --help show this help message and exit--config CONFIG Configuration file--maxlogfiles MAXLOGFILES
Maximum number of log files (default is 10)--generateconfig Generate an empty example configuration file--debug [{verbose,warnings,critical}]
Enable debug messages.--ip IP IP address to listen on.--port PORT Port number to listen on.
An example of running the application would be:
python intersite_rest_server.py --config my_config.json
By default, the server runs on the loopback IP address 127.0.0.1 and the port 5000. This can be changed via the --ipand --port command line options.
The REST API allows retrieving and setting the configuration of the tool. This is done through a single URL, namely/config.
By sending HTTP GET requests to /config, the configuration can be retrieved.
472 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
By sending JSON configuration in an HTTP POST or HTTP PUT to /config, the configuration can be changed.This JSON configuration is the same format as decribed in the Configuration File section. If the configuration is notvalid JSON, a 400 error response code will be returned.
The REST API is protected by basic HTTP authentication with the default username set to admin and the defaultpassword set to acitoolkit.
Some examples using the REST API via curl:
curl -i -u admin:acitoolkit -H “Content-Type: application/json” -X PUT -d@my_config.→˓json http://localhost:5000/configcurl -i -u admin:acitoolkit -X GET http://localhost:5000/config
7.7.7 Automator
The intersite application can be run in a basic automated fashion which will identify EPG’s with an assigned tag andautomatically create the appropriate L3out objects and contracts from the templated configuration. The usefulness ofthis utility is limited by the requirement of tenant’s needing to exist in both sites (APIC’s) consistantly.
python intersite_automator.py -husage: intersite_automator.py [-h] [--config CONFIG] [--generateconfig]
[--debug [{verbose,info,warnings,critical}]][--stdout]
ACI Multisite Automation Tool
optional arguments:-h, --help show this help message and exit--config CONFIG Configuration file in JSON format--generateconfig Generate an empty example configuration file--debug [{verbose,info,warnings,critical}]
Enable printing of debug messages--stdout Output all log events to stdout
To make use of this modified version of the intersite application, you will need to use a different configuration file.The automator removes the need for statically defining the individual export policies but requires a new ‘automator’specific configuration.
{"config": [
{"site": {
"name": "","username": "","password": "","ip_address": "","use_https": "","local": ""
}},{
"site": {"name": "","username": "","password": "","ip_address": "",
(continues on next page)
7.7. Intersite Application 473
acitoolkit Documentation, Release 0.1
(continued from previous page)
"use_https": "","local": ""
}}
],
"automator": {"check_interval": "60","search_filter": "replicated",
"remote_l3out": {"tenant": "Layer3OutTenant","interface_name": "L3Out.Site1-Site2.SERVER","network_name": "Site2.%{tenant}.%{app}.%{epg}"
},
"remote_contracts": {"consume_contract": [{
"name": "CT.%{tenant}.%{app}.%{epg}.to.Site2","default_filter": "east-west-allow-all",
"export_to_epg_owner": "True","export_name": "x.CT.%{tenant}.%{app}.%{epg}.to.Site2"
}],"provide_contract": [{
"name": "CT.%{tenant}.%{app}.%{epg}.to.Site2","default_filter": "east-west-allow-all",
"export_to_epg_owner": "True","export_name": "x.CT.%{tenant}.%{app}.%{epg}.to.Site2"
}],"consume_int_contract": []
}}}
The site specific configuration hasn’t changed, and matches the definition in the previous section of this documentation
• check_interval: integer - The time in seconds that intersite_automator will sleep between searching for EPG’swith the search_filter tag (this should be a >0 value to reduce API calls on the APIC)
• search_filter: string - The tag that intersite_automator will search for (on EPG’s) to identify which EPG’s toreplicate.
• remote_l3out->tenant: string - The tenant that owns the L3out object that will have the ‘remote EPGs’ createdunder.
• remote_l3out->interface_name: string - The interface that will have the ‘remote EPGs’ created under.
• remote_l3out->network_name: string - The network name pattern (see pattern information below) that will beused to create the new remote EPG.
• remote_contracts-><contract type>->name: string - The contract name pattern (see pattern information below)that will be attached to the newly created remote EPG (this will be created if it does not exist)
• remote_contracts-><contract type>->default_filter: string - A default filter that will be attached to a contractthat is created by the intersite automator
• remote_contracts-><contract type>->export_to_epg_owner: boolean string - Determines whether or not theintersite automator script should export this contract to the EPG owner. This is useful if your L3out object sits
474 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
in a different tenant as the EPG but also assumes that there is some level of consistancy across multiple APICs.
• remote_contracts-><contract type>->export_name: string - The pattern to use when exporting the contract tothe EPG owner.
Patterns Certain configuration fields allow the use of a very primitive variable substitution. This enables you to createEPGs and Contracts with dynamic names. The following variables are currently supported:
• ${tenant} - The name of the tenant that owns the EPG
• ${app} - The name of the application that the EPG belongs to
• ${epg} - The name of the EPG that is being replicated
7.7.8 Logging
The Intersite application supports logging of various debug messages. The messages are categorized by levels and theapplication allows the level to be set by the user through the --debug option. The lowest level is critical andwill only log the most critical messages. The next level is warnings and will log all of the critical messages aswell as those deemed suspect. The verbose level gives the previous levels plus additional information that providesdeep insight into what has occurred in the tool.
The debug messages are stored in the file intersite.log. When the file reaches 5 MB in size, the log file willrollover to a new file up to the configured maximum number of log files. By default, this maximum is 10 but thenumber can be changed by the user via the --maxlogfiles command line option. Once the maximum number oflog files has been reached, the oldest log file will be deleted.
7.7.9 APIC Object Model
The following objects are used from the APIC Object Model to enable the functionality of the Intersite tool.
The EPG that is configured to have its endpoints exported to the remote sites is defined using the classes fvTenant,fvAp, and fvAEPg.
The endpoints are tracked by subscribing to notifications from the fvCEp and fvStCEp classes and examining the EPGmembership of those endpoints.
The endpoints are installed on the remote site by using the classes l3extInstP and l3extSubnet under l3extOut. Theendpoint address is installed as a /32 entry within the l3extSubnet. The l3extInstP contains the children fvRsProv,fvRsCons, fvRsConsIf, and fvRsProtBy to associate the endpoint with the appropriate contracts, taboos, and contractinterfaces.
Additionally, a tagInst object is placed on every l3extInstP that contains specially formatted string within the opaquetagInst name field. This string is formatted as follows: isite:tenant_name:app_name:epg_name:site_name where thetenant, app, and epg names are that where the original endpoint is connected and the site_name is that of the site thatinstalled the l3extInstP.
7.7.10 Importing within other applications
Each instance of the tool is represented by the Collector class. Within the Collector class, there will be multipleinstances of the Site class, namely the LocalSite and RemoteSite classes.
If you wish to include the Intersite application in your own app, the policies can be defined as python dictionariesdirectly and passed to the LocalSite instance using the add_policy() function. This will allow the Monitor classto begin exporting the EP of the specified EPG according to the policy. Similarly, the external configuration file canbe updated and the reload_config() function can be called within the Collector class.
7.7. Intersite Application 475
acitoolkit Documentation, Release 0.1
7.8 Connection Search : Configured Connection Search Tool
SummaryGeneral OverviewInstallationWeb based Usage
CredentialsPerforming a SearchExamplesAboutFeedback
Command Line Usage
7.8.1 Summary
Connection Search is an application that allows the user to search for connections between endpoints on the ACIfabric.
7.8.2 General Overview
The Connection Search GUI provides a simple search bar. The user can enter a query into this search bar and theresults are then displayed.
The results are in the format of a table where set of IP addresses or subnets in the first column corresponds to connectionsources, a set of IP addresses or subnets in the second column corresponds to connection destinations, and a finalcolumn that shows which filters are applied to these connections.
Each row of the table is for a unique source-dest combination.
A search query consists of a set of attribute=value tuples. Any attribute can be used at most one time in a given search.If an attribute is not specified, then the search will assume those omitted attributes should not be used to qualify theresults. For example, if NO attributes are specified, then ALL connections will be reported. If sip=10.11.12/24 isspecified, then only connections that have a source that is covered by the subnet 10.11.12.0/24 will be reported.
7.8.3 Installation
Connection Search is part of the acitoolkit and will be installed at the same time. The installation details can be foundhere.
7.8.4 Web based Usage
Connection Search should be run as a web application. Running Connection Search as a web application is done byswitching to the connection_search directory and running the application:
cd acitoolkit/applications/connection_searchpython aciConSearchGui.py
By default, Connection Search will run locally on the loopback address. Accessing the tool is done by running a webbrowser locally and pointing to the following URL:
476 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
http://127.0.0.1:5001/
Upon pointing the web browser to the Connection Search URL, the Connection Search welcome screen along with thenavigation menu on the left hand side will be displayed.
7.8.4.1 Credentials
Entering the APIC credentials is necessary for Connection Search to be able to perform searches. Selecting theCredentials in the navigation menu will bring up the Credentials screen where the APIC credentials can be entered.
A number of fields allow the entry of the APIC credentials. These fields are:
APIC IP Address: This field is the IP address used to communicate with the APIC.
Use secure connection: When selected, this checkbox indicates that the APIC communication uses httpsinstead of http.
APIC Username: The username used when logging in to the APIC.
APIC Password: The password used when logging in to the APIC.
The credentials are stored with Connection Search by selecting the Save button. Once the credentials are entered, theywill be saved as part of the user session on that browser. This means that another window or tab using ConnectionSearch can be opened on the same machine without having to re-enter the credentials.
When entered, the current credentials are shown as in the screenshot below. Note that for security purposes, thepassword is not displayed. Clicking the Reset button will cause Connection Search to forget the current credentials,
7.8. Connection Search : Configured Connection Search Tool 477
acitoolkit Documentation, Release 0.1
but will not impact the APIC in any way.
7.8.4.2 Performing a Search
Selecting Search from the navigation menu will bring up the main search screen. Note that when this item is initiallyselected the Connection Search application will read in the configuration of the APIC. This may take some timedepending upon the size of your configuration as well as the speed of your network connection. Your browser mayindicate that it is “waiting on 127.0.0.1” while the configuration is loading. Please be patient.
A search consists of entering the search filter criteria in the search bar and then pressing the SEARCH button. If nocriteria is entered, all connections will be displayed.
The search criteria consists of a set of attribute=value tuples separated by spaces. Each attribute can only be usedonce. If it is used more than once, the last one is the only one that will take effect.
The Attributes are as follows:
tenant: The name of the tenant to conduct the search in. Note that this will be the tenant used for both thesource and the destination so it will not find connections that are end-points using services shared from adifferent tenant. A search that does not specify the tenant should be used when looking for these kinds ofconnections.
478 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
The tenant name can also contain a simple “*” as a wild-card. For example, tenant=foo* will match ontenants with the name foo, foobar, and foo_xyz. tenant=foo*bar will match on tenants with the namefoobar and foohellobar, but not foobar5.
context: The name of the context to conduct the search in. Like the tenant attribute, this one will apply toboth the source and destination and can contain wild-cards. The context attribute would typically be usedin conjunction with the tenant attribute, but that is not required.
contract: The name of a contract can be specified and only connections that use contract(s) with that namewill be selected. Note that the contact name cannot be further qualified with the tenant name. However,the tenant name can be one of the attributes, but that will limit the result to only endpoints that are underthat tenant.
sip: The source IP address or source subnet. When entering an address, it should be in the defacto standardform of a.b.c.d. For example, 10.2.5.8. When entering a subnet, it should take the form of a.b.c.d/s where“s” is the length of the subnet mask. Any of the prefix digits that are omitted are assumed to be zero. Forexample, 192/8 is equivalent to 192.0.0.0/8 and 192/16 is equivalent to 192.0.0.0/16. The sip attributedoes not accept the “*” wild-card.
Note that when doing a search where the matching criteria can be either more or less specific than thefield in the policy, the result displayed with be value in the policy. For example, if a search is done forsip=1.2.3.0/24 and there is a L3Out that has the address 1.2/16 that matches that sip, the output result willshow 1.2/16. Similarly, if there is an EPG with addresses 1.2.3.4/32 and 1.2.3.89/32, the result displayedin the source column will be 1.2.3.4/32 and 1.2.3.89/32.
dip: The destination IP address or destination subnet. See sip above for how this attribute works.
dport: The layer 4 destination port or port range. This attribute implies that the prot field is tcp udp andthe etherT field is ip unless otherwise specified. The format is either a single value or a range. Whenentering a range, the minimum value should be separated from the maximum value by a dash “-“. Forexample, dport=80 or dport=20-45. A limited set of common protocol acronyms can also be used. Thecurrently supported set is:
‘http’, ‘https’, ‘ftp-data’, ‘smtp’, ‘dns’, ‘pop3’, ‘rtsp’, and ‘any’
sport: The layer 4 source port or port range. This attribute works just like the dport attribute above.
prot: The layer 4 protocol type. This attributes allows the user to select which protocol to search for.Possible values are:’icmp’, ‘igmp’, ‘tcp’, ‘egp’, ‘igp’, ‘udp’, ‘icmpv6’, ‘eigrp’, ‘ospfigp’, ‘pim’, ‘l2tp’and ‘any’.
If the prot attribute is specified, then the etherT attribute is assumed to be ip unless otherwise specified.If the prot attribute is specified as any, then the etherT is not assumed. Note, that there is really no reasonto specify prot=any as this is the default anyway.
etherT: The Ethertype of the protocol. Typical values for the etherT attribute are ip or arp. Specificnumeric values can also be used, however they will be matched against the actual string value providedby the APIC filterEntry object, so a value of 800 will not match ip.
The etherT field is assumed to be ip if the prot field is specified to be an IP protocol. It is assumed to bearp if the arpOpc attribute is specified.
arpOpc: The ARP opcode. Possible values are req, reply and any. The default is any. When the arpOpcis specifed, the etherT is assumed to be arp.
applyToFrag: Apply to fragments attribute. Possible values are yes, no and any. The default is any.
tcpRules: TCP rules. This allows the user to specify the TCP rules to match. Use of this field in Con-nection Search has not been fully validated and so should be used with caution (it will do no harm so youmay play around with it, just be aware the results may not be what you expect). It must be entered exacty
7.8. Connection Search : Configured Connection Search Tool 479
acitoolkit Documentation, Release 0.1
the way the APIC specifies it the FilterEntry object. If tcpRules are specified, then the prot attribute isassumed to be tcp.
When the search results are displayed, placing the cursor over a table cell will cause a fully qualified name of the EPGor OutsideEPG to be displayed and the contract.
For communication within an EPG, i.e. between two end-points that are in the same EPG, Connection Search willcreate an “implied” contract that is both provided and consumed by that EPG. The filter in that contract will allow allcommunication. When the cursor hovers over the filter cell for such a connection, the contract name will begin with“implied” followed by a number that makes it unique. This contract does not actually exist in the APIC.
7.8.4.3 Examples
The following are a few examples of searches and explanation of the results.
Example 1
Find all the connections whose source IP address is in the subnet “192.0.0.0/8”.
Here we see how the search is contructed, sip=192/8. This tells the application to find all connections whose sourceIP address has the first 8-bits equal to “192”.
The results show three connections. The first shows traffic from 0.0.0.0/0 to 0.0.0.0/0. This shows that alltraffic from the mgmt tenant can be switched to Tenant1 L3Out-FW-outside as long as it is TCP traffic. It hasa filter of ip tcp any-any any-any both which should be interpreted as:
• EtherType = IP
• IP protocol = TCP
• L4 destination port minimum = any
• L4 destination port maximum = any
• L4 source port minimum = any
• L4 source port maximum = any
• Direction with respect to destination = both
480 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
The following two rows show connections from Tenant1 to Tenant1, i.e. they correspond to different traffic thanthe first row.
Note that there were additional results that are not shown in the above image.
Example 2
This next example shows a search looking for traffic in a tenant named “Tenant1”, whose destination is to anything inthe 192.168.0.0/16 subnet on any layer 4 destination port number in the range of 80 to 500.
The results show 3 connection groups. The first one is from a host IP of 0.0.0.0/32. This looks funny and isprobably a configuration error in the APIC. The destination here is 0.0.0.0/0 and the filter is for any TCP traffic.0.0.0.0/0 in the destination column covers the search criteria of dip=192.168.0.0/16, and the filter of any-any for the destination port range covers the search criteria of dport=80-500.
Example 3
In this query, the user wants to see all of the destinations that host 192.168.1.133 in tenant “Tenant1” can sendtraffic to.
7.8. Connection Search : Configured Connection Search Tool 481
acitoolkit Documentation, Release 0.1
Here there are two results. The first shows that this host can send traffic to default route of 0/0 for any TCP traffic.The second row shows that this host can communicate with itself using any protocol. This second one has a fully openfilter of any any any-any any-any both. When we place the cursor over this row we can see that this wasan “implied” filter. The implied filter is created by the connection search tool to show that end-points within an EPGcan communicate with each other without any constraint.
7.8.4.4 About
This is a simple summary screen with a link to the documentation and a description of the software license.
7.8.4.5 Feedback
This screen provides the ability for the users to submit comments, suggestions, feature requests, and bug reportsdirectly to the authors of the tool.
7.8.5 Command Line Usage
Connection Search can also be run as a command line application. This is done by switching to the Connection Searchdirectory and running the application:
cd acitoolkit/applications/connection_search
The application is run with options provided in the command line. The help for this command is shown by:
python aciConSearch.py --help
The output for this command is shown below:
usage: aciConSearch.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][--snapshotfiles SNAPSHOTFILES [SNAPSHOTFILES ...]][-tenant TENANT] [-context CONTEXT] [-sip SIP][-dip DIP] [-dport DPORT] [-sport SPORT][-etherT ETHERT] [-prot PROT] [-arpOpc ARPOPC][-applyToFrag APPLYTOFRAG] [-tcpRules TCPRULES]
Connection Search tool for APIC.
optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC IP address.-l LOGIN, --login LOGIN
APIC login ID.-p PASSWORD, --password PASSWORD
APIC login password.--snapshotfiles SNAPSHOTFILES [SNAPSHOTFILES ...]
APIC configuration files-tenant TENANT Tenant name (wildcards, "*", accepted), default "*"-context CONTEXT Context name (wildcards, "*", accepted), default "*"-sip SIP Source IP or subnet - e.g. 1.2.3.4/24, default: "0/0"-dip DIP Destination IP or subnet - e.g. 1.2.3.4/24, default:
"0/0"-dport DPORT Destination L4 Port value or range, e.g. 20-25 or 80.
Default: "any"-sport SPORT Source L4 Port value or range, e.g. 20-25 or 80.
(continues on next page)
482 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
(continued from previous page)
Default: "any"-etherT ETHERT EtherType, e.g. "ip", "arp", "icmp". Default: "any"-prot PROT Protocol, e.g. "tcp", "udp". Default: "any"-arpOpc ARPOPC ARP Opcode, e.g. "req", "ack". Default: "any"-applyToFrag APPLYTOFRAG
Apply to fragment, e.g. "yes", "no". Default: "any"-tcpRules TCPRULES TCP rules, e.g. "syn", "fin". Default: "any"
The APIC credentials are provided with the –url, –login, and –password options.
The remaining fields follow the attributes described above for the GUI version of the tool. Note that when aciCon-Search.py is used from the command line in this manner, the APIC configuration will be loaded and a single searchconducted. When the GUI version is used, the APIC configuration is loaded and multiple searches can be made againstit without doing a re-load.
7.9 Fake APIC
7.9.1 Purpose
• The Fake APIC is designed for users to view Managed Objects (and their properties) based on JSON configura-tion files
• The Fake APIC works as an offline-tool for users who may not have access to the APIC, but still want to seecertain (or all) Managed Objects on the network.
7.9.2 Usage
1. To generate JSON configuration files, use the snapback application located at acitoolkit/applications/snapback
2. Run the aciconfigdb.py file
python aciconfigdb.py -u <APIC url> -l <login> -p <password> -s --v1 -a
• The -s option takes the snapshot of the configuration from the APIC
• The --v1 option takes the snapshot using direct HTTP queries rather than the configuration import and exportpolicies. This is important to be able to simulate HTTP responses.
• The -a option ensures the configuration includes all properties of the class objects
– It’s very important to give the -a because the Fake APIC depends on the all properities of the classobjects
• The JSON files will be located at: acitoolkit/applications/snapback/apic-config-db
• Depending on the APIC, getting all the data may take around 5 - 8 seconds
• Modify a sample file such as aci-show-epgs.py to use the FakeSession class from the Fake APIC
• Pass in the JSON files to the FakeSession constructor
from os import listdirfrom acitoolkit.acifakeapic import FakeSession...
(continues on next page)
7.9. Fake APIC 483
acitoolkit Documentation, Release 0.1
(continued from previous page)
...# Set the directory to the location of the JSON filesdirectory = 'applications/snapback/apic-config-db/'filenames = [directory + file for file in listdir(directory)
if file.endswith('.json')]
# Create the sessionsession = FakeSession(filenames)
• Run the file
python aci-show-epgs.py -u <dummy url> -l <dummy login> -p <dummy password>
• Since this file will be using the Fake APIC, you can pass in any value for the url, login, and password
• The Fake APIC works by retrieving data from the JSON files to mimick responses from the real APIC
• Users can pass in queries such as /api/mo/uni/tn-tenant1/BD-Br1.json?query-target=children to get back responses.
7.9.3 How to pass in queries to the Fake APIC
...
...# to print the data nicelyimport json
session = FakeSession(filenames)query = '/api/mo/uni/tn-tenant1/BD-1.json?query-target=children'fake_ret = fake_session.get(query)fake_data = fake_ret.json()['imdata']data = fake_ret.json()['imdata']# print the data from the Fake APICprint json.dumps(data, indent=4)
7.9.4 What queries the Fake APIC supports
• Any queries starting with api/mo/ can have the scoping filters of
• query-target
• rsp-subtree
• target-subtree-class
• Queries starting with api/node/class can only have the query-target with the value of self
– values of rsp-subtree and target-subtree-class are supported
• For more information regarding scoping filters see page 12 of the Cisco APIC REST API User Guide under thesection “Applying Query Scoping Filters”
7.9.5 Dependencies
• Python 2.7
484 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
• Data in the JSON configuration files
• The Fake APIC can only retrieve data that are in the JSON files, it cannot retrieve any data from the real APIC
• The Fake APIC does not check for bad queries
7.10 ACI Reports
The ACI Reports is a collection of reporting tools for the APIC logical and physical model.
7.10.1 ACI ReportView GUI
Reports can be generated using a GUI based application. Switch reports or Tenant reports can be generated using thisapplication.
7.10.1.1 Installation
This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.
7.10.1.2 Usage
The application is started from the command line. In its simplest form, it can be invoked by the following command:
python aciReportGui.py
The full command help is shown below:
python aciReportGui.py -husage: aciReportGui.py [-h] [--ip IP] [--port PORT] [--test]
[--debug [{verbose,warnings}]]
ACI Report Viewer Tool.
optional arguments:-h, --help show this help message and exit--ip IP IP address to listen on.--port PORT Port number to listen on.--test Enable functions for lab testing.--debug [{verbose,warnings}]
Enable debug messages.
By default, the reporting application runs on port 5000. This port can be changed by passing the --port commandline option.
By default, the IP address used is the 127.0.0.1 loopback address. This allows the application to be accessedlocally. If the application needs to be accessed from web browsers on different machines, it should be run on the actualIP address of the local machine. This can be specified using the --ip command line option.
Once invoked, the GUI is displayed by connecting to http://127.0.0.1:5000 (assuming that the IP and Portare using the default values).
7.10. ACI Reports 485
acitoolkit Documentation, Release 0.1
Credentials
Before the application can generate reports, the application needs to have the credentials required to login to the APIC.This is done by selecting the Credentials menu item in the main ReportsView application.
Selecting the Credentials menu item will display the following form for entering credentials.
The IP address, username, and password of the desired APIC are entered. If the APIC requires HTTPS, the Usesecure connection checkbox should be selected.
Once the credentials have been entered and the Save button is cliecked, the credentials will be displayed as havingbeen set.
486 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
The credentials can be purged by clicking on the Reset button.
Switch Reports
Once credentials have been entered, the switch reports can be displayed by selecting the Switch Reports menuoption. Depending on the size of the ACI fabric, it may take a few seconds for the switch reports to load.
7.10. ACI Reports 487
acitoolkit Documentation, Release 0.1
The switch report screen contains a pulldown menu to select the individual switch to provide a report.
There are a number of report types that are available. These are selected by using the Report Type pulldown menu.The available report types are:
• Basic
• Supervisor Card
• Linecard
• Power Supply
• Fan Tray
• Overlay
• Context
• Bridge (L2) Domain
• Endpoint
• SVI (Router Interface)
• Access Rule
• ARP
• Port Channel (incl. VPC)
Tenant Reports
Once credentials have been entered, the tenant reports can be displayed by selecting the Tenant Reports menuoption. Depending on the size of the ACI fabric, it may take a few seconds for the tenant reports to load.
488 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
The tenant report screen contains a pulldown menu to select the individual tenant to provide a report.
There are a number of report types that are available. These are selected by using the Report Type pulldown menu.The available report types are:
• Context
• Bridge Domain
• Contract
• Taboo
• Filter
• Application Profile
• Endpoint Group
• Endpoint
7.10.2 ACI Logical Reports
Logical Tenant level reporting can be dome via this command line application.
7.10.2.1 Installation
This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.
7.10.2.2 Usage
The application is started from the command line. In its simplest form, it can be invoked by the following command:
python aci-report-logical.py
The full command help is shown below:
7.10. ACI Reports 489
acitoolkit Documentation, Release 0.1
python aci-report-logical.py -h
usage: aci-report-logical.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][-t TENANT] [-all] [-basic] [-context][-bridgedomain] [-contract] [-taboo] [-filter][-app_profile] [-epg] [-endpoint]
Simple application that logs on to the APIC and displays reports for thelogical model.
optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC URL e.g. http://1.2.3.4-l LOGIN, --login LOGIN
APIC login ID.-p PASSWORD, --password PASSWORD
APIC login password.-t TENANT, --tenant TENANT
Specify a particular tenant name-all Show all detailed information-basic Show basic tenant info-context Show Context info-bridgedomain Show Bridge Domain info-contract Show Contract info-taboo Show Taboo (Deny) info-filter Show Filter info-app_profile Show Application Profile info-epg Show Endpoint Group info-endpoint Show End Point info
7.10.2.3 Notes
The reporting application can generate a large amount of data. It may take some time to collect all of the data dependingon the size of the ACI fabric. This is especially true when executing the -all command line option.
7.10.3 ACI Switch Reports
Switch level reporting can be dome via this command line application.
7.10.3.1 Installation
This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.
7.10.3.2 Usage
The application is started from the command line. In its simplest form, it can be invoked by the following command:
python aci-report-switch.py
The full command help is shown below:
490 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
python aci-report-switch.py -h
Simple application that logs on to the APIC and displays reports for theswitches.usage: aci-report-switch.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD] [-s SWITCH]
[-all] [-basic] [-linecard] [-supervisor][-fantray] [-powersupply] [-arp] [-context][-bridgedomain] [-svi] [-accessrule] [-endpoint][-portchannel] [-overlay] [-tablefmt TABLEFMT]
optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC URL e.g. http://1.2.3.4-l LOGIN, --login LOGIN
APIC login ID.-p PASSWORD, --password PASSWORD
APIC login password.-s SWITCH, --switch SWITCH
Specify a particular switch id, e.g. "102"-all Show all detailed information-basic Show basic switch info-linecard Show Lincard info-supervisor Show Supervisor Card info-fantray Show Fantray info-powersupply Show Power Supply info-arp Show ARP info-context Show Context (VRF) info-bridgedomain Show Bridge Domain info-svi Show SVI info-accessrule Show Access Rule and Filter info-endpoint Show End Point info-portchannel Show Port Channel and Virtual Port Channel info-overlay Show Overlay info-tablefmt TABLEFMT Table format [fancy_grid, plain, simple, grid, pipe,
orgtbl, rst, mediawiki, latex, latex_booktabs]
7.10.3.3 Notes
The reporting application can generate a large amount of data. It may take some time to collect all of the data dependingon the size of the ACI fabric. This is especially true when executing the -all command line option.
7.10.4 ACI Security Report
This application provides simple audit reports that can be used for compliance checks or security audits.
7.10.4.1 Installation
This reporting application is included in the acitoolkit package when downloaded using the git clonemethodof installation. The application can be found in the acitoolkit/applications/reports directory.
7.10.4.2 Usage
The application is started from the command line. In its simplest form, it can be invoked by the following command:
7.10. ACI Reports 491
acitoolkit Documentation, Release 0.1
python aci-report-security-audit.py
The full command help is shown below:
python aci-report-security-audit.py -h
usage: aci-report-security-audit.py [-h] [-u URL] [-l LOGIN] [-p PASSWORD][--csv CSV]
Simple application that logs on to the APIC and produces a report that can beused for security compliance auditing.
optional arguments:-h, --help show this help message and exit-u URL, --url URL APIC URL e.g. http://1.2.3.4-l LOGIN, --login LOGIN
APIC login ID.-p PASSWORD, --password PASSWORD
APIC login password.--csv CSV Output to a CSV file.
7.10.4.3 Output
By default, the audit report is displayed on the screen as comma separated values. If the --csv command line optionis provided, the output will be sent to the specified filename in proper CSV format.
Each row of the report contains the following information:
* Tenant name
* Context (VRF) name
* Bridge Domain name
* Application Profile name
* EPG name
* Number of Consumer EPG Endpoints
* Provided Contract name
* Number of Providing EPG Endpoints
* Consumed Contract name
* Protocol specified in the Filter entry
* Source port range specified in the Filter entry
* Destination port range specified in the Filter entry
7.11 APIC Test Harness
7.11.1 Purpose
• The APIC Test Harness wraps the Fake APIC into an application server so that toolkit applications can runagainst the test harness with no modification whatsoever.
• It can be used to execute toolkit scripts and applications against an APIC snapshot rather than a live APIC. Forinstance, the sample script acitoolkit/samples/aci-show-endpoints.py could be run against thelive APIC, a snapshot file, yesterday’s snapshot file, or even last year’s snapshot file.
• It can be used to generate conditions that are very difficult to create in real systems such as communicationfailures, connection resets, slow responses, and response timeouts.
492 Chapter 7. Applications
acitoolkit Documentation, Release 0.1
7.11.2 Usage
1. To generate JSON configuration files, use the snapback application located at acitoolkit/applications/snapback
2. Run the aciconfigdb.py file
python aciconfigdb.py -u <APIC url> -l <login> -p <password> -s --v1 -a
• The -s option takes the snapshot of the configuration from the APIC
• The --v1 option takes the snapshot using direct HTTP queries rather than the configuration import andexport policies. This is important to be able to simulate HTTP responses.
• The -a option ensures the configuration includes all properties of the class objects
– It’s very important to give the -a because the Fake APIC depends on the all properities of the classobjects
• The JSON files will be located at: acitoolkit/applications/snapback/apic-config-db
• Depending on the APIC, getting all the data may take around 5 - 8 seconds
3. The APIC test harness is located in the acitoolkit/applications/testharness directory.
• Run the apic_test_harness.py file
python apic_test_harness.py --directory <snapshot directory>
– The --directory option provides the directory where the snapshot files are located. If the snapshotwas created in the snapback directory, the command would be issued as follows
python apic_test_harness.py --directory ../snapback/apic-config-db/
• At this point, the APIC test harness is running as an application server. By default, this service runs on theloopback address 127.0.0.1 on port 5000.
4. Use the APIC test harness
• Leave the APIC test harness running and execute applications against it.
• Here is an example usage taken from the acitoolkit/samples directory showing the usage of theaci-show-endpoints.py.
python aci-show-endpoints.py -l admin -p password -u http://127.0.0.1:5000
• Most of the show commands found in the acitoolkit/samples directory can be executed againstthe APIC Test Harness and many applications can be as well.
7.11.3 Full command line options
• The full list of command line arguments is available through the --help command line argument.
python apic_test_harness.py -husage: apic_test_harness.py [-h] [--directory DIRECTORY]
[--maxlogfiles MAXLOGFILES][--debug [{verbose,warnings,critical}]] [--ip
→˓IP][--port PORT]
(continues on next page)
7.11. APIC Test Harness 493
acitoolkit Documentation, Release 0.1
(continued from previous page)
ACI APIC Test Harness Tool
optional arguments:-h, --help show this help message and exit--directory DIRECTORY
Directory containing the Snapshot files--maxlogfiles MAXLOGFILES
Maximum number of log files (default is 10)--debug [{verbose,warnings,critical}]
Enable debug messages.--ip IP IP address to listen on.--port PORT Port number to listen on.
– Log files are stored locally within the directory where the APIC Test Harness is run. For themost complete logs, use the --debug verbose command line argument.
– If communication is local only, the default IP address of 127.0.0.1 should be used. If com-munication will be originated from external sources, the IP address of the interface connectingto the outside world should be used.
7.11.4 What APIC Test Harness supports
• The APIC Test Harness is not a full blown APIC. It can only respond with the information found in the snapshotJSON files. It will accept configuration but the configuration will not change the snapshot JSON files.
• The APIC Test Harness sits on top of the Fake APIC and is limited to what the Fake APIC supports.
7.11.5 Known Issues
• WebSockets and Event Subscriptions are not supported.
• Statistics support is limited.
• No configuration changes are supported.
494 Chapter 7. Applications
Python Module Index
aacitoolkit.acibaseobject, 53acitoolkit.aciFaults, 437acitoolkit.aciphysobject, 62acitoolkit.acisession, 154acitoolkit.acitoolkit, 157acitoolkit.acitoolkitlib, 436
ccableplan, 451
497
Index
Aacitoolkit.acibaseobject (module), 53acitoolkit.aciFaults (module), 437acitoolkit.aciphysobject (module), 62acitoolkit.acisession (module), 154acitoolkit.acitoolkit (module), 157acitoolkit.acitoolkitlib (module), 436AcitoolkitGraphBuilder (class in aci-
toolkit.acitoolkitlib), 436add() (acitoolkit.aciphysobject.WorkingData method),
154add_argument() (acitoolkit.acitoolkitlib.Credentials
method), 436add_argument_group() (aci-
toolkit.acitoolkitlib.Credentials method),436
add_bd() (acitoolkit.acitoolkit.EPG method), 238add_bd() (acitoolkit.acitoolkit.OutsideL2 method),
354add_child() (acitoolkit.acibaseobject.BaseACIObject
method), 53add_child() (acitoolkit.acibaseobject.BaseACIPhysObject
method), 59add_child() (acitoolkit.aciphysobject.Cluster
method), 62add_child() (acitoolkit.aciphysobject.ExternalSwitch
method), 68add_child() (acitoolkit.aciphysobject.Fabric
method), 74add_child() (acitoolkit.aciphysobject.Fan method),
79add_child() (acitoolkit.aciphysobject.Fantray
method), 85add_child() (acitoolkit.aciphysobject.Interface
method), 91add_child() (acitoolkit.aciphysobject.Linecard
method), 98add_child() (acitoolkit.aciphysobject.Link method),
104
add_child() (acitoolkit.aciphysobject.Node method),111
add_child() (acitoolkit.aciphysobject.PhysicalModelmethod), 118
add_child() (acitoolkit.aciphysobject.Pod method),123
add_child() (acitoolkit.aciphysobject.Powersupplymethod), 129
add_child() (acitoolkit.aciphysobject.Processmethod), 135
add_child() (acitoolkit.aciphysobject.Supervisorcardmethod), 141
add_child() (acitoolkit.aciphysobject.Systemcontrollermethod), 147
add_child() (acitoolkit.acitoolkit.AnyEPG method),157
add_child() (acitoolkit.acitoolkit.AppProfilemethod), 164
add_child() (acitoolkit.acitoolkit.AttributeCriterionmethod), 170
add_child() (acitoolkit.acitoolkit.BaseContractmethod), 181
add_child() (acitoolkit.acitoolkit.BaseSubnetmethod), 187
add_child() (acitoolkit.acitoolkit.BaseTerminalmethod), 193
add_child() (acitoolkit.acitoolkit.BGPSessionmethod), 175
add_child() (acitoolkit.acitoolkit.BridgeDomainmethod), 199
add_child() (acitoolkit.acitoolkit.CommonEPGmethod), 208
add_child() (acitoolkit.acitoolkit.Context method),215
add_child() (acitoolkit.acitoolkit.Contract method),221
add_child() (acitoolkit.acitoolkit.ContractInterfacemethod), 227
add_child() (acitoolkit.acitoolkit.ContractSubjectmethod), 232
499
acitoolkit Documentation, Release 0.1
add_child() (acitoolkit.acitoolkit.Endpoint method),252
add_child() (acitoolkit.acitoolkit.EPG method), 238add_child() (acitoolkit.acitoolkit.EPGDomain
method), 247add_child() (acitoolkit.acitoolkit.FexInterface
method), 258add_child() (acitoolkit.acitoolkit.Filter method), 263add_child() (acitoolkit.acitoolkit.FilterEntry
method), 269add_child() (acitoolkit.acitoolkit.InputTerminal
method), 280add_child() (acitoolkit.acitoolkit.IPEndpoint
method), 275add_child() (acitoolkit.acitoolkit.L2ExtDomain
method), 286add_child() (acitoolkit.acitoolkit.L2Interface
method), 292add_child() (acitoolkit.acitoolkit.L3ExtDomain
method), 297add_child() (acitoolkit.acitoolkit.L3Interface
method), 303add_child() (acitoolkit.acitoolkit.LogicalModel
method), 309add_child() (acitoolkit.acitoolkit.NetworkPool
method), 319add_child() (acitoolkit.acitoolkit.OSPFInterface
method), 324add_child() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 330add_child() (acitoolkit.acitoolkit.OSPFRouter
method), 335add_child() (acitoolkit.acitoolkit.OutputTerminal
method), 341add_child() (acitoolkit.acitoolkit.OutsideEPG
method), 347add_child() (acitoolkit.acitoolkit.OutsideL2
method), 354add_child() (acitoolkit.acitoolkit.OutsideL2EPG
method), 360add_child() (acitoolkit.acitoolkit.OutsideL3
method), 367add_child() (acitoolkit.acitoolkit.OutsideNetwork
method), 373add_child() (acitoolkit.acitoolkit.PhysDomain
method), 379add_child() (acitoolkit.acitoolkit.PortChannel
method), 385add_child() (acitoolkit.acitoolkit.Search method),
390add_child() (acitoolkit.acitoolkit.Subnet method),
396add_child() (acitoolkit.acitoolkit.Taboo method),
402
add_child() (acitoolkit.acitoolkit.Tag method), 408add_child() (acitoolkit.acitoolkit.Tenant method),
413add_child() (acitoolkit.acitoolkit.VMM method), 419add_child() (acitoolkit.acitoolkit.VMMCredentials
method), 425add_child() (acitoolkit.acitoolkit.VmmDomain
method), 430add_collection_policy() (aci-
toolkit.acitoolkit.BaseMonitorClass method),186
add_collection_policy() (aci-toolkit.acitoolkit.CollectionPolicy method),207
add_collection_policy() (aci-toolkit.acitoolkit.MonitorPolicy method),315
add_collection_policy() (aci-toolkit.acitoolkit.MonitorStats method),317
add_collection_policy() (aci-toolkit.acitoolkit.MonitorTarget method),318
add_context() (acitoolkit.acitoolkit.BridgeDomainmethod), 199
add_context() (acitoolkit.acitoolkit.L3Interfacemethod), 303
add_context() (acitoolkit.acitoolkit.OutsideL3method), 367
add_filter() (acitoolkit.acitoolkit.BaseTerminalmethod), 193
add_filter() (acitoolkit.acitoolkit.ContractSubjectmethod), 232
add_filter() (acitoolkit.acitoolkit.InputTerminalmethod), 280
add_filter() (acitoolkit.acitoolkit.OutputTerminalmethod), 341
add_infradomain() (acitoolkit.acitoolkit.EPGmethod), 238
add_ip_address() (aci-toolkit.acitoolkit.AttributeCriterion method),170
add_l2extdom() (acitoolkit.acitoolkit.OutsideL2method), 354
add_l3extdom() (acitoolkit.acitoolkit.OutsideL3method), 367
add_l3out() (acitoolkit.acitoolkit.BridgeDomainmethod), 199
add_link() (cableplan.CABLEPLAN method), 453add_mutually_exclusive_group() (aci-
toolkit.acitoolkitlib.Credentials method), 436add_network() (acitoolkit.acitoolkit.PhysDomain
method), 379add_static_leaf_binding() (aci-
500 Index
acitoolkit Documentation, Release 0.1
toolkit.acitoolkit.EPG method), 238add_stats() (acitoolkit.acitoolkit.BaseMonitorClass
method), 186add_stats() (acitoolkit.acitoolkit.CollectionPolicy
method), 207add_stats() (acitoolkit.acitoolkit.MonitorPolicy
method), 315add_stats() (acitoolkit.acitoolkit.MonitorStats
method), 317add_stats() (acitoolkit.acitoolkit.MonitorTarget
method), 318add_subnet() (acitoolkit.acitoolkit.BridgeDomain
method), 199add_switch() (cableplan.CABLEPLAN method), 453add_tag() (acitoolkit.acibaseobject.BaseACIObject
method), 53add_tag() (acitoolkit.aciphysobject.Cluster method),
62add_tag() (acitoolkit.aciphysobject.ExternalSwitch
method), 68add_tag() (acitoolkit.aciphysobject.Fabric method),
74add_tag() (acitoolkit.aciphysobject.Fan method), 79add_tag() (acitoolkit.aciphysobject.Fantray method),
85add_tag() (acitoolkit.aciphysobject.Interface
method), 91add_tag() (acitoolkit.aciphysobject.Linecard
method), 99add_tag() (acitoolkit.aciphysobject.Link method), 105add_tag() (acitoolkit.aciphysobject.Node method),
112add_tag() (acitoolkit.aciphysobject.PhysicalModel
method), 118add_tag() (acitoolkit.aciphysobject.Pod method), 123add_tag() (acitoolkit.aciphysobject.Powersupply
method), 129add_tag() (acitoolkit.aciphysobject.Process method),
135add_tag() (acitoolkit.aciphysobject.Supervisorcard
method), 141add_tag() (acitoolkit.aciphysobject.Systemcontroller
method), 148add_tag() (acitoolkit.acitoolkit.AnyEPG method), 157add_tag() (acitoolkit.acitoolkit.AppProfile method),
164add_tag() (acitoolkit.acitoolkit.AttributeCriterion
method), 170add_tag() (acitoolkit.acitoolkit.BaseContract
method), 181add_tag() (acitoolkit.acitoolkit.BaseSubnet method),
187add_tag() (acitoolkit.acitoolkit.BaseTerminal
method), 193
add_tag() (acitoolkit.acitoolkit.BGPSession method),175
add_tag() (acitoolkit.acitoolkit.BridgeDomainmethod), 199
add_tag() (acitoolkit.acitoolkit.CommonEPGmethod), 208
add_tag() (acitoolkit.acitoolkit.Context method), 215add_tag() (acitoolkit.acitoolkit.Contract method), 221add_tag() (acitoolkit.acitoolkit.ContractInterface
method), 227add_tag() (acitoolkit.acitoolkit.ContractSubject
method), 232add_tag() (acitoolkit.acitoolkit.Endpoint method),
252add_tag() (acitoolkit.acitoolkit.EPG method), 239add_tag() (acitoolkit.acitoolkit.EPGDomain method),
247add_tag() (acitoolkit.acitoolkit.FexInterface method),
258add_tag() (acitoolkit.acitoolkit.Filter method), 263add_tag() (acitoolkit.acitoolkit.FilterEntry method),
269add_tag() (acitoolkit.acitoolkit.InputTerminal
method), 281add_tag() (acitoolkit.acitoolkit.IPEndpoint method),
275add_tag() (acitoolkit.acitoolkit.L2ExtDomain
method), 286add_tag() (acitoolkit.acitoolkit.L2Interface method),
292add_tag() (acitoolkit.acitoolkit.L3ExtDomain
method), 297add_tag() (acitoolkit.acitoolkit.L3Interface method),
303add_tag() (acitoolkit.acitoolkit.LogicalModel
method), 309add_tag() (acitoolkit.acitoolkit.NetworkPool method),
319add_tag() (acitoolkit.acitoolkit.OSPFInterface
method), 325add_tag() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 330add_tag() (acitoolkit.acitoolkit.OSPFRouter method),
336add_tag() (acitoolkit.acitoolkit.OutputTerminal
method), 341add_tag() (acitoolkit.acitoolkit.OutsideEPG method),
347add_tag() (acitoolkit.acitoolkit.OutsideL2 method),
354add_tag() (acitoolkit.acitoolkit.OutsideL2EPG
method), 360add_tag() (acitoolkit.acitoolkit.OutsideL3 method),
367
Index 501
acitoolkit Documentation, Release 0.1
add_tag() (acitoolkit.acitoolkit.OutsideNetworkmethod), 373
add_tag() (acitoolkit.acitoolkit.PhysDomain method),379
add_tag() (acitoolkit.acitoolkit.PortChannel method),385
add_tag() (acitoolkit.acitoolkit.Search method), 391add_tag() (acitoolkit.acitoolkit.Subnet method), 396add_tag() (acitoolkit.acitoolkit.Taboo method), 402add_tag() (acitoolkit.acitoolkit.Tag method), 408add_tag() (acitoolkit.acitoolkit.Tenant method), 413add_tag() (acitoolkit.acitoolkit.VMM method), 419add_tag() (acitoolkit.acitoolkit.VMMCredentials
method), 425add_tag() (acitoolkit.acitoolkit.VmmDomain
method), 430add_target() (aci-
toolkit.acitoolkit.BaseMonitorClass method),186
add_target() (acitoolkit.acitoolkit.CollectionPolicymethod), 207
add_target() (acitoolkit.acitoolkit.MonitorPolicymethod), 315
add_target() (acitoolkit.acitoolkit.MonitorStatsmethod), 317
add_target() (acitoolkit.acitoolkit.MonitorTargetmethod), 318
addr (acitoolkit.acitoolkit.BaseSubnet attribute), 188addr (acitoolkit.acitoolkit.OutsideNetwork attribute),
373addr (acitoolkit.acitoolkit.Subnet attribute), 396AnyEPG (class in acitoolkit.acitoolkit), 157AppProfile (class in acitoolkit.acitoolkit), 164attach() (acitoolkit.acibaseobject.BaseACIObject
method), 53attach() (acitoolkit.aciphysobject.Cluster method),
62attach() (acitoolkit.aciphysobject.ExternalSwitch
method), 68attach() (acitoolkit.aciphysobject.Fabric method), 74attach() (acitoolkit.aciphysobject.Fan method), 79attach() (acitoolkit.aciphysobject.Fantray method),
85attach() (acitoolkit.aciphysobject.Interface method),
91attach() (acitoolkit.aciphysobject.Linecard method),
99attach() (acitoolkit.aciphysobject.Link method), 105attach() (acitoolkit.aciphysobject.Node method), 112attach() (acitoolkit.aciphysobject.PhysicalModel
method), 118attach() (acitoolkit.aciphysobject.Pod method), 123attach() (acitoolkit.aciphysobject.Powersupply
method), 129
attach() (acitoolkit.aciphysobject.Process method),135
attach() (acitoolkit.aciphysobject.Supervisorcardmethod), 141
attach() (acitoolkit.aciphysobject.Systemcontrollermethod), 148
attach() (acitoolkit.acitoolkit.AnyEPG method), 157attach() (acitoolkit.acitoolkit.AppProfile method),
164attach() (acitoolkit.acitoolkit.AttributeCriterion
method), 170attach() (acitoolkit.acitoolkit.BaseContract method),
181attach() (acitoolkit.acitoolkit.BaseSubnet method),
188attach() (acitoolkit.acitoolkit.BaseTerminal method),
194attach() (acitoolkit.acitoolkit.BGPSession method),
175attach() (acitoolkit.acitoolkit.BridgeDomain
method), 199attach() (acitoolkit.acitoolkit.CommonEPG method),
208attach() (acitoolkit.acitoolkit.Context method), 216attach() (acitoolkit.acitoolkit.Contract method), 221attach() (acitoolkit.acitoolkit.ContractInterface
method), 227attach() (acitoolkit.acitoolkit.ContractSubject
method), 233attach() (acitoolkit.acitoolkit.Endpoint method), 252attach() (acitoolkit.acitoolkit.EPG method), 239attach() (acitoolkit.acitoolkit.EPGDomain method),
247attach() (acitoolkit.acitoolkit.FexInterface method),
258attach() (acitoolkit.acitoolkit.Filter method), 263attach() (acitoolkit.acitoolkit.FilterEntry method),
270attach() (acitoolkit.acitoolkit.InputTerminal method),
281attach() (acitoolkit.acitoolkit.IPEndpoint method),
275attach() (acitoolkit.acitoolkit.L2ExtDomain method),
286attach() (acitoolkit.acitoolkit.L2Interface method),
292attach() (acitoolkit.acitoolkit.L3ExtDomain method),
298attach() (acitoolkit.acitoolkit.L3Interface method),
303attach() (acitoolkit.acitoolkit.LogicalModel method),
309attach() (acitoolkit.acitoolkit.NetworkPool method),
319
502 Index
acitoolkit Documentation, Release 0.1
attach() (acitoolkit.acitoolkit.OSPFInterfacemethod), 325
attach() (acitoolkit.acitoolkit.OSPFInterfacePolicymethod), 330
attach() (acitoolkit.acitoolkit.OSPFRouter method),336
attach() (acitoolkit.acitoolkit.OutputTerminalmethod), 341
attach() (acitoolkit.acitoolkit.OutsideEPG method),347
attach() (acitoolkit.acitoolkit.OutsideL2 method),354
attach() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 360
attach() (acitoolkit.acitoolkit.OutsideL3 method),367
attach() (acitoolkit.acitoolkit.OutsideNetworkmethod), 373
attach() (acitoolkit.acitoolkit.PhysDomain method),379
attach() (acitoolkit.acitoolkit.PortChannel method),385
attach() (acitoolkit.acitoolkit.Search method), 391attach() (acitoolkit.acitoolkit.Subnet method), 396attach() (acitoolkit.acitoolkit.Taboo method), 402attach() (acitoolkit.acitoolkit.Tag method), 408attach() (acitoolkit.acitoolkit.Tenant method), 413attach() (acitoolkit.acitoolkit.VMM method), 419attach() (acitoolkit.acitoolkit.VMMCredentials
method), 425attach() (acitoolkit.acitoolkit.VmmDomain method),
430AttributeCriterion (class in acitoolkit.acitoolkit),
169
BBaseACIObject (class in acitoolkit.acibaseobject), 53BaseACIPhysModule (class in aci-
toolkit.acibaseobject), 59BaseACIPhysObject (class in aci-
toolkit.acibaseobject), 59BaseContract (class in acitoolkit.acitoolkit), 181BaseInterface (class in acitoolkit.acibaseobject), 60BaseMonitorClass (class in acitoolkit.acitoolkit),
186BaseRelation (class in acitoolkit.acibaseobject), 61BaseSubnet (class in acitoolkit.acitoolkit), 187BaseTerminal (class in acitoolkit.acitoolkit), 193BGPSession (class in acitoolkit.acitoolkit), 175BridgeDomain (class in acitoolkit.acitoolkit), 199build_graph_from_parent() (aci-
toolkit.acitoolkitlib.AcitoolkitGraphBuilderstatic method), 436
build_graphs() (aci-toolkit.acitoolkitlib.AcitoolkitGraphBuildermethod), 436
build_object_dictionary() (in module aci-toolkit.acitoolkit), 436
build_vnid_dictionary() (aci-toolkit.aciphysobject.WorkingData method),154
CCABLEPLAN (class in cableplan), 453cableplan (module), 451check_parent() (aci-
toolkit.acibaseobject.BaseACIPhysObjectclass method), 59
check_parent() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 68
check_parent() (acitoolkit.aciphysobject.Fan classmethod), 79
check_parent() (acitoolkit.aciphysobject.Fantrayclass method), 85
check_parent() (acitoolkit.aciphysobject.Linecardclass method), 99
check_parent() (acitoolkit.aciphysobject.Link classmethod), 105
check_parent() (acitoolkit.aciphysobject.Nodeclass method), 112
check_parent() (acitoolkit.aciphysobject.Pod classmethod), 123
check_parent() (aci-toolkit.aciphysobject.Powersupply classmethod), 129
check_parent() (acitoolkit.aciphysobject.Processclass method), 135
check_parent() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 141
check_parent() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 148
check_session() (aci-toolkit.acibaseobject.BaseACIObject staticmethod), 53
check_session() (acitoolkit.aciphysobject.Clusterstatic method), 62
check_session() (aci-toolkit.aciphysobject.ExternalSwitch staticmethod), 68
check_session() (acitoolkit.aciphysobject.Fabricstatic method), 74
check_session() (acitoolkit.aciphysobject.Fanstatic method), 79
Index 503
acitoolkit Documentation, Release 0.1
check_session() (acitoolkit.aciphysobject.Fantraystatic method), 85
check_session() (acitoolkit.aciphysobject.Interfacestatic method), 91
check_session() (acitoolkit.aciphysobject.Linecardstatic method), 99
check_session() (acitoolkit.aciphysobject.Linkstatic method), 105
check_session() (acitoolkit.aciphysobject.Nodestatic method), 112
check_session() (aci-toolkit.aciphysobject.PhysicalModel staticmethod), 118
check_session() (acitoolkit.aciphysobject.Podstatic method), 123
check_session() (aci-toolkit.aciphysobject.Powersupply staticmethod), 129
check_session() (acitoolkit.aciphysobject.Processstatic method), 135
check_session() (aci-toolkit.aciphysobject.Supervisorcard staticmethod), 141
check_session() (aci-toolkit.aciphysobject.Systemcontroller staticmethod), 148
check_session() (acitoolkit.acitoolkit.AnyEPGstatic method), 157
check_session() (acitoolkit.acitoolkit.AppProfilestatic method), 164
check_session() (aci-toolkit.acitoolkit.AttributeCriterion staticmethod), 170
check_session() (aci-toolkit.acitoolkit.BaseContract static method),181
check_session() (acitoolkit.acitoolkit.BaseSubnetstatic method), 188
check_session() (aci-toolkit.acitoolkit.BaseTerminal static method),194
check_session() (acitoolkit.acitoolkit.BGPSessionstatic method), 176
check_session() (aci-toolkit.acitoolkit.BridgeDomain static method),199
check_session() (aci-toolkit.acitoolkit.CommonEPG static method),208
check_session() (acitoolkit.acitoolkit.Contextstatic method), 216
check_session() (acitoolkit.acitoolkit.Contractstatic method), 221
check_session() (aci-
toolkit.acitoolkit.ContractInterface staticmethod), 227
check_session() (aci-toolkit.acitoolkit.ContractSubject staticmethod), 233
check_session() (acitoolkit.acitoolkit.Endpointstatic method), 252
check_session() (acitoolkit.acitoolkit.EPG staticmethod), 239
check_session() (acitoolkit.acitoolkit.EPGDomainstatic method), 247
check_session() (acitoolkit.acitoolkit.FexInterfacestatic method), 258
check_session() (acitoolkit.acitoolkit.Filter staticmethod), 263
check_session() (acitoolkit.acitoolkit.FilterEntrystatic method), 270
check_session() (aci-toolkit.acitoolkit.InputTerminal static method),281
check_session() (acitoolkit.acitoolkit.IPEndpointstatic method), 275
check_session() (aci-toolkit.acitoolkit.L2ExtDomain static method),286
check_session() (acitoolkit.acitoolkit.L2Interfacestatic method), 292
check_session() (aci-toolkit.acitoolkit.L3ExtDomain static method),298
check_session() (acitoolkit.acitoolkit.L3Interfacestatic method), 303
check_session() (aci-toolkit.acitoolkit.LogicalModel static method),309
check_session() (acitoolkit.acitoolkit.NetworkPoolstatic method), 319
check_session() (aci-toolkit.acitoolkit.OSPFInterface staticmethod), 325
check_session() (aci-toolkit.acitoolkit.OSPFInterfacePolicy staticmethod), 330
check_session() (acitoolkit.acitoolkit.OSPFRouterstatic method), 336
check_session() (aci-toolkit.acitoolkit.OutputTerminal staticmethod), 341
check_session() (acitoolkit.acitoolkit.OutsideEPGstatic method), 347
check_session() (acitoolkit.acitoolkit.OutsideL2static method), 354
check_session() (aci-toolkit.acitoolkit.OutsideL2EPG static
504 Index
acitoolkit Documentation, Release 0.1
method), 360check_session() (acitoolkit.acitoolkit.OutsideL3
static method), 367check_session() (aci-
toolkit.acitoolkit.OutsideNetwork staticmethod), 373
check_session() (acitoolkit.acitoolkit.PhysDomainstatic method), 379
check_session() (acitoolkit.acitoolkit.PortChannelstatic method), 385
check_session() (acitoolkit.acitoolkit.Search staticmethod), 391
check_session() (acitoolkit.acitoolkit.Subnet staticmethod), 396
check_session() (acitoolkit.acitoolkit.Taboo staticmethod), 402
check_session() (acitoolkit.acitoolkit.Tag staticmethod), 408
check_session() (acitoolkit.acitoolkit.Tenant staticmethod), 413
check_session() (acitoolkit.acitoolkit.VMM staticmethod), 419
check_session() (aci-toolkit.acitoolkit.VMMCredentials staticmethod), 425
check_session() (acitoolkit.acitoolkit.VmmDomainstatic method), 431
close() (acitoolkit.acisession.Session method), 155Cluster (class in acitoolkit.aciphysobject), 62CollectionPolicy (class in acitoolkit.acitoolkit),
206CommonEPG (class in acitoolkit.acitoolkit), 208consume() (acitoolkit.acitoolkit.AnyEPG method), 157consume() (acitoolkit.acitoolkit.CommonEPG
method), 208consume() (acitoolkit.acitoolkit.EPG method), 239consume() (acitoolkit.acitoolkit.OutsideEPG method),
347consume() (acitoolkit.acitoolkit.OutsideL2EPG
method), 360consume_cif() (acitoolkit.acitoolkit.AnyEPG
method), 157consume_cif() (acitoolkit.acitoolkit.CommonEPG
method), 209consume_cif() (acitoolkit.acitoolkit.EPG method),
239consume_cif() (acitoolkit.acitoolkit.OutsideEPG
method), 347consume_cif() (acitoolkit.acitoolkit.OutsideL2EPG
method), 360Context (class in acitoolkit.acitoolkit), 215Contract (class in acitoolkit.acitoolkit), 221ContractInterface (class in acitoolkit.acitoolkit),
226
ContractSubject (class in acitoolkit.acitoolkit), 232CpLink (class in cableplan), 451CpPort (class in cableplan), 451CpSwitch (class in cableplan), 453create_from_apic_json() (aci-
toolkit.acitoolkit.FilterEntry class method),270
create_from_dn() (aci-toolkit.acitoolkit.PortChannel class method),385
create_from_name() (aci-toolkit.aciphysobject.Interface class method),91
Credentials (class in acitoolkit.acitoolkitlib), 436
Ddelete_link() (cableplan.CABLEPLAN method),
454delete_switch() (cableplan.CABLEPLAN method),
454delete_tag() (aci-
toolkit.acibaseobject.BaseACIObject method),54
delete_tag() (acitoolkit.aciphysobject.Clustermethod), 62
delete_tag() (aci-toolkit.aciphysobject.ExternalSwitch method),68
delete_tag() (acitoolkit.aciphysobject.Fabricmethod), 74
delete_tag() (acitoolkit.aciphysobject.Fan method),79
delete_tag() (acitoolkit.aciphysobject.Fantraymethod), 85
delete_tag() (acitoolkit.aciphysobject.Interfacemethod), 91
delete_tag() (acitoolkit.aciphysobject.Linecardmethod), 99
delete_tag() (acitoolkit.aciphysobject.Linkmethod), 105
delete_tag() (acitoolkit.aciphysobject.Nodemethod), 112
delete_tag() (aci-toolkit.aciphysobject.PhysicalModel method),118
delete_tag() (acitoolkit.aciphysobject.Pod method),124
delete_tag() (acitoolkit.aciphysobject.Powersupplymethod), 129
delete_tag() (acitoolkit.aciphysobject.Processmethod), 136
delete_tag() (aci-toolkit.aciphysobject.Supervisorcard method),142
Index 505
acitoolkit Documentation, Release 0.1
delete_tag() (aci-toolkit.aciphysobject.Systemcontrollermethod), 148
delete_tag() (acitoolkit.acitoolkit.AnyEPGmethod), 158
delete_tag() (acitoolkit.acitoolkit.AppProfilemethod), 164
delete_tag() (aci-toolkit.acitoolkit.AttributeCriterion method),170
delete_tag() (acitoolkit.acitoolkit.BaseContractmethod), 181
delete_tag() (acitoolkit.acitoolkit.BaseSubnetmethod), 188
delete_tag() (acitoolkit.acitoolkit.BaseTerminalmethod), 194
delete_tag() (acitoolkit.acitoolkit.BGPSessionmethod), 176
delete_tag() (acitoolkit.acitoolkit.BridgeDomainmethod), 200
delete_tag() (acitoolkit.acitoolkit.CommonEPGmethod), 209
delete_tag() (acitoolkit.acitoolkit.Context method),216
delete_tag() (acitoolkit.acitoolkit.Contractmethod), 221
delete_tag() (acitoolkit.acitoolkit.ContractInterfacemethod), 227
delete_tag() (acitoolkit.acitoolkit.ContractSubjectmethod), 233
delete_tag() (acitoolkit.acitoolkit.Endpointmethod), 252
delete_tag() (acitoolkit.acitoolkit.EPG method),239
delete_tag() (acitoolkit.acitoolkit.EPGDomainmethod), 247
delete_tag() (acitoolkit.acitoolkit.FexInterfacemethod), 258
delete_tag() (acitoolkit.acitoolkit.Filter method),264
delete_tag() (acitoolkit.acitoolkit.FilterEntrymethod), 270
delete_tag() (acitoolkit.acitoolkit.InputTerminalmethod), 281
delete_tag() (acitoolkit.acitoolkit.IPEndpointmethod), 275
delete_tag() (acitoolkit.acitoolkit.L2ExtDomainmethod), 286
delete_tag() (acitoolkit.acitoolkit.L2Interfacemethod), 292
delete_tag() (acitoolkit.acitoolkit.L3ExtDomainmethod), 298
delete_tag() (acitoolkit.acitoolkit.L3Interfacemethod), 303
delete_tag() (acitoolkit.acitoolkit.LogicalModelmethod), 309
delete_tag() (acitoolkit.acitoolkit.NetworkPoolmethod), 319
delete_tag() (acitoolkit.acitoolkit.OSPFInterfacemethod), 325
delete_tag() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 330
delete_tag() (acitoolkit.acitoolkit.OSPFRoutermethod), 336
delete_tag() (acitoolkit.acitoolkit.OutputTerminalmethod), 342
delete_tag() (acitoolkit.acitoolkit.OutsideEPGmethod), 347
delete_tag() (acitoolkit.acitoolkit.OutsideL2method), 354
delete_tag() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 360
delete_tag() (acitoolkit.acitoolkit.OutsideL3method), 367
delete_tag() (acitoolkit.acitoolkit.OutsideNetworkmethod), 373
delete_tag() (acitoolkit.acitoolkit.PhysDomainmethod), 379
delete_tag() (acitoolkit.acitoolkit.PortChannelmethod), 385
delete_tag() (acitoolkit.acitoolkit.Search method),391
delete_tag() (acitoolkit.acitoolkit.Subnet method),396
delete_tag() (acitoolkit.acitoolkit.Taboo method),402
delete_tag() (acitoolkit.acitoolkit.Tag method), 408delete_tag() (acitoolkit.acitoolkit.Tenant method),
414delete_tag() (acitoolkit.acitoolkit.VMM method),
419delete_tag() (acitoolkit.acitoolkit.VMMCredentials
method), 425delete_tag() (acitoolkit.acitoolkit.VmmDomain
method), 431deregister_login_callback() (aci-
toolkit.acisession.Session method), 155detach() (acitoolkit.acibaseobject.BaseACIObject
method), 54detach() (acitoolkit.aciphysobject.Cluster method),
63detach() (acitoolkit.aciphysobject.ExternalSwitch
method), 68detach() (acitoolkit.aciphysobject.Fabric method), 74detach() (acitoolkit.aciphysobject.Fan method), 79detach() (acitoolkit.aciphysobject.Fantray method),
86
506 Index
acitoolkit Documentation, Release 0.1
detach() (acitoolkit.aciphysobject.Interface method),92
detach() (acitoolkit.aciphysobject.Linecard method),99
detach() (acitoolkit.aciphysobject.Link method), 105detach() (acitoolkit.aciphysobject.Node method), 112detach() (acitoolkit.aciphysobject.PhysicalModel
method), 118detach() (acitoolkit.aciphysobject.Pod method), 124detach() (acitoolkit.aciphysobject.Powersupply
method), 130detach() (acitoolkit.aciphysobject.Process method),
136detach() (acitoolkit.aciphysobject.Supervisorcard
method), 142detach() (acitoolkit.aciphysobject.Systemcontroller
method), 148detach() (acitoolkit.acitoolkit.AnyEPG method), 158detach() (acitoolkit.acitoolkit.AppProfile method),
165detach() (acitoolkit.acitoolkit.AttributeCriterion
method), 170detach() (acitoolkit.acitoolkit.BaseContract method),
181detach() (acitoolkit.acitoolkit.BaseSubnet method),
188detach() (acitoolkit.acitoolkit.BaseTerminal method),
194detach() (acitoolkit.acitoolkit.BGPSession method),
176detach() (acitoolkit.acitoolkit.BridgeDomain
method), 200detach() (acitoolkit.acitoolkit.CommonEPG method),
209detach() (acitoolkit.acitoolkit.Context method), 216detach() (acitoolkit.acitoolkit.Contract method), 221detach() (acitoolkit.acitoolkit.ContractInterface
method), 227detach() (acitoolkit.acitoolkit.ContractSubject
method), 233detach() (acitoolkit.acitoolkit.Endpoint method), 252detach() (acitoolkit.acitoolkit.EPG method), 239detach() (acitoolkit.acitoolkit.EPGDomain method),
247detach() (acitoolkit.acitoolkit.FexInterface method),
258detach() (acitoolkit.acitoolkit.Filter method), 264detach() (acitoolkit.acitoolkit.FilterEntry method),
270detach() (acitoolkit.acitoolkit.InputTerminal method),
281detach() (acitoolkit.acitoolkit.IPEndpoint method),
275detach() (acitoolkit.acitoolkit.L2ExtDomain method),
286detach() (acitoolkit.acitoolkit.L2Interface method),
292detach() (acitoolkit.acitoolkit.L3ExtDomain method),
298detach() (acitoolkit.acitoolkit.L3Interface method),
303detach() (acitoolkit.acitoolkit.LogicalModel method),
309detach() (acitoolkit.acitoolkit.NetworkPool method),
319detach() (acitoolkit.acitoolkit.OSPFInterface
method), 325detach() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 330detach() (acitoolkit.acitoolkit.OSPFRouter method),
336detach() (acitoolkit.acitoolkit.OutputTerminal
method), 342detach() (acitoolkit.acitoolkit.OutsideEPG method),
347detach() (acitoolkit.acitoolkit.OutsideL2 method),
355detach() (acitoolkit.acitoolkit.OutsideL2EPG
method), 360detach() (acitoolkit.acitoolkit.OutsideL3 method),
368detach() (acitoolkit.acitoolkit.OutsideNetwork
method), 373detach() (acitoolkit.acitoolkit.PhysDomain method),
379detach() (acitoolkit.acitoolkit.PortChannel method),
385detach() (acitoolkit.acitoolkit.Search method), 391detach() (acitoolkit.acitoolkit.Subnet method), 397detach() (acitoolkit.acitoolkit.Taboo method), 402detach() (acitoolkit.acitoolkit.Tag method), 408detach() (acitoolkit.acitoolkit.Tenant method), 414detach() (acitoolkit.acitoolkit.VMM method), 419detach() (acitoolkit.acitoolkit.VMMCredentials
method), 425detach() (acitoolkit.acitoolkit.VmmDomain method),
431difference_link() (cableplan.CABLEPLAN
method), 454difference_switch() (cableplan.CABLEPLAN
method), 454disable_cdp() (acitoolkit.aciphysobject.Interface
method), 92disable_lldp() (acitoolkit.aciphysobject.Interface
method), 92does_consume() (acitoolkit.acitoolkit.AnyEPG
method), 158does_consume() (acitoolkit.acitoolkit.CommonEPG
Index 507
acitoolkit Documentation, Release 0.1
method), 209does_consume() (acitoolkit.acitoolkit.EPG method),
239does_consume() (acitoolkit.acitoolkit.OutsideEPG
method), 348does_consume() (aci-
toolkit.acitoolkit.OutsideL2EPG method),361
does_consume_cif() (acitoolkit.acitoolkit.AnyEPGmethod), 158
does_consume_cif() (aci-toolkit.acitoolkit.CommonEPG method),209
does_consume_cif() (acitoolkit.acitoolkit.EPGmethod), 239
does_consume_cif() (aci-toolkit.acitoolkit.OutsideEPG method), 348
does_consume_cif() (aci-toolkit.acitoolkit.OutsideL2EPG method),361
does_import_contract() (aci-toolkit.acitoolkit.ContractInterface method),227
does_protect() (acitoolkit.acitoolkit.AnyEPGmethod), 158
does_protect() (acitoolkit.acitoolkit.CommonEPGmethod), 209
does_protect() (acitoolkit.acitoolkit.EPG method),240
does_protect() (acitoolkit.acitoolkit.OutsideEPGmethod), 348
does_protect() (aci-toolkit.acitoolkit.OutsideL2EPG method),361
does_provide() (acitoolkit.acitoolkit.AnyEPGmethod), 158
does_provide() (acitoolkit.acitoolkit.CommonEPGmethod), 209
does_provide() (acitoolkit.acitoolkit.EPG method),240
does_provide() (acitoolkit.acitoolkit.OutsideEPGmethod), 348
does_provide() (aci-toolkit.acitoolkit.OutsideL2EPG method),361
dont_consume() (acitoolkit.acitoolkit.AnyEPGmethod), 158
dont_consume() (acitoolkit.acitoolkit.CommonEPGmethod), 209
dont_consume() (acitoolkit.acitoolkit.EPG method),240
dont_consume() (acitoolkit.acitoolkit.OutsideEPGmethod), 348
dont_consume() (aci-
toolkit.acitoolkit.OutsideL2EPG method),361
dont_consume_cif() (acitoolkit.acitoolkit.AnyEPGmethod), 158
dont_consume_cif() (aci-toolkit.acitoolkit.CommonEPG method),209
dont_consume_cif() (acitoolkit.acitoolkit.EPGmethod), 240
dont_consume_cif() (aci-toolkit.acitoolkit.OutsideEPG method), 348
dont_consume_cif() (aci-toolkit.acitoolkit.OutsideL2EPG method),361
dont_protect() (acitoolkit.acitoolkit.AnyEPGmethod), 158
dont_protect() (acitoolkit.acitoolkit.CommonEPGmethod), 209
dont_protect() (acitoolkit.acitoolkit.EPG method),240
dont_protect() (acitoolkit.acitoolkit.OutsideEPGmethod), 348
dont_protect() (aci-toolkit.acitoolkit.OutsideL2EPG method),361
dont_provide() (acitoolkit.acitoolkit.AnyEPGmethod), 158
dont_provide() (acitoolkit.acitoolkit.CommonEPGmethod), 210
dont_provide() (acitoolkit.acitoolkit.EPG method),240
dont_provide() (acitoolkit.acitoolkit.OutsideEPGmethod), 348
dont_provide() (aci-toolkit.acitoolkit.OutsideL2EPG method),361
Eenable_cdp() (acitoolkit.aciphysobject.Interface
method), 92enable_lldp() (acitoolkit.aciphysobject.Interface
method), 92Endpoint (class in acitoolkit.acitoolkit), 252EPG (class in acitoolkit.acitoolkit), 238EPGDomain (class in acitoolkit.acitoolkit), 246exists() (acitoolkit.acibaseobject.BaseACIPhysObject
class method), 59exists() (acitoolkit.aciphysobject.ExternalSwitch
class method), 68exists() (acitoolkit.aciphysobject.Fan class method),
79exists() (acitoolkit.aciphysobject.Fantray class
method), 86
508 Index
acitoolkit Documentation, Release 0.1
exists() (acitoolkit.aciphysobject.Linecard classmethod), 99
exists() (acitoolkit.aciphysobject.Link class method),105
exists() (acitoolkit.aciphysobject.Node classmethod), 112
exists() (acitoolkit.aciphysobject.Pod class method),124
exists() (acitoolkit.aciphysobject.Powersupply classmethod), 130
exists() (acitoolkit.aciphysobject.Process classmethod), 136
exists() (acitoolkit.aciphysobject.Supervisorcardclass method), 142
exists() (acitoolkit.aciphysobject.Systemcontrollerclass method), 148
exists() (acitoolkit.acitoolkit.Tenant class method),414
exists_link() (cableplan.CABLEPLAN method),454
exists_switch() (cableplan.CABLEPLAN method),454
export() (cableplan.CABLEPLAN method), 454export() (cableplan.CpLink method), 451export() (cableplan.CpSwitch method), 453export_data_center() (cableplan.CABLEPLAN
method), 454ExternalSwitch (class in acitoolkit.aciphysobject),
67
FFabric (class in acitoolkit.aciphysobject), 74Fan (class in acitoolkit.aciphysobject), 79Fantray (class in acitoolkit.aciphysobject), 85Faults (class in acitoolkit.aciFaults), 437FexInterface (class in acitoolkit.acitoolkit), 258Filter (class in acitoolkit.acitoolkit), 263FilterEntry (class in acitoolkit.acitoolkit), 269find() (acitoolkit.acibaseobject.BaseACIObject
method), 54find() (acitoolkit.aciphysobject.Cluster method), 63find() (acitoolkit.aciphysobject.ExternalSwitch
method), 68find() (acitoolkit.aciphysobject.Fabric method), 74find() (acitoolkit.aciphysobject.Fan method), 80find() (acitoolkit.aciphysobject.Fantray method), 86find() (acitoolkit.aciphysobject.Interface method), 92find() (acitoolkit.aciphysobject.Linecard method), 99find() (acitoolkit.aciphysobject.Link method), 105find() (acitoolkit.aciphysobject.Node method), 112find() (acitoolkit.aciphysobject.PhysicalModel
method), 118find() (acitoolkit.aciphysobject.Pod method), 124
find() (acitoolkit.aciphysobject.Powersupply method),130
find() (acitoolkit.aciphysobject.Process method), 136find() (acitoolkit.aciphysobject.Supervisorcard
method), 142find() (acitoolkit.aciphysobject.Systemcontroller
method), 148find() (acitoolkit.acitoolkit.AnyEPG method), 159find() (acitoolkit.acitoolkit.AppProfile method), 165find() (acitoolkit.acitoolkit.AttributeCriterion
method), 170find() (acitoolkit.acitoolkit.BaseContract method),
181find() (acitoolkit.acitoolkit.BaseSubnet method), 188find() (acitoolkit.acitoolkit.BaseTerminal method),
194find() (acitoolkit.acitoolkit.BGPSession method), 176find() (acitoolkit.acitoolkit.BridgeDomain method),
200find() (acitoolkit.acitoolkit.CommonEPG method),
210find() (acitoolkit.acitoolkit.Context method), 216find() (acitoolkit.acitoolkit.Contract method), 221find() (acitoolkit.acitoolkit.ContractInterface
method), 227find() (acitoolkit.acitoolkit.ContractSubject method),
233find() (acitoolkit.acitoolkit.Endpoint method), 252find() (acitoolkit.acitoolkit.EPG method), 240find() (acitoolkit.acitoolkit.EPGDomain method), 247find() (acitoolkit.acitoolkit.FexInterface method), 258find() (acitoolkit.acitoolkit.Filter method), 264find() (acitoolkit.acitoolkit.FilterEntry method), 270find() (acitoolkit.acitoolkit.InputTerminal method),
281find() (acitoolkit.acitoolkit.IPEndpoint method), 275find() (acitoolkit.acitoolkit.L2ExtDomain method),
287find() (acitoolkit.acitoolkit.L2Interface method), 292find() (acitoolkit.acitoolkit.L3ExtDomain method),
298find() (acitoolkit.acitoolkit.L3Interface method), 303find() (acitoolkit.acitoolkit.LogicalModel method),
310find() (acitoolkit.acitoolkit.NetworkPool method), 320find() (acitoolkit.acitoolkit.OSPFInterface method),
325find() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 330find() (acitoolkit.acitoolkit.OSPFRouter method), 336find() (acitoolkit.acitoolkit.OutputTerminal method),
342find() (acitoolkit.acitoolkit.OutsideEPG method), 348find() (acitoolkit.acitoolkit.OutsideL2 method), 355
Index 509
acitoolkit Documentation, Release 0.1
find() (acitoolkit.acitoolkit.OutsideL2EPG method),361
find() (acitoolkit.acitoolkit.OutsideL3 method), 368find() (acitoolkit.acitoolkit.OutsideNetwork method),
373find() (acitoolkit.acitoolkit.PhysDomain method), 379find() (acitoolkit.acitoolkit.PortChannel method), 385find() (acitoolkit.acitoolkit.Search method), 391find() (acitoolkit.acitoolkit.Subnet method), 397find() (acitoolkit.acitoolkit.Taboo method), 403find() (acitoolkit.acitoolkit.Tag method), 408find() (acitoolkit.acitoolkit.Tenant method), 414find() (acitoolkit.acitoolkit.VMM method), 420find() (acitoolkit.acitoolkit.VMMCredentials method),
425find() (acitoolkit.acitoolkit.VmmDomain method), 431flat() (acitoolkit.acitoolkit.MonitorPolicy method),
315
Gget() (acitoolkit.acibaseobject.BaseACIObject class
method), 54get() (acitoolkit.aciphysobject.Cluster class method),
63get() (acitoolkit.aciphysobject.ExternalSwitch class
method), 69get() (acitoolkit.aciphysobject.Fabric class method),
74get() (acitoolkit.aciphysobject.Fan class method), 80get() (acitoolkit.aciphysobject.Fantray class method),
86get() (acitoolkit.aciphysobject.Interface class method),
92get() (acitoolkit.aciphysobject.Linecard class method),
99get() (acitoolkit.aciphysobject.Link class method), 106get() (acitoolkit.aciphysobject.Node class method),
113get() (acitoolkit.aciphysobject.PhysicalModel class
method), 119get() (acitoolkit.aciphysobject.Pod class method), 124get() (acitoolkit.aciphysobject.Powersupply class
method), 130get() (acitoolkit.aciphysobject.Process class method),
136get() (acitoolkit.aciphysobject.Supervisorcard class
method), 142get() (acitoolkit.aciphysobject.Systemcontroller class
method), 148get() (acitoolkit.acisession.Session method), 155get() (acitoolkit.acitoolkit.AnyEPG class method), 159get() (acitoolkit.acitoolkit.AppProfile class method),
165
get() (acitoolkit.acitoolkit.AttributeCriterion classmethod), 170
get() (acitoolkit.acitoolkit.BaseContract classmethod), 182
get() (acitoolkit.acitoolkit.BaseSubnet class method),188
get() (acitoolkit.acitoolkit.BaseTerminal classmethod), 194
get() (acitoolkit.acitoolkit.BGPSession class method),176
get() (acitoolkit.acitoolkit.BridgeDomain classmethod), 200
get() (acitoolkit.acitoolkit.CommonEPG classmethod), 210
get() (acitoolkit.acitoolkit.Context class method), 216get() (acitoolkit.acitoolkit.Contract class method), 222get() (acitoolkit.acitoolkit.ContractInterface class
method), 228get() (acitoolkit.acitoolkit.ContractSubject class
method), 233get() (acitoolkit.acitoolkit.Endpoint static method),
253get() (acitoolkit.acitoolkit.EPG class method), 240get() (acitoolkit.acitoolkit.EPGDomain class method),
247get() (acitoolkit.acitoolkit.FexInterface class method),
258get() (acitoolkit.acitoolkit.Filter class method), 264get() (acitoolkit.acitoolkit.FilterEntry class method),
270get() (acitoolkit.acitoolkit.InputTerminal class
method), 281get() (acitoolkit.acitoolkit.IPEndpoint static method),
276get() (acitoolkit.acitoolkit.L2ExtDomain class
method), 287get() (acitoolkit.acitoolkit.L2Interface class method),
292get() (acitoolkit.acitoolkit.L3ExtDomain class
method), 298get() (acitoolkit.acitoolkit.L3Interface class method),
304get() (acitoolkit.acitoolkit.LogicalModel class
method), 310get() (acitoolkit.acitoolkit.MonitorPolicy class
method), 316get() (acitoolkit.acitoolkit.NetworkPool class method),
320get() (acitoolkit.acitoolkit.OSPFInterface class
method), 325get() (acitoolkit.acitoolkit.OSPFInterfacePolicy class
method), 331get() (acitoolkit.acitoolkit.OSPFRouter class method),
336
510 Index
acitoolkit Documentation, Release 0.1
get() (acitoolkit.acitoolkit.OutputTerminal classmethod), 342
get() (acitoolkit.acitoolkit.OutsideEPG class method),349
get() (acitoolkit.acitoolkit.OutsideL2 class method),355
get() (acitoolkit.acitoolkit.OutsideL2EPG classmethod), 362
get() (acitoolkit.acitoolkit.OutsideL3 class method),368
get() (acitoolkit.acitoolkit.OutsideNetwork classmethod), 374
get() (acitoolkit.acitoolkit.PhysDomain class method),380
get() (acitoolkit.acitoolkit.PortChannel static method),386
get() (acitoolkit.acitoolkit.Search class method), 391get() (acitoolkit.acitoolkit.Subnet class method), 397get() (acitoolkit.acitoolkit.Taboo class method), 403get() (acitoolkit.acitoolkit.Tag class method), 408get() (acitoolkit.acitoolkit.Tenant class method), 414get() (acitoolkit.acitoolkit.VMM class method), 420get() (acitoolkit.acitoolkit.VMMCredentials class
method), 425get() (acitoolkit.acitoolkit.VmmDomain class method),
431get() (acitoolkit.acitoolkitlib.Credentials method), 436get() (cableplan.CABLEPLAN class method), 454get_addr() (acitoolkit.acitoolkit.BaseSubnet
method), 188get_addr() (acitoolkit.acitoolkit.L3Interface
method), 304get_addr() (acitoolkit.acitoolkit.OutsideNetwork
method), 374get_addr() (acitoolkit.acitoolkit.Subnet method), 397get_adjacent_port() (aci-
toolkit.aciphysobject.Interface method),92
get_all_attached() (aci-toolkit.acibaseobject.BaseACIObject method),54
get_all_attached() (aci-toolkit.aciphysobject.Cluster method), 63
get_all_attached() (aci-toolkit.aciphysobject.ExternalSwitch method),69
get_all_attached() (aci-toolkit.aciphysobject.Fabric method), 75
get_all_attached() (acitoolkit.aciphysobject.Fanmethod), 80
get_all_attached() (aci-toolkit.aciphysobject.Fantray method), 86
get_all_attached() (aci-toolkit.aciphysobject.Interface method),
93get_all_attached() (aci-
toolkit.aciphysobject.Linecard method),100
get_all_attached() (acitoolkit.aciphysobject.Linkmethod), 106
get_all_attached() (aci-toolkit.aciphysobject.Node method), 113
get_all_attached() (aci-toolkit.aciphysobject.PhysicalModel method),119
get_all_attached() (acitoolkit.aciphysobject.Podmethod), 124
get_all_attached() (aci-toolkit.aciphysobject.Powersupply method),130
get_all_attached() (aci-toolkit.aciphysobject.Process method), 136
get_all_attached() (aci-toolkit.aciphysobject.Supervisorcard method),142
get_all_attached() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149
get_all_attached() (acitoolkit.acitoolkit.AnyEPGmethod), 159
get_all_attached() (aci-toolkit.acitoolkit.AppProfile method), 165
get_all_attached() (aci-toolkit.acitoolkit.AttributeCriterion method),171
get_all_attached() (aci-toolkit.acitoolkit.BaseContract method),182
get_all_attached() (aci-toolkit.acitoolkit.BaseSubnet method), 189
get_all_attached() (aci-toolkit.acitoolkit.BaseTerminal method),194
get_all_attached() (aci-toolkit.acitoolkit.BGPSession method), 176
get_all_attached() (aci-toolkit.acitoolkit.BridgeDomain method),200
get_all_attached() (aci-toolkit.acitoolkit.CommonEPG method),210
get_all_attached() (acitoolkit.acitoolkit.Contextmethod), 216
get_all_attached() (acitoolkit.acitoolkit.Contractmethod), 222
get_all_attached() (aci-toolkit.acitoolkit.ContractInterface method),228
Index 511
acitoolkit Documentation, Release 0.1
get_all_attached() (aci-toolkit.acitoolkit.ContractSubject method),233
get_all_attached() (aci-toolkit.acitoolkit.Endpoint method), 253
get_all_attached() (acitoolkit.acitoolkit.EPGmethod), 241
get_all_attached() (aci-toolkit.acitoolkit.EPGDomain method), 247
get_all_attached() (aci-toolkit.acitoolkit.FexInterface method), 259
get_all_attached() (acitoolkit.acitoolkit.Filtermethod), 264
get_all_attached() (aci-toolkit.acitoolkit.FilterEntry method), 271
get_all_attached() (aci-toolkit.acitoolkit.InputTerminal method),282
get_all_attached() (aci-toolkit.acitoolkit.IPEndpoint method), 276
get_all_attached() (aci-toolkit.acitoolkit.L2ExtDomain method),287
get_all_attached() (aci-toolkit.acitoolkit.L2Interface method), 293
get_all_attached() (aci-toolkit.acitoolkit.L3ExtDomain method),298
get_all_attached() (aci-toolkit.acitoolkit.L3Interface method), 304
get_all_attached() (aci-toolkit.acitoolkit.LogicalModel method),310
get_all_attached() (aci-toolkit.acitoolkit.NetworkPool method), 320
get_all_attached() (aci-toolkit.acitoolkit.OSPFInterface method),326
get_all_attached() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 331
get_all_attached() (aci-toolkit.acitoolkit.OSPFRouter method), 337
get_all_attached() (aci-toolkit.acitoolkit.OutputTerminal method),342
get_all_attached() (aci-toolkit.acitoolkit.OutsideEPG method), 349
get_all_attached() (aci-toolkit.acitoolkit.OutsideL2 method), 355
get_all_attached() (aci-toolkit.acitoolkit.OutsideL2EPG method),362
get_all_attached() (aci-
toolkit.acitoolkit.OutsideL3 method), 368get_all_attached() (aci-
toolkit.acitoolkit.OutsideNetwork method),374
get_all_attached() (aci-toolkit.acitoolkit.PhysDomain method), 380
get_all_attached() (aci-toolkit.acitoolkit.PortChannel method), 386
get_all_attached() (acitoolkit.acitoolkit.Searchmethod), 391
get_all_attached() (acitoolkit.acitoolkit.Subnetmethod), 397
get_all_attached() (acitoolkit.acitoolkit.Taboomethod), 403
get_all_attached() (acitoolkit.acitoolkit.Tagmethod), 409
get_all_attached() (acitoolkit.acitoolkit.Tenantmethod), 414
get_all_attached() (acitoolkit.acitoolkit.VMMmethod), 420
get_all_attached() (aci-toolkit.acitoolkit.VMMCredentials method),426
get_all_attached() (aci-toolkit.acitoolkit.VmmDomain method),431
get_all_attachments() (aci-toolkit.acibaseobject.BaseACIObject method),54
get_all_attachments() (aci-toolkit.aciphysobject.Cluster method), 63
get_all_attachments() (aci-toolkit.aciphysobject.ExternalSwitch method),69
get_all_attachments() (aci-toolkit.aciphysobject.Fabric method), 75
get_all_attachments() (aci-toolkit.aciphysobject.Fan method), 80
get_all_attachments() (aci-toolkit.aciphysobject.Fantray method), 86
get_all_attachments() (aci-toolkit.aciphysobject.Interface method),93
get_all_attachments() (aci-toolkit.aciphysobject.Linecard method),100
get_all_attachments() (aci-toolkit.aciphysobject.Link method), 106
get_all_attachments() (aci-toolkit.aciphysobject.Node method), 113
get_all_attachments() (aci-toolkit.aciphysobject.PhysicalModel method),119
get_all_attachments() (aci-
512 Index
acitoolkit Documentation, Release 0.1
toolkit.aciphysobject.Pod method), 124get_all_attachments() (aci-
toolkit.aciphysobject.Powersupply method),130
get_all_attachments() (aci-toolkit.aciphysobject.Process method), 136
get_all_attachments() (aci-toolkit.aciphysobject.Supervisorcard method),143
get_all_attachments() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149
get_all_attachments() (aci-toolkit.acitoolkit.AnyEPG method), 159
get_all_attachments() (aci-toolkit.acitoolkit.AppProfile method), 165
get_all_attachments() (aci-toolkit.acitoolkit.AttributeCriterion method),171
get_all_attachments() (aci-toolkit.acitoolkit.BaseContract method),182
get_all_attachments() (aci-toolkit.acitoolkit.BaseSubnet method), 189
get_all_attachments() (aci-toolkit.acitoolkit.BaseTerminal method),195
get_all_attachments() (aci-toolkit.acitoolkit.BGPSession method), 176
get_all_attachments() (aci-toolkit.acitoolkit.BridgeDomain method),200
get_all_attachments() (aci-toolkit.acitoolkit.CommonEPG method),210
get_all_attachments() (aci-toolkit.acitoolkit.Context method), 216
get_all_attachments() (aci-toolkit.acitoolkit.Contract method), 222
get_all_attachments() (aci-toolkit.acitoolkit.ContractInterface method),228
get_all_attachments() (aci-toolkit.acitoolkit.ContractSubject method),234
get_all_attachments() (aci-toolkit.acitoolkit.Endpoint method), 253
get_all_attachments() (aci-toolkit.acitoolkit.EPG method), 241
get_all_attachments() (aci-toolkit.acitoolkit.EPGDomain method), 248
get_all_attachments() (aci-toolkit.acitoolkit.FexInterface method), 259
get_all_attachments() (aci-
toolkit.acitoolkit.Filter method), 264get_all_attachments() (aci-
toolkit.acitoolkit.FilterEntry method), 271get_all_attachments() (aci-
toolkit.acitoolkit.InputTerminal method),282
get_all_attachments() (aci-toolkit.acitoolkit.IPEndpoint method), 276
get_all_attachments() (aci-toolkit.acitoolkit.L2ExtDomain method),287
get_all_attachments() (aci-toolkit.acitoolkit.L2Interface method), 293
get_all_attachments() (aci-toolkit.acitoolkit.L3ExtDomain method),298
get_all_attachments() (aci-toolkit.acitoolkit.L3Interface method), 304
get_all_attachments() (aci-toolkit.acitoolkit.LogicalModel method),310
get_all_attachments() (aci-toolkit.acitoolkit.NetworkPool method), 320
get_all_attachments() (aci-toolkit.acitoolkit.OSPFInterface method),326
get_all_attachments() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 331
get_all_attachments() (aci-toolkit.acitoolkit.OSPFRouter method), 337
get_all_attachments() (aci-toolkit.acitoolkit.OutputTerminal method),342
get_all_attachments() (aci-toolkit.acitoolkit.OutsideEPG method), 349
get_all_attachments() (aci-toolkit.acitoolkit.OutsideL2 method), 355
get_all_attachments() (aci-toolkit.acitoolkit.OutsideL2EPG method),362
get_all_attachments() (aci-toolkit.acitoolkit.OutsideL3 method), 368
get_all_attachments() (aci-toolkit.acitoolkit.OutsideNetwork method),374
get_all_attachments() (aci-toolkit.acitoolkit.PhysDomain method), 380
get_all_attachments() (aci-toolkit.acitoolkit.PortChannel method), 386
get_all_attachments() (aci-toolkit.acitoolkit.Search method), 392
get_all_attachments() (aci-toolkit.acitoolkit.Subnet method), 397
Index 513
acitoolkit Documentation, Release 0.1
get_all_attachments() (aci-toolkit.acitoolkit.Taboo method), 403
get_all_attachments() (acitoolkit.acitoolkit.Tagmethod), 409
get_all_attachments() (aci-toolkit.acitoolkit.Tenant method), 414
get_all_attachments() (aci-toolkit.acitoolkit.VMM method), 420
get_all_attachments() (aci-toolkit.acitoolkit.VMMCredentials method),426
get_all_attachments() (aci-toolkit.acitoolkit.VmmDomain method),431
get_all_by_epg() (acitoolkit.acitoolkit.Endpointclass method), 253
get_all_by_epg() (acitoolkit.acitoolkit.IPEndpointclass method), 276
get_all_consumed() (acitoolkit.acitoolkit.AnyEPGmethod), 159
get_all_consumed() (aci-toolkit.acitoolkit.CommonEPG method),210
get_all_consumed() (acitoolkit.acitoolkit.EPGmethod), 241
get_all_consumed() (aci-toolkit.acitoolkit.OutsideEPG method), 349
get_all_consumed() (aci-toolkit.acitoolkit.OutsideL2EPG method),362
get_all_consumed_cif() (aci-toolkit.acitoolkit.AnyEPG method), 159
get_all_consumed_cif() (aci-toolkit.acitoolkit.CommonEPG method),211
get_all_consumed_cif() (aci-toolkit.acitoolkit.EPG method), 241
get_all_consumed_cif() (aci-toolkit.acitoolkit.OutsideEPG method), 349
get_all_consumed_cif() (aci-toolkit.acitoolkit.OutsideL2EPG method),362
get_all_consuming_epgs() (aci-toolkit.acitoolkit.Contract method), 222
get_all_filter_entries() (aci-toolkit.acitoolkit.BaseContract method),182
get_all_filter_entries() (aci-toolkit.acitoolkit.Contract method), 222
get_all_filter_entries() (aci-toolkit.acitoolkit.Taboo method), 403
get_all_protected() (aci-toolkit.acitoolkit.AnyEPG method), 159
get_all_protected() (aci-
toolkit.acitoolkit.CommonEPG method),211
get_all_protected() (acitoolkit.acitoolkit.EPGmethod), 241
get_all_protected() (aci-toolkit.acitoolkit.OutsideEPG method), 349
get_all_protected() (aci-toolkit.acitoolkit.OutsideL2EPG method),362
get_all_provided() (acitoolkit.acitoolkit.AnyEPGmethod), 160
get_all_provided() (aci-toolkit.acitoolkit.CommonEPG method),211
get_all_provided() (acitoolkit.acitoolkit.EPGmethod), 241
get_all_provided() (aci-toolkit.acitoolkit.OutsideEPG method), 349
get_all_provided() (aci-toolkit.acitoolkit.OutsideL2EPG method),362
get_all_providing_epgs() (aci-toolkit.acitoolkit.Contract method), 222
get_allow_all() (acitoolkit.acitoolkit.Contextmethod), 217
get_apics() (acitoolkit.aciphysobject.Clustermethod), 63
get_arp_flood() (aci-toolkit.acitoolkit.BridgeDomain method),200
get_attributes() (aci-toolkit.acibaseobject.BaseACIObject method),55
get_attributes() (acitoolkit.aciphysobject.Clustermethod), 63
get_attributes() (aci-toolkit.aciphysobject.ExternalSwitch method),69
get_attributes() (acitoolkit.aciphysobject.Fabricmethod), 75
get_attributes() (acitoolkit.aciphysobject.Fanmethod), 80
get_attributes() (aci-toolkit.aciphysobject.Fantray method), 87
get_attributes() (aci-toolkit.aciphysobject.Interface method),93
get_attributes() (aci-toolkit.aciphysobject.Linecard method),100
get_attributes() (acitoolkit.aciphysobject.Linkmethod), 106
get_attributes() (acitoolkit.aciphysobject.Nodemethod), 113
514 Index
acitoolkit Documentation, Release 0.1
get_attributes() (aci-toolkit.aciphysobject.PhysicalModel method),119
get_attributes() (acitoolkit.aciphysobject.Podmethod), 125
get_attributes() (aci-toolkit.aciphysobject.Powersupply method),131
get_attributes() (aci-toolkit.aciphysobject.Process method), 137
get_attributes() (aci-toolkit.aciphysobject.Supervisorcard method),143
get_attributes() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149
get_attributes() (acitoolkit.acitoolkit.AnyEPGmethod), 160
get_attributes() (acitoolkit.acitoolkit.AppProfilemethod), 165
get_attributes() (aci-toolkit.acitoolkit.AttributeCriterion method),171
get_attributes() (aci-toolkit.acitoolkit.BaseContract method),182
get_attributes() (acitoolkit.acitoolkit.BaseSubnetmethod), 189
get_attributes() (aci-toolkit.acitoolkit.BaseTerminal method),195
get_attributes() (aci-toolkit.acitoolkit.BGPSession method), 177
get_attributes() (aci-toolkit.acitoolkit.BridgeDomain method),200
get_attributes() (aci-toolkit.acitoolkit.CommonEPG method),211
get_attributes() (acitoolkit.acitoolkit.Contextmethod), 217
get_attributes() (acitoolkit.acitoolkit.Contractmethod), 222
get_attributes() (aci-toolkit.acitoolkit.ContractInterface method),228
get_attributes() (aci-toolkit.acitoolkit.ContractSubject method),234
get_attributes() (acitoolkit.acitoolkit.Endpointmethod), 253
get_attributes() (acitoolkit.acitoolkit.EPGmethod), 242
get_attributes() (aci-
toolkit.acitoolkit.EPGDomain method), 248get_attributes() (aci-
toolkit.acitoolkit.FexInterface method), 259get_attributes() (acitoolkit.acitoolkit.Filter
method), 264get_attributes() (acitoolkit.acitoolkit.FilterEntry
method), 271get_attributes() (aci-
toolkit.acitoolkit.InputTerminal method),282
get_attributes() (acitoolkit.acitoolkit.IPEndpointmethod), 276
get_attributes() (aci-toolkit.acitoolkit.L2ExtDomain method),287
get_attributes() (acitoolkit.acitoolkit.L2Interfacemethod), 293
get_attributes() (aci-toolkit.acitoolkit.L3ExtDomain method),299
get_attributes() (acitoolkit.acitoolkit.L3Interfacemethod), 304
get_attributes() (aci-toolkit.acitoolkit.LogicalModel method),310
get_attributes() (aci-toolkit.acitoolkit.NetworkPool method), 320
get_attributes() (aci-toolkit.acitoolkit.OSPFInterface method),326
get_attributes() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 331
get_attributes() (aci-toolkit.acitoolkit.OSPFRouter method), 337
get_attributes() (aci-toolkit.acitoolkit.OutputTerminal method),342
get_attributes() (aci-toolkit.acitoolkit.OutsideEPG method), 350
get_attributes() (acitoolkit.acitoolkit.OutsideL2method), 355
get_attributes() (aci-toolkit.acitoolkit.OutsideL2EPG method),363
get_attributes() (acitoolkit.acitoolkit.OutsideL3method), 368
get_attributes() (aci-toolkit.acitoolkit.OutsideNetwork method),374
get_attributes() (aci-toolkit.acitoolkit.PhysDomain method), 380
get_attributes() (aci-toolkit.acitoolkit.PortChannel method), 386
Index 515
acitoolkit Documentation, Release 0.1
get_attributes() (acitoolkit.acitoolkit.Searchmethod), 392
get_attributes() (acitoolkit.acitoolkit.Subnetmethod), 397
get_attributes() (acitoolkit.acitoolkit.Taboomethod), 403
get_attributes() (acitoolkit.acitoolkit.Tagmethod), 409
get_attributes() (acitoolkit.acitoolkit.Tenantmethod), 415
get_attributes() (acitoolkit.acitoolkit.VMMmethod), 420
get_attributes() (aci-toolkit.acitoolkit.VMMCredentials method),426
get_attributes() (aci-toolkit.acitoolkit.VmmDomain method),431
get_bd() (acitoolkit.acitoolkit.EPG method), 242get_by_name() (acitoolkit.acitoolkit.EPGDomain
class method), 248get_by_name() (acitoolkit.acitoolkit.L2ExtDomain
class method), 287get_by_name() (acitoolkit.acitoolkit.L3ExtDomain
class method), 299get_by_name() (acitoolkit.acitoolkit.PhysDomain
class method), 380get_by_name() (acitoolkit.acitoolkit.VmmDomain
class method), 432get_by_name_and_tenant() (aci-
toolkit.acitoolkit.Filter class method), 265get_chassis_type() (aci-
toolkit.aciphysobject.Node method), 113get_child() (acitoolkit.acibaseobject.BaseACIObject
method), 55get_child() (acitoolkit.aciphysobject.Cluster
method), 63get_child() (acitoolkit.aciphysobject.ExternalSwitch
method), 69get_child() (acitoolkit.aciphysobject.Fabric
method), 75get_child() (acitoolkit.aciphysobject.Fan method),
81get_child() (acitoolkit.aciphysobject.Fantray
method), 87get_child() (acitoolkit.aciphysobject.Interface
method), 93get_child() (acitoolkit.aciphysobject.Linecard
method), 100get_child() (acitoolkit.aciphysobject.Link method),
106get_child() (acitoolkit.aciphysobject.Node method),
113get_child() (acitoolkit.aciphysobject.PhysicalModel
method), 119get_child() (acitoolkit.aciphysobject.Pod method),
125get_child() (acitoolkit.aciphysobject.Powersupply
method), 131get_child() (acitoolkit.aciphysobject.Process
method), 137get_child() (acitoolkit.aciphysobject.Supervisorcard
method), 143get_child() (acitoolkit.aciphysobject.Systemcontroller
method), 149get_child() (acitoolkit.acitoolkit.AnyEPG method),
160get_child() (acitoolkit.acitoolkit.AppProfile
method), 166get_child() (acitoolkit.acitoolkit.AttributeCriterion
method), 171get_child() (acitoolkit.acitoolkit.BaseContract
method), 182get_child() (acitoolkit.acitoolkit.BaseSubnet
method), 189get_child() (acitoolkit.acitoolkit.BaseTerminal
method), 195get_child() (acitoolkit.acitoolkit.BGPSession
method), 177get_child() (acitoolkit.acitoolkit.BridgeDomain
method), 201get_child() (acitoolkit.acitoolkit.CommonEPG
method), 211get_child() (acitoolkit.acitoolkit.Context method),
217get_child() (acitoolkit.acitoolkit.Contract method),
223get_child() (acitoolkit.acitoolkit.ContractInterface
method), 228get_child() (acitoolkit.acitoolkit.ContractSubject
method), 234get_child() (acitoolkit.acitoolkit.Endpoint method),
254get_child() (acitoolkit.acitoolkit.EPG method), 242get_child() (acitoolkit.acitoolkit.EPGDomain
method), 248get_child() (acitoolkit.acitoolkit.FexInterface
method), 259get_child() (acitoolkit.acitoolkit.Filter method), 265get_child() (acitoolkit.acitoolkit.FilterEntry
method), 271get_child() (acitoolkit.acitoolkit.InputTerminal
method), 282get_child() (acitoolkit.acitoolkit.IPEndpoint
method), 276get_child() (acitoolkit.acitoolkit.L2ExtDomain
method), 288get_child() (acitoolkit.acitoolkit.L2Interface
516 Index
acitoolkit Documentation, Release 0.1
method), 293get_child() (acitoolkit.acitoolkit.L3ExtDomain
method), 299get_child() (acitoolkit.acitoolkit.L3Interface
method), 304get_child() (acitoolkit.acitoolkit.LogicalModel
method), 310get_child() (acitoolkit.acitoolkit.NetworkPool
method), 320get_child() (acitoolkit.acitoolkit.OSPFInterface
method), 326get_child() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 332get_child() (acitoolkit.acitoolkit.OSPFRouter
method), 337get_child() (acitoolkit.acitoolkit.OutputTerminal
method), 343get_child() (acitoolkit.acitoolkit.OutsideEPG
method), 350get_child() (acitoolkit.acitoolkit.OutsideL2
method), 356get_child() (acitoolkit.acitoolkit.OutsideL2EPG
method), 363get_child() (acitoolkit.acitoolkit.OutsideL3
method), 369get_child() (acitoolkit.acitoolkit.OutsideNetwork
method), 375get_child() (acitoolkit.acitoolkit.PhysDomain
method), 380get_child() (acitoolkit.acitoolkit.PortChannel
method), 386get_child() (acitoolkit.acitoolkit.Search method),
392get_child() (acitoolkit.acitoolkit.Subnet method),
398get_child() (acitoolkit.acitoolkit.Taboo method),
404get_child() (acitoolkit.acitoolkit.Tag method), 409get_child() (acitoolkit.acitoolkit.Tenant method),
415get_child() (acitoolkit.acitoolkit.VMM method), 421get_child() (acitoolkit.acitoolkit.VMMCredentials
method), 426get_child() (acitoolkit.acitoolkit.VmmDomain
method), 432get_children() (aci-
toolkit.acibaseobject.BaseACIObject method),55
get_children() (aci-toolkit.acibaseobject.BaseACIPhysObjectmethod), 60
get_children() (acitoolkit.aciphysobject.Clustermethod), 64
get_children() (aci-
toolkit.aciphysobject.ExternalSwitch method),70
get_children() (acitoolkit.aciphysobject.Fabricmethod), 75
get_children() (acitoolkit.aciphysobject.Fanmethod), 81
get_children() (acitoolkit.aciphysobject.Fantraymethod), 87
get_children() (acitoolkit.aciphysobject.Interfacemethod), 93
get_children() (acitoolkit.aciphysobject.Linecardmethod), 100
get_children() (acitoolkit.aciphysobject.Linkmethod), 106
get_children() (acitoolkit.aciphysobject.Nodemethod), 114
get_children() (aci-toolkit.aciphysobject.PhysicalModel method),119
get_children() (acitoolkit.aciphysobject.Podmethod), 125
get_children() (aci-toolkit.aciphysobject.Powersupply method),131
get_children() (acitoolkit.aciphysobject.Processmethod), 137
get_children() (aci-toolkit.aciphysobject.Supervisorcard method),143
get_children() (aci-toolkit.aciphysobject.Systemcontrollermethod), 149
get_children() (acitoolkit.acitoolkit.AnyEPGmethod), 160
get_children() (acitoolkit.acitoolkit.AppProfilemethod), 166
get_children() (aci-toolkit.acitoolkit.AttributeCriterion method),171
get_children() (acitoolkit.acitoolkit.BaseContractmethod), 183
get_children() (acitoolkit.acitoolkit.BaseSubnetmethod), 189
get_children() (acitoolkit.acitoolkit.BaseTerminalmethod), 195
get_children() (acitoolkit.acitoolkit.BGPSessionmethod), 177
get_children() (acitoolkit.acitoolkit.BridgeDomainmethod), 201
get_children() (acitoolkit.acitoolkit.CommonEPGmethod), 211
get_children() (acitoolkit.acitoolkit.Contextmethod), 217
get_children() (acitoolkit.acitoolkit.Contract
Index 517
acitoolkit Documentation, Release 0.1
method), 223get_children() (aci-
toolkit.acitoolkit.ContractInterface method),228
get_children() (aci-toolkit.acitoolkit.ContractSubject method),234
get_children() (acitoolkit.acitoolkit.Endpointmethod), 254
get_children() (acitoolkit.acitoolkit.EPG method),242
get_children() (acitoolkit.acitoolkit.EPGDomainmethod), 248
get_children() (acitoolkit.acitoolkit.FexInterfacemethod), 259
get_children() (acitoolkit.acitoolkit.Filter method),265
get_children() (acitoolkit.acitoolkit.FilterEntrymethod), 271
get_children() (acitoolkit.acitoolkit.InputTerminalmethod), 282
get_children() (acitoolkit.acitoolkit.IPEndpointmethod), 277
get_children() (acitoolkit.acitoolkit.L2ExtDomainmethod), 288
get_children() (acitoolkit.acitoolkit.L2Interfacemethod), 293
get_children() (acitoolkit.acitoolkit.L3ExtDomainmethod), 299
get_children() (acitoolkit.acitoolkit.L3Interfacemethod), 305
get_children() (acitoolkit.acitoolkit.LogicalModelmethod), 311
get_children() (acitoolkit.acitoolkit.NetworkPoolmethod), 320
get_children() (aci-toolkit.acitoolkit.OSPFInterface method),326
get_children() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332
get_children() (acitoolkit.acitoolkit.OSPFRoutermethod), 337
get_children() (aci-toolkit.acitoolkit.OutputTerminal method),343
get_children() (acitoolkit.acitoolkit.OutsideEPGmethod), 350
get_children() (acitoolkit.acitoolkit.OutsideL2method), 356
get_children() (aci-toolkit.acitoolkit.OutsideL2EPG method),363
get_children() (acitoolkit.acitoolkit.OutsideL3
method), 369get_children() (aci-
toolkit.acitoolkit.OutsideNetwork method),375
get_children() (acitoolkit.acitoolkit.PhysDomainmethod), 381
get_children() (acitoolkit.acitoolkit.PortChannelmethod), 386
get_children() (acitoolkit.acitoolkit.Searchmethod), 392
get_children() (acitoolkit.acitoolkit.Subnetmethod), 398
get_children() (acitoolkit.acitoolkit.Taboomethod), 404
get_children() (acitoolkit.acitoolkit.Tag method),409
get_children() (acitoolkit.acitoolkit.Tenantmethod), 415
get_children() (acitoolkit.acitoolkit.VMMmethod), 421
get_children() (aci-toolkit.acitoolkit.VMMCredentials method),426
get_children() (acitoolkit.acitoolkit.VmmDomainmethod), 432
get_class() (acitoolkit.aciphysobject.WorkingDatamethod), 154
get_cluster_size() (aci-toolkit.aciphysobject.Cluster method), 64
get_config_size() (aci-toolkit.aciphysobject.Cluster method), 64
get_context() (acitoolkit.acitoolkit.BridgeDomainmethod), 201
get_context() (acitoolkit.acitoolkit.L3Interfacemethod), 305
get_context() (acitoolkit.acitoolkit.OutsideL3method), 369
get_deep() (acitoolkit.acibaseobject.BaseACIObjectclass method), 55
get_deep() (acitoolkit.acibaseobject.BaseACIPhysObjectclass method), 60
get_deep() (acitoolkit.aciphysobject.Cluster classmethod), 64
get_deep() (acitoolkit.aciphysobject.ExternalSwitchclass method), 70
get_deep() (acitoolkit.aciphysobject.Fabric classmethod), 75
get_deep() (acitoolkit.aciphysobject.Fan classmethod), 81
get_deep() (acitoolkit.aciphysobject.Fantray classmethod), 87
get_deep() (acitoolkit.aciphysobject.Interface classmethod), 93
get_deep() (acitoolkit.aciphysobject.Linecard class
518 Index
acitoolkit Documentation, Release 0.1
method), 101get_deep() (acitoolkit.aciphysobject.Link class
method), 107get_deep() (acitoolkit.aciphysobject.Node class
method), 114get_deep() (acitoolkit.aciphysobject.PhysicalModel
class method), 119get_deep() (acitoolkit.aciphysobject.Pod class
method), 125get_deep() (acitoolkit.aciphysobject.Powersupply
class method), 131get_deep() (acitoolkit.aciphysobject.Process class
method), 137get_deep() (acitoolkit.aciphysobject.Supervisorcard
class method), 143get_deep() (acitoolkit.aciphysobject.Systemcontroller
class method), 150get_deep() (acitoolkit.acitoolkit.AnyEPG class
method), 160get_deep() (acitoolkit.acitoolkit.AppProfile class
method), 166get_deep() (acitoolkit.acitoolkit.AttributeCriterion
class method), 171get_deep() (acitoolkit.acitoolkit.BaseContract class
method), 183get_deep() (acitoolkit.acitoolkit.BaseSubnet class
method), 189get_deep() (acitoolkit.acitoolkit.BaseTerminal class
method), 195get_deep() (acitoolkit.acitoolkit.BGPSession class
method), 177get_deep() (acitoolkit.acitoolkit.BridgeDomain class
method), 201get_deep() (acitoolkit.acitoolkit.CommonEPG class
method), 211get_deep() (acitoolkit.acitoolkit.Context class
method), 217get_deep() (acitoolkit.acitoolkit.Contract class
method), 223get_deep() (acitoolkit.acitoolkit.ContractInterface
class method), 228get_deep() (acitoolkit.acitoolkit.ContractSubject
class method), 234get_deep() (acitoolkit.acitoolkit.Endpoint class
method), 254get_deep() (acitoolkit.acitoolkit.EPG class method),
242get_deep() (acitoolkit.acitoolkit.EPGDomain class
method), 248get_deep() (acitoolkit.acitoolkit.FexInterface class
method), 260get_deep() (acitoolkit.acitoolkit.Filter class method),
265get_deep() (acitoolkit.acitoolkit.FilterEntry class
method), 271get_deep() (acitoolkit.acitoolkit.InputTerminal class
method), 282get_deep() (acitoolkit.acitoolkit.IPEndpoint class
method), 277get_deep() (acitoolkit.acitoolkit.L2ExtDomain class
method), 288get_deep() (acitoolkit.acitoolkit.L2Interface class
method), 293get_deep() (acitoolkit.acitoolkit.L3ExtDomain class
method), 299get_deep() (acitoolkit.acitoolkit.L3Interface class
method), 305get_deep() (acitoolkit.acitoolkit.LogicalModel class
method), 311get_deep() (acitoolkit.acitoolkit.NetworkPool class
method), 321get_deep() (acitoolkit.acitoolkit.OSPFInterface class
method), 326get_deep() (acitoolkit.acitoolkit.OSPFInterfacePolicy
class method), 332get_deep() (acitoolkit.acitoolkit.OSPFRouter class
method), 337get_deep() (acitoolkit.acitoolkit.OutputTerminal
class method), 343get_deep() (acitoolkit.acitoolkit.OutsideEPG class
method), 350get_deep() (acitoolkit.acitoolkit.OutsideL2 class
method), 356get_deep() (acitoolkit.acitoolkit.OutsideL2EPG class
method), 363get_deep() (acitoolkit.acitoolkit.OutsideL3 class
method), 369get_deep() (acitoolkit.acitoolkit.OutsideNetwork
class method), 375get_deep() (acitoolkit.acitoolkit.PhysDomain class
method), 381get_deep() (acitoolkit.acitoolkit.PortChannel class
method), 386get_deep() (acitoolkit.acitoolkit.Search class
method), 392get_deep() (acitoolkit.acitoolkit.Subnet class
method), 398get_deep() (acitoolkit.acitoolkit.Taboo class method),
404get_deep() (acitoolkit.acitoolkit.Tag class method),
409get_deep() (acitoolkit.acitoolkit.Tenant class
method), 415get_deep() (acitoolkit.acitoolkit.VMM class method),
421get_deep() (acitoolkit.acitoolkit.VMMCredentials
class method), 427get_deep() (acitoolkit.acitoolkit.VmmDomain class
Index 519
acitoolkit Documentation, Release 0.1
method), 432get_deep_apic_classes() (aci-
toolkit.acibaseobject.BaseACIObject classmethod), 55
get_deep_apic_classes() (aci-toolkit.aciphysobject.Cluster class method),64
get_deep_apic_classes() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 70
get_deep_apic_classes() (aci-toolkit.aciphysobject.Fabric class method),75
get_deep_apic_classes() (aci-toolkit.aciphysobject.Fan class method),81
get_deep_apic_classes() (aci-toolkit.aciphysobject.Fantray class method),87
get_deep_apic_classes() (aci-toolkit.aciphysobject.Interface class method),94
get_deep_apic_classes() (aci-toolkit.aciphysobject.Linecard class method),101
get_deep_apic_classes() (aci-toolkit.aciphysobject.Link class method),107
get_deep_apic_classes() (aci-toolkit.aciphysobject.Node class method),114
get_deep_apic_classes() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 119
get_deep_apic_classes() (aci-toolkit.aciphysobject.Pod class method),125
get_deep_apic_classes() (aci-toolkit.aciphysobject.Powersupply classmethod), 131
get_deep_apic_classes() (aci-toolkit.aciphysobject.Process class method),137
get_deep_apic_classes() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 143
get_deep_apic_classes() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 150
get_deep_apic_classes() (aci-toolkit.acitoolkit.AnyEPG class method),161
get_deep_apic_classes() (aci-toolkit.acitoolkit.AppProfile class method),
166get_deep_apic_classes() (aci-
toolkit.acitoolkit.AttributeCriterion classmethod), 172
get_deep_apic_classes() (aci-toolkit.acitoolkit.BaseContract class method),183
get_deep_apic_classes() (aci-toolkit.acitoolkit.BaseSubnet class method),190
get_deep_apic_classes() (aci-toolkit.acitoolkit.BaseTerminal class method),195
get_deep_apic_classes() (aci-toolkit.acitoolkit.BGPSession class method),177
get_deep_apic_classes() (aci-toolkit.acitoolkit.BridgeDomain class method),201
get_deep_apic_classes() (aci-toolkit.acitoolkit.CommonEPG class method),212
get_deep_apic_classes() (aci-toolkit.acitoolkit.Context class method),217
get_deep_apic_classes() (aci-toolkit.acitoolkit.Contract class method),223
get_deep_apic_classes() (aci-toolkit.acitoolkit.ContractInterface classmethod), 229
get_deep_apic_classes() (aci-toolkit.acitoolkit.ContractSubject classmethod), 234
get_deep_apic_classes() (aci-toolkit.acitoolkit.Endpoint class method),254
get_deep_apic_classes() (aci-toolkit.acitoolkit.EPG class method), 242
get_deep_apic_classes() (aci-toolkit.acitoolkit.EPGDomain class method),249
get_deep_apic_classes() (aci-toolkit.acitoolkit.FexInterface class method),260
get_deep_apic_classes() (aci-toolkit.acitoolkit.Filter class method), 265
get_deep_apic_classes() (aci-toolkit.acitoolkit.FilterEntry class method),272
get_deep_apic_classes() (aci-toolkit.acitoolkit.InputTerminal class method),283
get_deep_apic_classes() (aci-
520 Index
acitoolkit Documentation, Release 0.1
toolkit.acitoolkit.IPEndpoint class method),277
get_deep_apic_classes() (aci-toolkit.acitoolkit.L2ExtDomain class method),288
get_deep_apic_classes() (aci-toolkit.acitoolkit.L2Interface class method),294
get_deep_apic_classes() (aci-toolkit.acitoolkit.L3ExtDomain class method),299
get_deep_apic_classes() (aci-toolkit.acitoolkit.L3Interface class method),305
get_deep_apic_classes() (aci-toolkit.acitoolkit.LogicalModel class method),311
get_deep_apic_classes() (aci-toolkit.acitoolkit.NetworkPool class method),321
get_deep_apic_classes() (aci-toolkit.acitoolkit.OSPFInterface class method),327
get_deep_apic_classes() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 332
get_deep_apic_classes() (aci-toolkit.acitoolkit.OSPFRouter class method),338
get_deep_apic_classes() (aci-toolkit.acitoolkit.OutputTerminal classmethod), 343
get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideEPG class method),350
get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideL2 class method),356
get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideL2EPG class method),363
get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideL3 class method),369
get_deep_apic_classes() (aci-toolkit.acitoolkit.OutsideNetwork classmethod), 375
get_deep_apic_classes() (aci-toolkit.acitoolkit.PhysDomain class method),381
get_deep_apic_classes() (aci-toolkit.acitoolkit.PortChannel class method),387
get_deep_apic_classes() (aci-
toolkit.acitoolkit.Search class method), 393get_deep_apic_classes() (aci-
toolkit.acitoolkit.Subnet class method), 398get_deep_apic_classes() (aci-
toolkit.acitoolkit.Taboo class method), 404get_deep_apic_classes() (aci-
toolkit.acitoolkit.Tag class method), 410get_deep_apic_classes() (aci-
toolkit.acitoolkit.Tenant class method), 415get_deep_apic_classes() (aci-
toolkit.acitoolkit.VMM class method), 421get_deep_apic_classes() (aci-
toolkit.acitoolkit.VMMCredentials classmethod), 427
get_deep_apic_classes() (aci-toolkit.acitoolkit.VmmDomain class method),432
get_dn_from_attributes() (aci-toolkit.acibaseobject.BaseACIObject method),55
get_dn_from_attributes() (aci-toolkit.aciphysobject.Cluster method), 64
get_dn_from_attributes() (aci-toolkit.aciphysobject.ExternalSwitch method),70
get_dn_from_attributes() (aci-toolkit.aciphysobject.Fabric method), 75
get_dn_from_attributes() (aci-toolkit.aciphysobject.Fan method), 81
get_dn_from_attributes() (aci-toolkit.aciphysobject.Fantray method), 87
get_dn_from_attributes() (aci-toolkit.aciphysobject.Interface method),94
get_dn_from_attributes() (aci-toolkit.aciphysobject.Linecard method),101
get_dn_from_attributes() (aci-toolkit.aciphysobject.Link method), 107
get_dn_from_attributes() (aci-toolkit.aciphysobject.Node method), 114
get_dn_from_attributes() (aci-toolkit.aciphysobject.PhysicalModel method),119
get_dn_from_attributes() (aci-toolkit.aciphysobject.Pod method), 125
get_dn_from_attributes() (aci-toolkit.aciphysobject.Powersupply method),131
get_dn_from_attributes() (aci-toolkit.aciphysobject.Process method), 137
get_dn_from_attributes() (aci-toolkit.aciphysobject.Supervisorcard method),143
Index 521
acitoolkit Documentation, Release 0.1
get_dn_from_attributes() (aci-toolkit.aciphysobject.Systemcontrollermethod), 150
get_dn_from_attributes() (aci-toolkit.acitoolkit.AnyEPG method), 161
get_dn_from_attributes() (aci-toolkit.acitoolkit.AppProfile method), 166
get_dn_from_attributes() (aci-toolkit.acitoolkit.AttributeCriterion method),172
get_dn_from_attributes() (aci-toolkit.acitoolkit.BaseContract method),183
get_dn_from_attributes() (aci-toolkit.acitoolkit.BaseSubnet method), 190
get_dn_from_attributes() (aci-toolkit.acitoolkit.BaseTerminal method),196
get_dn_from_attributes() (aci-toolkit.acitoolkit.BGPSession method), 177
get_dn_from_attributes() (aci-toolkit.acitoolkit.BridgeDomain method),201
get_dn_from_attributes() (aci-toolkit.acitoolkit.CommonEPG method),212
get_dn_from_attributes() (aci-toolkit.acitoolkit.Context method), 218
get_dn_from_attributes() (aci-toolkit.acitoolkit.Contract method), 223
get_dn_from_attributes() (aci-toolkit.acitoolkit.ContractInterface method),229
get_dn_from_attributes() (aci-toolkit.acitoolkit.ContractSubject method),235
get_dn_from_attributes() (aci-toolkit.acitoolkit.Endpoint method), 254
get_dn_from_attributes() (aci-toolkit.acitoolkit.EPG method), 242
get_dn_from_attributes() (aci-toolkit.acitoolkit.EPGDomain method), 249
get_dn_from_attributes() (aci-toolkit.acitoolkit.FexInterface method), 260
get_dn_from_attributes() (aci-toolkit.acitoolkit.Filter method), 265
get_dn_from_attributes() (aci-toolkit.acitoolkit.FilterEntry method), 272
get_dn_from_attributes() (aci-toolkit.acitoolkit.InputTerminal method),283
get_dn_from_attributes() (aci-toolkit.acitoolkit.IPEndpoint method), 277
get_dn_from_attributes() (aci-
toolkit.acitoolkit.L2ExtDomain method),288
get_dn_from_attributes() (aci-toolkit.acitoolkit.L2Interface method), 294
get_dn_from_attributes() (aci-toolkit.acitoolkit.L3ExtDomain method),300
get_dn_from_attributes() (aci-toolkit.acitoolkit.L3Interface method), 305
get_dn_from_attributes() (aci-toolkit.acitoolkit.LogicalModel method),311
get_dn_from_attributes() (aci-toolkit.acitoolkit.NetworkPool method), 321
get_dn_from_attributes() (aci-toolkit.acitoolkit.OSPFInterface method),327
get_dn_from_attributes() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332
get_dn_from_attributes() (aci-toolkit.acitoolkit.OSPFRouter method), 338
get_dn_from_attributes() (aci-toolkit.acitoolkit.OutputTerminal method),343
get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideEPG method), 350
get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideL2 method), 356
get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideL2EPG method),363
get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideL3 method), 369
get_dn_from_attributes() (aci-toolkit.acitoolkit.OutsideNetwork method),375
get_dn_from_attributes() (aci-toolkit.acitoolkit.PhysDomain method), 381
get_dn_from_attributes() (aci-toolkit.acitoolkit.PortChannel method), 387
get_dn_from_attributes() (aci-toolkit.acitoolkit.Search method), 393
get_dn_from_attributes() (aci-toolkit.acitoolkit.Subnet method), 398
get_dn_from_attributes() (aci-toolkit.acitoolkit.Taboo method), 404
get_dn_from_attributes() (aci-toolkit.acitoolkit.Tag method), 410
get_dn_from_attributes() (aci-toolkit.acitoolkit.Tenant method), 416
get_dn_from_attributes() (aci-toolkit.acitoolkit.VMM method), 421
get_dn_from_attributes() (aci-
522 Index
acitoolkit Documentation, Release 0.1
toolkit.acitoolkit.VMMCredentials method),427
get_dn_from_attributes() (aci-toolkit.acitoolkit.VmmDomain method),432
get_encap_id() (acitoolkit.acitoolkit.L2Interfacemethod), 294
get_encap_type() (acitoolkit.acitoolkit.L2Interfacemethod), 294
get_event() (acitoolkit.acibaseobject.BaseACIObjectclass method), 55
get_event() (acitoolkit.aciphysobject.Cluster classmethod), 64
get_event() (acitoolkit.aciphysobject.ExternalSwitchclass method), 70
get_event() (acitoolkit.aciphysobject.Fabric classmethod), 76
get_event() (acitoolkit.aciphysobject.Fan classmethod), 81
get_event() (acitoolkit.aciphysobject.Fantray classmethod), 87
get_event() (acitoolkit.aciphysobject.Interface classmethod), 94
get_event() (acitoolkit.aciphysobject.Linecard classmethod), 101
get_event() (acitoolkit.aciphysobject.Link classmethod), 107
get_event() (acitoolkit.aciphysobject.Node classmethod), 114
get_event() (acitoolkit.aciphysobject.PhysicalModelclass method), 120
get_event() (acitoolkit.aciphysobject.Pod classmethod), 125
get_event() (acitoolkit.aciphysobject.Powersupplyclass method), 131
get_event() (acitoolkit.aciphysobject.Process classmethod), 137
get_event() (acitoolkit.aciphysobject.Supervisorcardclass method), 143
get_event() (acitoolkit.aciphysobject.Systemcontrollerclass method), 150
get_event() (acitoolkit.acisession.Session method),155
get_event() (acitoolkit.acitoolkit.AnyEPG classmethod), 161
get_event() (acitoolkit.acitoolkit.AppProfile classmethod), 166
get_event() (acitoolkit.acitoolkit.AttributeCriterionclass method), 172
get_event() (acitoolkit.acitoolkit.BaseContract classmethod), 183
get_event() (acitoolkit.acitoolkit.BaseSubnet classmethod), 190
get_event() (acitoolkit.acitoolkit.BaseTerminal class
method), 196get_event() (acitoolkit.acitoolkit.BGPSession class
method), 178get_event() (acitoolkit.acitoolkit.BridgeDomain
class method), 202get_event() (acitoolkit.acitoolkit.CommonEPG class
method), 212get_event() (acitoolkit.acitoolkit.Context class
method), 218get_event() (acitoolkit.acitoolkit.Contract class
method), 223get_event() (acitoolkit.acitoolkit.ContractInterface
class method), 229get_event() (acitoolkit.acitoolkit.ContractSubject
class method), 235get_event() (acitoolkit.acitoolkit.Endpoint class
method), 254get_event() (acitoolkit.acitoolkit.EPG class
method), 243get_event() (acitoolkit.acitoolkit.EPGDomain class
method), 249get_event() (acitoolkit.acitoolkit.FexInterface class
method), 260get_event() (acitoolkit.acitoolkit.Filter class
method), 266get_event() (acitoolkit.acitoolkit.FilterEntry class
method), 272get_event() (acitoolkit.acitoolkit.InputTerminal
class method), 283get_event() (acitoolkit.acitoolkit.IPEndpoint class
method), 277get_event() (acitoolkit.acitoolkit.L2ExtDomain class
method), 288get_event() (acitoolkit.acitoolkit.L2Interface class
method), 294get_event() (acitoolkit.acitoolkit.L3ExtDomain class
method), 300get_event() (acitoolkit.acitoolkit.L3Interface class
method), 305get_event() (acitoolkit.acitoolkit.LogicalModel class
method), 311get_event() (acitoolkit.acitoolkit.NetworkPool class
method), 321get_event() (acitoolkit.acitoolkit.OSPFInterface
class method), 327get_event() (acitoolkit.acitoolkit.OSPFInterfacePolicy
class method), 332get_event() (acitoolkit.acitoolkit.OSPFRouter class
method), 338get_event() (acitoolkit.acitoolkit.OutputTerminal
class method), 343get_event() (acitoolkit.acitoolkit.OutsideEPG class
method), 351get_event() (acitoolkit.acitoolkit.OutsideL2 class
Index 523
acitoolkit Documentation, Release 0.1
method), 356get_event() (acitoolkit.acitoolkit.OutsideL2EPG
class method), 364get_event() (acitoolkit.acitoolkit.OutsideL3 class
method), 369get_event() (acitoolkit.acitoolkit.OutsideNetwork
class method), 375get_event() (acitoolkit.acitoolkit.PhysDomain class
method), 381get_event() (acitoolkit.acitoolkit.PortChannel class
method), 387get_event() (acitoolkit.acitoolkit.Search class
method), 393get_event() (acitoolkit.acitoolkit.Subnet class
method), 398get_event() (acitoolkit.acitoolkit.Taboo class
method), 404get_event() (acitoolkit.acitoolkit.Tag class method),
410get_event() (acitoolkit.acitoolkit.Tenant class
method), 416get_event() (acitoolkit.acitoolkit.VMM class
method), 421get_event() (acitoolkit.acitoolkit.VMMCredentials
class method), 427get_event() (acitoolkit.acitoolkit.VmmDomain class
method), 433get_event_count() (acitoolkit.acisession.Session
method), 155get_fault() (acitoolkit.acibaseobject.BaseACIObject
class method), 56get_fault() (acitoolkit.aciFaults.Faults class
method), 437get_fault() (acitoolkit.aciphysobject.Cluster class
method), 64get_fault() (acitoolkit.aciphysobject.ExternalSwitch
class method), 70get_fault() (acitoolkit.aciphysobject.Fabric class
method), 76get_fault() (acitoolkit.aciphysobject.Fan class
method), 81get_fault() (acitoolkit.aciphysobject.Fantray class
method), 87get_fault() (acitoolkit.aciphysobject.Interface class
method), 94get_fault() (acitoolkit.aciphysobject.Linecard class
method), 101get_fault() (acitoolkit.aciphysobject.Link class
method), 107get_fault() (acitoolkit.aciphysobject.Node class
method), 114get_fault() (acitoolkit.aciphysobject.PhysicalModel
class method), 120get_fault() (acitoolkit.aciphysobject.Pod class
method), 125get_fault() (acitoolkit.aciphysobject.Powersupply
class method), 131get_fault() (acitoolkit.aciphysobject.Process class
method), 137get_fault() (acitoolkit.aciphysobject.Supervisorcard
class method), 144get_fault() (acitoolkit.aciphysobject.Systemcontroller
class method), 150get_fault() (acitoolkit.acitoolkit.AnyEPG class
method), 161get_fault() (acitoolkit.acitoolkit.AppProfile class
method), 166get_fault() (acitoolkit.acitoolkit.AttributeCriterion
class method), 172get_fault() (acitoolkit.acitoolkit.BaseContract class
method), 183get_fault() (acitoolkit.acitoolkit.BaseSubnet class
method), 190get_fault() (acitoolkit.acitoolkit.BaseTerminal class
method), 196get_fault() (acitoolkit.acitoolkit.BGPSession class
method), 178get_fault() (acitoolkit.acitoolkit.BridgeDomain
class method), 202get_fault() (acitoolkit.acitoolkit.CommonEPG class
method), 212get_fault() (acitoolkit.acitoolkit.Context class
method), 218get_fault() (acitoolkit.acitoolkit.Contract class
method), 223get_fault() (acitoolkit.acitoolkit.ContractInterface
class method), 229get_fault() (acitoolkit.acitoolkit.ContractSubject
class method), 235get_fault() (acitoolkit.acitoolkit.Endpoint class
method), 255get_fault() (acitoolkit.acitoolkit.EPG class
method), 243get_fault() (acitoolkit.acitoolkit.EPGDomain class
method), 249get_fault() (acitoolkit.acitoolkit.FexInterface class
method), 260get_fault() (acitoolkit.acitoolkit.Filter class
method), 266get_fault() (acitoolkit.acitoolkit.FilterEntry class
method), 272get_fault() (acitoolkit.acitoolkit.InputTerminal
class method), 283get_fault() (acitoolkit.acitoolkit.IPEndpoint class
method), 277get_fault() (acitoolkit.acitoolkit.L2ExtDomain class
method), 288get_fault() (acitoolkit.acitoolkit.L2Interface class
524 Index
acitoolkit Documentation, Release 0.1
method), 294get_fault() (acitoolkit.acitoolkit.L3ExtDomain class
method), 300get_fault() (acitoolkit.acitoolkit.L3Interface class
method), 305get_fault() (acitoolkit.acitoolkit.LogicalModel class
method), 311get_fault() (acitoolkit.acitoolkit.NetworkPool class
method), 321get_fault() (acitoolkit.acitoolkit.OSPFInterface
class method), 327get_fault() (acitoolkit.acitoolkit.OSPFInterfacePolicy
class method), 332get_fault() (acitoolkit.acitoolkit.OSPFRouter class
method), 338get_fault() (acitoolkit.acitoolkit.OutputTerminal
class method), 344get_fault() (acitoolkit.acitoolkit.OutsideEPG class
method), 351get_fault() (acitoolkit.acitoolkit.OutsideL2 class
method), 356get_fault() (acitoolkit.acitoolkit.OutsideL2EPG
class method), 364get_fault() (acitoolkit.acitoolkit.OutsideL3 class
method), 370get_fault() (acitoolkit.acitoolkit.OutsideNetwork
class method), 375get_fault() (acitoolkit.acitoolkit.PhysDomain class
method), 381get_fault() (acitoolkit.acitoolkit.PortChannel class
method), 387get_fault() (acitoolkit.acitoolkit.Search class
method), 393get_fault() (acitoolkit.acitoolkit.Subnet class
method), 399get_fault() (acitoolkit.acitoolkit.Taboo class
method), 404get_fault() (acitoolkit.acitoolkit.Tag class method),
410get_fault() (acitoolkit.acitoolkit.Tenant class
method), 416get_fault() (acitoolkit.acitoolkit.VMM class
method), 421get_fault() (acitoolkit.acitoolkit.VMMCredentials
class method), 427get_fault() (acitoolkit.acitoolkit.VmmDomain class
method), 433get_faults() (acitoolkit.aciFaults.Faults class
method), 437get_faults_by_filter() (aci-
toolkit.aciFaults.Faults method), 437get_filters() (acitoolkit.acitoolkit.BaseTerminal
method), 196get_filters() (acitoolkit.acitoolkit.ContractSubject
method), 235get_filters() (acitoolkit.acitoolkit.InputTerminal
method), 283get_filters() (acitoolkit.acitoolkit.OutputTerminal
method), 344get_firmware() (acitoolkit.aciphysobject.Node
method), 114get_from_json() (aci-
toolkit.acibaseobject.BaseACIObject method),56
get_from_json() (acitoolkit.aciphysobject.Clustermethod), 64
get_from_json() (aci-toolkit.aciphysobject.ExternalSwitch method),70
get_from_json() (acitoolkit.aciphysobject.Fabricmethod), 76
get_from_json() (acitoolkit.aciphysobject.Fanmethod), 81
get_from_json() (acitoolkit.aciphysobject.Fantraymethod), 88
get_from_json() (acitoolkit.aciphysobject.Interfacemethod), 94
get_from_json() (acitoolkit.aciphysobject.Linecardmethod), 101
get_from_json() (acitoolkit.aciphysobject.Linkmethod), 107
get_from_json() (acitoolkit.aciphysobject.Nodemethod), 114
get_from_json() (aci-toolkit.aciphysobject.PhysicalModel method),120
get_from_json() (acitoolkit.aciphysobject.Podmethod), 126
get_from_json() (aci-toolkit.aciphysobject.Powersupply method),132
get_from_json() (acitoolkit.aciphysobject.Processmethod), 138
get_from_json() (aci-toolkit.aciphysobject.Supervisorcard method),144
get_from_json() (aci-toolkit.aciphysobject.Systemcontrollermethod), 150
get_from_json() (acitoolkit.acitoolkit.AnyEPGmethod), 161
get_from_json() (acitoolkit.acitoolkit.AppProfilemethod), 166
get_from_json() (aci-toolkit.acitoolkit.AttributeCriterion method),172
get_from_json() (aci-toolkit.acitoolkit.BaseContract method),
Index 525
acitoolkit Documentation, Release 0.1
183get_from_json() (acitoolkit.acitoolkit.BaseSubnet
method), 190get_from_json() (aci-
toolkit.acitoolkit.BaseTerminal method),196
get_from_json() (acitoolkit.acitoolkit.BGPSessionmethod), 178
get_from_json() (aci-toolkit.acitoolkit.BridgeDomain static method),202
get_from_json() (aci-toolkit.acitoolkit.CommonEPG method),212
get_from_json() (acitoolkit.acitoolkit.Contextmethod), 218
get_from_json() (acitoolkit.acitoolkit.Contractmethod), 223
get_from_json() (aci-toolkit.acitoolkit.ContractInterface method),229
get_from_json() (aci-toolkit.acitoolkit.ContractSubject staticmethod), 235
get_from_json() (acitoolkit.acitoolkit.Endpointmethod), 255
get_from_json() (acitoolkit.acitoolkit.EPG staticmethod), 243
get_from_json() (acitoolkit.acitoolkit.EPGDomainmethod), 249
get_from_json() (acitoolkit.acitoolkit.FexInterfacemethod), 260
get_from_json() (acitoolkit.acitoolkit.Filter staticmethod), 266
get_from_json() (acitoolkit.acitoolkit.FilterEntrymethod), 272
get_from_json() (aci-toolkit.acitoolkit.InputTerminal method),283
get_from_json() (acitoolkit.acitoolkit.IPEndpointmethod), 277
get_from_json() (aci-toolkit.acitoolkit.L2ExtDomain method),288
get_from_json() (acitoolkit.acitoolkit.L2Interfacemethod), 294
get_from_json() (aci-toolkit.acitoolkit.L3ExtDomain method),300
get_from_json() (acitoolkit.acitoolkit.L3Interfacemethod), 305
get_from_json() (aci-toolkit.acitoolkit.LogicalModel method),311
get_from_json() (acitoolkit.acitoolkit.NetworkPoolmethod), 321
get_from_json() (aci-toolkit.acitoolkit.OSPFInterface method),327
get_from_json() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332
get_from_json() (acitoolkit.acitoolkit.OSPFRoutermethod), 338
get_from_json() (aci-toolkit.acitoolkit.OutputTerminal method),344
get_from_json() (acitoolkit.acitoolkit.OutsideEPGmethod), 351
get_from_json() (acitoolkit.acitoolkit.OutsideL2method), 357
get_from_json() (aci-toolkit.acitoolkit.OutsideL2EPG method),364
get_from_json() (acitoolkit.acitoolkit.OutsideL3method), 370
get_from_json() (aci-toolkit.acitoolkit.OutsideNetwork method),375
get_from_json() (acitoolkit.acitoolkit.PhysDomainmethod), 381
get_from_json() (acitoolkit.acitoolkit.PortChannelmethod), 387
get_from_json() (acitoolkit.acitoolkit.Searchmethod), 393
get_from_json() (acitoolkit.acitoolkit.Subnetmethod), 399
get_from_json() (acitoolkit.acitoolkit.Taboomethod), 405
get_from_json() (acitoolkit.acitoolkit.Tag method),410
get_from_json() (acitoolkit.acitoolkit.Tenantmethod), 416
get_from_json() (acitoolkit.acitoolkit.VMMmethod), 421
get_from_json() (aci-toolkit.acitoolkit.VMMCredentials method),427
get_from_json() (acitoolkit.acitoolkit.VmmDomainmethod), 433
get_health() (acitoolkit.aciphysobject.Nodemethod), 114
get_import_contract() (aci-toolkit.acitoolkit.ContractInterface method),229
get_interfaces() (aci-toolkit.acibaseobject.BaseACIObject method),56
526 Index
acitoolkit Documentation, Release 0.1
get_interfaces() (acitoolkit.aciphysobject.Clustermethod), 65
get_interfaces() (aci-toolkit.aciphysobject.ExternalSwitch method),70
get_interfaces() (acitoolkit.aciphysobject.Fabricmethod), 76
get_interfaces() (acitoolkit.aciphysobject.Fanmethod), 81
get_interfaces() (aci-toolkit.aciphysobject.Fantray method), 88
get_interfaces() (aci-toolkit.aciphysobject.Interface method),94
get_interfaces() (aci-toolkit.aciphysobject.Linecard method),101
get_interfaces() (acitoolkit.aciphysobject.Linkmethod), 107
get_interfaces() (acitoolkit.aciphysobject.Nodemethod), 114
get_interfaces() (aci-toolkit.aciphysobject.PhysicalModel method),120
get_interfaces() (acitoolkit.aciphysobject.Podmethod), 126
get_interfaces() (aci-toolkit.aciphysobject.Powersupply method),132
get_interfaces() (aci-toolkit.aciphysobject.Process method), 138
get_interfaces() (aci-toolkit.aciphysobject.Supervisorcard method),144
get_interfaces() (aci-toolkit.aciphysobject.Systemcontrollermethod), 150
get_interfaces() (acitoolkit.acitoolkit.AnyEPGmethod), 161
get_interfaces() (acitoolkit.acitoolkit.AppProfilemethod), 167
get_interfaces() (aci-toolkit.acitoolkit.AttributeCriterion method),172
get_interfaces() (aci-toolkit.acitoolkit.BaseContract method),183
get_interfaces() (acitoolkit.acitoolkit.BaseSubnetmethod), 190
get_interfaces() (aci-toolkit.acitoolkit.BaseTerminal method),196
get_interfaces() (aci-toolkit.acitoolkit.BGPSession method), 178
get_interfaces() (aci-toolkit.acitoolkit.BridgeDomain method),202
get_interfaces() (aci-toolkit.acitoolkit.CommonEPG method),212
get_interfaces() (acitoolkit.acitoolkit.Contextmethod), 218
get_interfaces() (acitoolkit.acitoolkit.Contractmethod), 224
get_interfaces() (aci-toolkit.acitoolkit.ContractInterface method),229
get_interfaces() (aci-toolkit.acitoolkit.ContractSubject method),235
get_interfaces() (acitoolkit.acitoolkit.Endpointmethod), 255
get_interfaces() (acitoolkit.acitoolkit.EPGmethod), 243
get_interfaces() (aci-toolkit.acitoolkit.EPGDomain method), 249
get_interfaces() (aci-toolkit.acitoolkit.FexInterface method), 260
get_interfaces() (acitoolkit.acitoolkit.Filtermethod), 266
get_interfaces() (acitoolkit.acitoolkit.FilterEntrymethod), 272
get_interfaces() (aci-toolkit.acitoolkit.InputTerminal method),283
get_interfaces() (acitoolkit.acitoolkit.IPEndpointmethod), 277
get_interfaces() (aci-toolkit.acitoolkit.L2ExtDomain method),289
get_interfaces() (acitoolkit.acitoolkit.L2Interfacemethod), 294
get_interfaces() (aci-toolkit.acitoolkit.L3ExtDomain method),300
get_interfaces() (acitoolkit.acitoolkit.L3Interfacemethod), 306
get_interfaces() (aci-toolkit.acitoolkit.LogicalModel method),311
get_interfaces() (aci-toolkit.acitoolkit.NetworkPool method), 321
get_interfaces() (aci-toolkit.acitoolkit.OSPFInterface method),327
get_interfaces() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 332
Index 527
acitoolkit Documentation, Release 0.1
get_interfaces() (aci-toolkit.acitoolkit.OSPFRouter method), 338
get_interfaces() (aci-toolkit.acitoolkit.OutputTerminal method),344
get_interfaces() (aci-toolkit.acitoolkit.OutsideEPG method), 351
get_interfaces() (acitoolkit.acitoolkit.OutsideL2method), 357
get_interfaces() (aci-toolkit.acitoolkit.OutsideL2EPG method),364
get_interfaces() (acitoolkit.acitoolkit.OutsideL3method), 370
get_interfaces() (aci-toolkit.acitoolkit.OutsideNetwork method),376
get_interfaces() (aci-toolkit.acitoolkit.PhysDomain method), 381
get_interfaces() (aci-toolkit.acitoolkit.PortChannel method), 387
get_interfaces() (acitoolkit.acitoolkit.Searchmethod), 393
get_interfaces() (acitoolkit.acitoolkit.Subnetmethod), 399
get_interfaces() (acitoolkit.acitoolkit.Taboomethod), 405
get_interfaces() (acitoolkit.acitoolkit.Tagmethod), 410
get_interfaces() (acitoolkit.acitoolkit.Tenantmethod), 416
get_interfaces() (acitoolkit.acitoolkit.VMMmethod), 422
get_interfaces() (aci-toolkit.acitoolkit.VMMCredentials method),427
get_interfaces() (aci-toolkit.acitoolkit.VmmDomain method),433
get_ip_addresses() (aci-toolkit.acitoolkit.AttributeCriterion method),172
get_json() (acitoolkit.acibaseobject.BaseACIObjectmethod), 56
get_json() (acitoolkit.acibaseobject.BaseACIPhysObjectmethod), 60
get_json() (acitoolkit.aciphysobject.Clustermethod), 65
get_json() (acitoolkit.aciphysobject.ExternalSwitchmethod), 70
get_json() (acitoolkit.aciphysobject.Fabric method),76
get_json() (acitoolkit.aciphysobject.Fan method), 82get_json() (acitoolkit.aciphysobject.Fantray
method), 88get_json() (acitoolkit.aciphysobject.Interface
method), 94get_json() (acitoolkit.aciphysobject.Linecard
method), 101get_json() (acitoolkit.aciphysobject.Link method),
107get_json() (acitoolkit.aciphysobject.Node method),
114get_json() (acitoolkit.aciphysobject.PhysicalModel
method), 120get_json() (acitoolkit.aciphysobject.Pod method),
126get_json() (acitoolkit.aciphysobject.Powersupply
method), 132get_json() (acitoolkit.aciphysobject.Process
method), 138get_json() (acitoolkit.aciphysobject.Supervisorcard
method), 144get_json() (acitoolkit.aciphysobject.Systemcontroller
method), 150get_json() (acitoolkit.acitoolkit.AnyEPG method),
161get_json() (acitoolkit.acitoolkit.AppProfile method),
167get_json() (acitoolkit.acitoolkit.AttributeCriterion
method), 172get_json() (acitoolkit.acitoolkit.BaseContract
method), 183get_json() (acitoolkit.acitoolkit.BaseSubnet
method), 190get_json() (acitoolkit.acitoolkit.BaseTerminal
method), 196get_json() (acitoolkit.acitoolkit.BGPSession
method), 178get_json() (acitoolkit.acitoolkit.BridgeDomain
method), 202get_json() (acitoolkit.acitoolkit.CommonEPG
method), 212get_json() (acitoolkit.acitoolkit.Context method),
218get_json() (acitoolkit.acitoolkit.Contract method),
224get_json() (acitoolkit.acitoolkit.ContractInterface
method), 229get_json() (acitoolkit.acitoolkit.ContractSubject
method), 235get_json() (acitoolkit.acitoolkit.Endpoint method),
255get_json() (acitoolkit.acitoolkit.EPG method), 243get_json() (acitoolkit.acitoolkit.EPGDomain
method), 249get_json() (acitoolkit.acitoolkit.FexInterface
method), 260
528 Index
acitoolkit Documentation, Release 0.1
get_json() (acitoolkit.acitoolkit.Filter method), 266get_json() (acitoolkit.acitoolkit.FilterEntry method),
272get_json() (acitoolkit.acitoolkit.InputTerminal
method), 283get_json() (acitoolkit.acitoolkit.IPEndpoint method),
277get_json() (acitoolkit.acitoolkit.L2ExtDomain
method), 289get_json() (acitoolkit.acitoolkit.L2Interface
method), 294get_json() (acitoolkit.acitoolkit.L3ExtDomain
method), 300get_json() (acitoolkit.acitoolkit.L3Interface
method), 306get_json() (acitoolkit.acitoolkit.LogicalModel
method), 311get_json() (acitoolkit.acitoolkit.NetworkPool
method), 321get_json() (acitoolkit.acitoolkit.OSPFInterface
method), 327get_json() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 333get_json() (acitoolkit.acitoolkit.OSPFRouter
method), 338get_json() (acitoolkit.acitoolkit.OutputTerminal
method), 344get_json() (acitoolkit.acitoolkit.OutsideEPG
method), 351get_json() (acitoolkit.acitoolkit.OutsideL2 method),
357get_json() (acitoolkit.acitoolkit.OutsideL2EPG
method), 364get_json() (acitoolkit.acitoolkit.OutsideL3 method),
370get_json() (acitoolkit.acitoolkit.OutsideNetwork
method), 376get_json() (acitoolkit.acitoolkit.PhysDomain
method), 381get_json() (acitoolkit.acitoolkit.PortChannel
method), 387get_json() (acitoolkit.acitoolkit.Search method), 393get_json() (acitoolkit.acitoolkit.Subnet method), 399get_json() (acitoolkit.acitoolkit.Taboo method), 405get_json() (acitoolkit.acitoolkit.Tag method), 410get_json() (acitoolkit.acitoolkit.Tenant method), 416get_json() (acitoolkit.acitoolkit.VMM method), 422get_json() (acitoolkit.acitoolkit.VMMCredentials
method), 427get_json() (acitoolkit.acitoolkit.VmmDomain
method), 433get_l3if_type() (acitoolkit.acitoolkit.L3Interface
method), 306get_l3out() (acitoolkit.acitoolkit.BridgeDomain
method), 202get_links() (cableplan.CABLEPLAN method), 454get_links() (cableplan.CpSwitch method), 453get_mac() (acitoolkit.acitoolkit.BridgeDomain
method), 202get_mtu() (acitoolkit.acitoolkit.L3Interface method),
306get_name() (acitoolkit.acibaseobject.BaseACIPhysObject
method), 60get_name() (acitoolkit.aciphysobject.ExternalSwitch
method), 70get_name() (acitoolkit.aciphysobject.Fan method), 82get_name() (acitoolkit.aciphysobject.Fantray
method), 88get_name() (acitoolkit.aciphysobject.Linecard
method), 101get_name() (acitoolkit.aciphysobject.Link method),
107get_name() (acitoolkit.aciphysobject.Node method),
115get_name() (acitoolkit.aciphysobject.Pod method),
126get_name() (acitoolkit.aciphysobject.Powersupply
method), 132get_name() (acitoolkit.aciphysobject.Process
method), 138get_name() (acitoolkit.aciphysobject.Supervisorcard
method), 144get_name() (acitoolkit.aciphysobject.Systemcontroller
method), 150get_name() (cableplan.CpLink method), 452get_name() (cableplan.CpSwitch method), 453get_network() (acitoolkit.acitoolkit.PhysDomain
method), 382get_network_from_apic() (aci-
toolkit.acitoolkit.PhysDomain method), 382get_node() (acitoolkit.acibaseobject.BaseACIPhysObject
method), 60get_node() (acitoolkit.aciphysobject.ExternalSwitch
method), 70get_node() (acitoolkit.aciphysobject.Fan method), 82get_node() (acitoolkit.aciphysobject.Fantray
method), 88get_node() (acitoolkit.aciphysobject.Linecard
method), 101get_node() (acitoolkit.aciphysobject.Link method),
107get_node() (acitoolkit.aciphysobject.Node method),
115get_node() (acitoolkit.aciphysobject.Pod method),
126get_node() (acitoolkit.aciphysobject.Powersupply
method), 132get_node() (acitoolkit.aciphysobject.Process
Index 529
acitoolkit Documentation, Release 0.1
method), 138get_node() (acitoolkit.aciphysobject.Supervisorcard
method), 144get_node() (acitoolkit.aciphysobject.Systemcontroller
method), 150get_node1() (acitoolkit.aciphysobject.Link method),
107get_node2() (acitoolkit.aciphysobject.Link method),
108get_node_id() (acitoolkit.acitoolkit.OSPFRouter
method), 338get_nw_type() (aci-
toolkit.acitoolkit.OSPFInterfacePolicymethod), 333
get_obj() (acitoolkit.acibaseobject.BaseACIPhysModuleclass method), 59
get_obj() (acitoolkit.aciphysobject.Fan classmethod), 82
get_obj() (acitoolkit.aciphysobject.Fantray classmethod), 88
get_obj() (acitoolkit.aciphysobject.Linecard classmethod), 101
get_obj() (acitoolkit.aciphysobject.Powersupplyclass method), 132
get_obj() (acitoolkit.aciphysobject.Supervisorcardclass method), 144
get_obj() (acitoolkit.aciphysobject.Systemcontrollerclass method), 150
get_object() (acitoolkit.aciphysobject.WorkingDatamethod), 154
get_parent() (aci-toolkit.acibaseobject.BaseACIObject method),56
get_parent() (acitoolkit.aciphysobject.Clustermethod), 65
get_parent() (aci-toolkit.aciphysobject.ExternalSwitch method),71
get_parent() (acitoolkit.aciphysobject.Fabricmethod), 76
get_parent() (acitoolkit.aciphysobject.Fan method),82
get_parent() (acitoolkit.aciphysobject.Fantraymethod), 88
get_parent() (acitoolkit.aciphysobject.Interfacemethod), 94
get_parent() (acitoolkit.aciphysobject.Linecardmethod), 102
get_parent() (acitoolkit.aciphysobject.Linkmethod), 108
get_parent() (acitoolkit.aciphysobject.Nodemethod), 115
get_parent() (aci-toolkit.aciphysobject.PhysicalModel method),
120get_parent() (acitoolkit.aciphysobject.Pod method),
126get_parent() (acitoolkit.aciphysobject.Powersupply
method), 132get_parent() (acitoolkit.aciphysobject.Process
method), 138get_parent() (aci-
toolkit.aciphysobject.Supervisorcard method),144
get_parent() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151
get_parent() (acitoolkit.acitoolkit.AnyEPGmethod), 161
get_parent() (acitoolkit.acitoolkit.AppProfilemethod), 167
get_parent() (aci-toolkit.acitoolkit.AttributeCriterion method),172
get_parent() (acitoolkit.acitoolkit.BaseContractmethod), 184
get_parent() (aci-toolkit.acitoolkit.BaseMonitorClass method),187
get_parent() (acitoolkit.acitoolkit.BaseSubnetmethod), 190
get_parent() (acitoolkit.acitoolkit.BaseTerminalmethod), 196
get_parent() (acitoolkit.acitoolkit.BGPSessionmethod), 178
get_parent() (acitoolkit.acitoolkit.BridgeDomainmethod), 202
get_parent() (acitoolkit.acitoolkit.CollectionPolicymethod), 207
get_parent() (acitoolkit.acitoolkit.CommonEPGmethod), 212
get_parent() (acitoolkit.acitoolkit.Context method),218
get_parent() (acitoolkit.acitoolkit.Contractmethod), 224
get_parent() (acitoolkit.acitoolkit.ContractInterfacemethod), 229
get_parent() (acitoolkit.acitoolkit.ContractSubjectmethod), 235
get_parent() (acitoolkit.acitoolkit.Endpointmethod), 255
get_parent() (acitoolkit.acitoolkit.EPG method),243
get_parent() (acitoolkit.acitoolkit.EPGDomainmethod), 249
get_parent() (acitoolkit.acitoolkit.FexInterfacemethod), 261
get_parent() (acitoolkit.acitoolkit.Filter method),
530 Index
acitoolkit Documentation, Release 0.1
266get_parent() (acitoolkit.acitoolkit.FilterEntry
method), 272get_parent() (acitoolkit.acitoolkit.InputTerminal
method), 283get_parent() (acitoolkit.acitoolkit.IPEndpoint
method), 278get_parent() (acitoolkit.acitoolkit.L2ExtDomain
method), 289get_parent() (acitoolkit.acitoolkit.L2Interface
method), 295get_parent() (acitoolkit.acitoolkit.L3ExtDomain
method), 300get_parent() (acitoolkit.acitoolkit.L3Interface
method), 306get_parent() (acitoolkit.acitoolkit.LogicalModel
method), 312get_parent() (acitoolkit.acitoolkit.MonitorPolicy
method), 316get_parent() (acitoolkit.acitoolkit.MonitorStats
method), 317get_parent() (acitoolkit.acitoolkit.MonitorTarget
method), 318get_parent() (acitoolkit.acitoolkit.NetworkPool
method), 322get_parent() (acitoolkit.acitoolkit.OSPFInterface
method), 327get_parent() (aci-
toolkit.acitoolkit.OSPFInterfacePolicymethod), 333
get_parent() (acitoolkit.acitoolkit.OSPFRoutermethod), 338
get_parent() (acitoolkit.acitoolkit.OutputTerminalmethod), 344
get_parent() (acitoolkit.acitoolkit.OutsideEPGmethod), 351
get_parent() (acitoolkit.acitoolkit.OutsideL2method), 357
get_parent() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 364
get_parent() (acitoolkit.acitoolkit.OutsideL3method), 370
get_parent() (acitoolkit.acitoolkit.OutsideNetworkmethod), 376
get_parent() (acitoolkit.acitoolkit.PhysDomainmethod), 382
get_parent() (acitoolkit.acitoolkit.PortChannelmethod), 387
get_parent() (acitoolkit.acitoolkit.Search method),393
get_parent() (acitoolkit.acitoolkit.Subnet method),399
get_parent() (acitoolkit.acitoolkit.Taboo method),405
get_parent() (acitoolkit.acitoolkit.Tag method), 410get_parent() (acitoolkit.acitoolkit.Tenant method),
416get_parent() (acitoolkit.acitoolkit.VMM method),
422get_parent() (acitoolkit.acitoolkit.VMMCredentials
method), 428get_parent() (acitoolkit.acitoolkit.VmmDomain
method), 433get_pod() (acitoolkit.acibaseobject.BaseACIPhysObject
method), 60get_pod() (acitoolkit.aciphysobject.ExternalSwitch
method), 71get_pod() (acitoolkit.aciphysobject.Fan method), 82get_pod() (acitoolkit.aciphysobject.Fantray method),
88get_pod() (acitoolkit.aciphysobject.Linecard
method), 102get_pod() (acitoolkit.aciphysobject.Link method), 108get_pod() (acitoolkit.aciphysobject.Node method),
115get_pod() (acitoolkit.aciphysobject.Pod method), 126get_pod() (acitoolkit.aciphysobject.Powersupply
method), 132get_pod() (acitoolkit.aciphysobject.Process method),
138get_pod() (acitoolkit.aciphysobject.Supervisorcard
method), 144get_pod() (acitoolkit.aciphysobject.Systemcontroller
method), 151get_port1() (acitoolkit.aciphysobject.Link method),
108get_port2() (acitoolkit.aciphysobject.Link method),
108get_port_channel_selector_json() (aci-
toolkit.acibaseobject.BaseInterface method),60
get_port_channel_selector_json() (aci-toolkit.aciphysobject.Interface method), 94
get_port_channel_selector_json() (aci-toolkit.acitoolkit.PortChannel method), 387
get_port_id1() (acitoolkit.aciphysobject.Linkmethod), 108
get_port_id2() (acitoolkit.aciphysobject.Linkmethod), 108
get_port_selector_json() (aci-toolkit.acibaseobject.BaseInterface method),61
get_port_selector_json() (aci-toolkit.aciphysobject.Interface method),94
get_port_selector_json() (aci-toolkit.acitoolkit.PortChannel method), 387
get_role() (acitoolkit.aciphysobject.Node method),
Index 531
acitoolkit Documentation, Release 0.1
115get_router_id() (acitoolkit.acitoolkit.OSPFRouter
method), 338get_scope() (acitoolkit.acitoolkit.BaseContract
method), 184get_scope() (acitoolkit.acitoolkit.BaseSubnet
method), 190get_scope() (acitoolkit.acitoolkit.Contract method),
224get_scope() (acitoolkit.acitoolkit.OutsideNetwork
method), 376get_scope() (acitoolkit.acitoolkit.Subnet method),
399get_scope() (acitoolkit.acitoolkit.Taboo method),
405get_searchable() (acitoolkit.aciphysobject.Cluster
method), 65get_searchable() (aci-
toolkit.aciphysobject.ExternalSwitch method),71
get_searchable() (acitoolkit.aciphysobject.Fabricmethod), 76
get_searchable() (acitoolkit.aciphysobject.Fanmethod), 82
get_searchable() (aci-toolkit.aciphysobject.Fantray method), 88
get_searchable() (aci-toolkit.aciphysobject.Interface method),94
get_searchable() (aci-toolkit.aciphysobject.Linecard method),102
get_searchable() (acitoolkit.aciphysobject.Linkmethod), 108
get_searchable() (acitoolkit.aciphysobject.Nodemethod), 115
get_searchable() (aci-toolkit.aciphysobject.PhysicalModel method),120
get_searchable() (acitoolkit.aciphysobject.Podmethod), 126
get_searchable() (aci-toolkit.aciphysobject.Powersupply method),132
get_searchable() (aci-toolkit.aciphysobject.Process method), 138
get_searchable() (aci-toolkit.aciphysobject.Supervisorcard method),144
get_searchable() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151
get_searchable() (acitoolkit.acitoolkit.AnyEPGmethod), 161
get_searchable() (acitoolkit.acitoolkit.AppProfilemethod), 167
get_searchable() (aci-toolkit.acitoolkit.AttributeCriterion method),172
get_searchable() (aci-toolkit.acitoolkit.BaseContract method),184
get_searchable() (acitoolkit.acitoolkit.BaseSubnetmethod), 190
get_searchable() (aci-toolkit.acitoolkit.BaseTerminal method),196
get_searchable() (aci-toolkit.acitoolkit.BGPSession method), 178
get_searchable() (aci-toolkit.acitoolkit.BridgeDomain method),202
get_searchable() (aci-toolkit.acitoolkit.CommonEPG method),212
get_searchable() (acitoolkit.acitoolkit.Contextmethod), 218
get_searchable() (acitoolkit.acitoolkit.Contractmethod), 224
get_searchable() (aci-toolkit.acitoolkit.ContractInterface method),229
get_searchable() (aci-toolkit.acitoolkit.ContractSubject method),235
get_searchable() (acitoolkit.acitoolkit.Endpointmethod), 255
get_searchable() (acitoolkit.acitoolkit.EPGmethod), 243
get_searchable() (aci-toolkit.acitoolkit.EPGDomain method), 249
get_searchable() (aci-toolkit.acitoolkit.FexInterface method), 261
get_searchable() (acitoolkit.acitoolkit.Filtermethod), 266
get_searchable() (acitoolkit.acitoolkit.FilterEntrymethod), 272
get_searchable() (aci-toolkit.acitoolkit.InputTerminal method),283
get_searchable() (acitoolkit.acitoolkit.IPEndpointmethod), 278
get_searchable() (aci-toolkit.acitoolkit.L2ExtDomain method),289
get_searchable() (acitoolkit.acitoolkit.L2Interfacemethod), 295
get_searchable() (aci-
532 Index
acitoolkit Documentation, Release 0.1
toolkit.acitoolkit.L3ExtDomain method),300
get_searchable() (acitoolkit.acitoolkit.L3Interfacemethod), 306
get_searchable() (aci-toolkit.acitoolkit.LogicalModel method),312
get_searchable() (aci-toolkit.acitoolkit.NetworkPool method), 322
get_searchable() (aci-toolkit.acitoolkit.OSPFInterface method),327
get_searchable() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 333
get_searchable() (aci-toolkit.acitoolkit.OSPFRouter method), 338
get_searchable() (aci-toolkit.acitoolkit.OutputTerminal method),344
get_searchable() (aci-toolkit.acitoolkit.OutsideEPG method), 351
get_searchable() (acitoolkit.acitoolkit.OutsideL2method), 357
get_searchable() (aci-toolkit.acitoolkit.OutsideL2EPG method),364
get_searchable() (acitoolkit.acitoolkit.OutsideL3method), 370
get_searchable() (aci-toolkit.acitoolkit.OutsideNetwork method),376
get_searchable() (aci-toolkit.acitoolkit.PhysDomain method), 382
get_searchable() (aci-toolkit.acitoolkit.PortChannel method), 388
get_searchable() (acitoolkit.acitoolkit.Searchmethod), 393
get_searchable() (acitoolkit.acitoolkit.Subnetmethod), 399
get_searchable() (acitoolkit.acitoolkit.Taboomethod), 405
get_searchable() (acitoolkit.acitoolkit.Tagmethod), 410
get_searchable() (acitoolkit.acitoolkit.Tenantmethod), 416
get_searchable() (acitoolkit.acitoolkit.VMMmethod), 422
get_searchable() (aci-toolkit.acitoolkit.VMMCredentials method),428
get_searchable() (aci-toolkit.acitoolkit.VmmDomain method),433
get_serial() (aci-toolkit.acibaseobject.BaseACIPhysModulemethod), 59
get_serial() (aci-toolkit.acibaseobject.BaseACIPhysObjectmethod), 60
get_serial() (aci-toolkit.aciphysobject.ExternalSwitch method),71
get_serial() (acitoolkit.aciphysobject.Fan method),82
get_serial() (acitoolkit.aciphysobject.Fantraymethod), 88
get_serial() (acitoolkit.aciphysobject.Interfacestatic method), 95
get_serial() (acitoolkit.aciphysobject.Linecardmethod), 102
get_serial() (acitoolkit.aciphysobject.Linkmethod), 108
get_serial() (acitoolkit.aciphysobject.Nodemethod), 115
get_serial() (acitoolkit.aciphysobject.Pod method),126
get_serial() (acitoolkit.aciphysobject.Powersupplymethod), 132
get_serial() (acitoolkit.aciphysobject.Processmethod), 138
get_serial() (aci-toolkit.aciphysobject.Supervisorcard method),144
get_serial() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151
get_slot() (acitoolkit.acibaseobject.BaseACIPhysModulemethod), 59
get_slot() (acitoolkit.aciphysobject.Fan method), 82get_slot() (acitoolkit.aciphysobject.Fantray
method), 88get_slot() (acitoolkit.aciphysobject.Linecard
method), 102get_slot() (acitoolkit.aciphysobject.Powersupply
method), 132get_slot() (acitoolkit.aciphysobject.Supervisorcard
method), 144get_slot() (acitoolkit.aciphysobject.Systemcontroller
method), 151get_slot1() (acitoolkit.aciphysobject.Link method),
108get_slot2() (acitoolkit.aciphysobject.Link method),
108get_spines() (cableplan.CABLEPLAN method), 454get_subnets() (acitoolkit.acitoolkit.BridgeDomain
method), 202get_subtree() (aci-
Index 533
acitoolkit Documentation, Release 0.1
toolkit.aciphysobject.WorkingData method),154
get_switch() (cableplan.CABLEPLAN method), 454get_table() (acitoolkit.acibaseobject.BaseACIObject
static method), 56get_table() (acitoolkit.aciphysobject.Cluster static
method), 65get_table() (acitoolkit.aciphysobject.ExternalSwitch
static method), 71get_table() (acitoolkit.aciphysobject.Fabric static
method), 76get_table() (acitoolkit.aciphysobject.Fan static
method), 82get_table() (acitoolkit.aciphysobject.Fantray static
method), 88get_table() (acitoolkit.aciphysobject.Interface static
method), 95get_table() (acitoolkit.aciphysobject.Linecard static
method), 102get_table() (acitoolkit.aciphysobject.Link static
method), 109get_table() (acitoolkit.aciphysobject.Node static
method), 115get_table() (acitoolkit.aciphysobject.PhysicalModel
static method), 120get_table() (acitoolkit.aciphysobject.Pod static
method), 126get_table() (acitoolkit.aciphysobject.Powersupply
static method), 132get_table() (acitoolkit.aciphysobject.Process static
method), 138get_table() (acitoolkit.aciphysobject.Supervisorcard
static method), 145get_table() (acitoolkit.aciphysobject.Systemcontroller
static method), 151get_table() (acitoolkit.acitoolkit.AnyEPG static
method), 161get_table() (acitoolkit.acitoolkit.AppProfile static
method), 167get_table() (acitoolkit.acitoolkit.AttributeCriterion
static method), 172get_table() (acitoolkit.acitoolkit.BaseContract
static method), 184get_table() (acitoolkit.acitoolkit.BaseSubnet static
method), 190get_table() (acitoolkit.acitoolkit.BaseTerminal
static method), 196get_table() (acitoolkit.acitoolkit.BGPSession static
method), 178get_table() (acitoolkit.acitoolkit.BridgeDomain
static method), 202get_table() (acitoolkit.acitoolkit.CommonEPG
static method), 213get_table() (acitoolkit.acitoolkit.Context static
method), 218get_table() (acitoolkit.acitoolkit.Contract static
method), 224get_table() (acitoolkit.acitoolkit.ContractInterface
static method), 230get_table() (acitoolkit.acitoolkit.ContractSubject
static method), 235get_table() (acitoolkit.acitoolkit.Endpoint static
method), 255get_table() (acitoolkit.acitoolkit.EPG static
method), 243get_table() (acitoolkit.acitoolkit.EPGDomain static
method), 249get_table() (acitoolkit.acitoolkit.FexInterface static
method), 261get_table() (acitoolkit.acitoolkit.Filter static
method), 266get_table() (acitoolkit.acitoolkit.FilterEntry static
method), 272get_table() (acitoolkit.acitoolkit.InputTerminal
static method), 283get_table() (acitoolkit.acitoolkit.IPEndpoint static
method), 278get_table() (acitoolkit.acitoolkit.L2ExtDomain
static method), 289get_table() (acitoolkit.acitoolkit.L2Interface static
method), 295get_table() (acitoolkit.acitoolkit.L3ExtDomain
static method), 300get_table() (acitoolkit.acitoolkit.L3Interface static
method), 306get_table() (acitoolkit.acitoolkit.LogicalModel
static method), 312get_table() (acitoolkit.acitoolkit.NetworkPool static
method), 322get_table() (acitoolkit.acitoolkit.OSPFInterface
static method), 327get_table() (acitoolkit.acitoolkit.OSPFInterfacePolicy
static method), 333get_table() (acitoolkit.acitoolkit.OSPFRouter static
method), 338get_table() (acitoolkit.acitoolkit.OutputTerminal
static method), 344get_table() (acitoolkit.acitoolkit.OutsideEPG static
method), 351get_table() (acitoolkit.acitoolkit.OutsideL2 static
method), 357get_table() (acitoolkit.acitoolkit.OutsideL2EPG
static method), 364get_table() (acitoolkit.acitoolkit.OutsideL3 static
method), 370get_table() (acitoolkit.acitoolkit.OutsideNetwork
static method), 376get_table() (acitoolkit.acitoolkit.PhysDomain static
534 Index
acitoolkit Documentation, Release 0.1
method), 382get_table() (acitoolkit.acitoolkit.PortChannel static
method), 388get_table() (acitoolkit.acitoolkit.Search static
method), 393get_table() (acitoolkit.acitoolkit.Subnet static
method), 399get_table() (acitoolkit.acitoolkit.Taboo static
method), 405get_table() (acitoolkit.acitoolkit.Tag static method),
410get_table() (acitoolkit.acitoolkit.Tenant static
method), 416get_table() (acitoolkit.acitoolkit.VMM static
method), 422get_table() (acitoolkit.acitoolkit.VMMCredentials
static method), 428get_table() (acitoolkit.acitoolkit.VmmDomain static
method), 433get_tags() (acitoolkit.acibaseobject.BaseACIObject
method), 56get_tags() (acitoolkit.aciphysobject.Cluster
method), 65get_tags() (acitoolkit.aciphysobject.ExternalSwitch
method), 71get_tags() (acitoolkit.aciphysobject.Fabric method),
76get_tags() (acitoolkit.aciphysobject.Fan method), 82get_tags() (acitoolkit.aciphysobject.Fantray
method), 88get_tags() (acitoolkit.aciphysobject.Interface
method), 95get_tags() (acitoolkit.aciphysobject.Linecard
method), 102get_tags() (acitoolkit.aciphysobject.Link method),
109get_tags() (acitoolkit.aciphysobject.Node method),
115get_tags() (acitoolkit.aciphysobject.PhysicalModel
method), 120get_tags() (acitoolkit.aciphysobject.Pod method),
126get_tags() (acitoolkit.aciphysobject.Powersupply
method), 132get_tags() (acitoolkit.aciphysobject.Process
method), 138get_tags() (acitoolkit.aciphysobject.Supervisorcard
method), 145get_tags() (acitoolkit.aciphysobject.Systemcontroller
method), 151get_tags() (acitoolkit.acitoolkit.AnyEPG method),
161get_tags() (acitoolkit.acitoolkit.AppProfile method),
167
get_tags() (acitoolkit.acitoolkit.AttributeCriterionmethod), 173
get_tags() (acitoolkit.acitoolkit.BaseContractmethod), 184
get_tags() (acitoolkit.acitoolkit.BaseSubnetmethod), 191
get_tags() (acitoolkit.acitoolkit.BaseTerminalmethod), 196
get_tags() (acitoolkit.acitoolkit.BGPSessionmethod), 178
get_tags() (acitoolkit.acitoolkit.BridgeDomainmethod), 202
get_tags() (acitoolkit.acitoolkit.CommonEPGmethod), 213
get_tags() (acitoolkit.acitoolkit.Context method),218
get_tags() (acitoolkit.acitoolkit.Contract method),224
get_tags() (acitoolkit.acitoolkit.ContractInterfacemethod), 230
get_tags() (acitoolkit.acitoolkit.ContractSubjectmethod), 235
get_tags() (acitoolkit.acitoolkit.Endpoint method),255
get_tags() (acitoolkit.acitoolkit.EPG method), 243get_tags() (acitoolkit.acitoolkit.EPGDomain
method), 250get_tags() (acitoolkit.acitoolkit.FexInterface
method), 261get_tags() (acitoolkit.acitoolkit.Filter method), 266get_tags() (acitoolkit.acitoolkit.FilterEntry method),
272get_tags() (acitoolkit.acitoolkit.InputTerminal
method), 284get_tags() (acitoolkit.acitoolkit.IPEndpoint method),
278get_tags() (acitoolkit.acitoolkit.L2ExtDomain
method), 289get_tags() (acitoolkit.acitoolkit.L2Interface
method), 295get_tags() (acitoolkit.acitoolkit.L3ExtDomain
method), 300get_tags() (acitoolkit.acitoolkit.L3Interface
method), 306get_tags() (acitoolkit.acitoolkit.LogicalModel
method), 312get_tags() (acitoolkit.acitoolkit.NetworkPool
method), 322get_tags() (acitoolkit.acitoolkit.OSPFInterface
method), 327get_tags() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 333get_tags() (acitoolkit.acitoolkit.OSPFRouter
method), 339
Index 535
acitoolkit Documentation, Release 0.1
get_tags() (acitoolkit.acitoolkit.OutputTerminalmethod), 344
get_tags() (acitoolkit.acitoolkit.OutsideEPGmethod), 351
get_tags() (acitoolkit.acitoolkit.OutsideL2 method),357
get_tags() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 364
get_tags() (acitoolkit.acitoolkit.OutsideL3 method),370
get_tags() (acitoolkit.acitoolkit.OutsideNetworkmethod), 376
get_tags() (acitoolkit.acitoolkit.PhysDomainmethod), 382
get_tags() (acitoolkit.acitoolkit.PortChannelmethod), 388
get_tags() (acitoolkit.acitoolkit.Search method), 394get_tags() (acitoolkit.acitoolkit.Subnet method), 399get_tags() (acitoolkit.acitoolkit.Taboo method), 405get_tags() (acitoolkit.acitoolkit.Tag method), 411get_tags() (acitoolkit.acitoolkit.Tenant method), 416get_tags() (acitoolkit.acitoolkit.VMM method), 422get_tags() (acitoolkit.acitoolkit.VMMCredentials
method), 428get_tags() (acitoolkit.acitoolkit.VmmDomain
method), 433get_type() (acitoolkit.acibaseobject.BaseACIPhysObject
method), 60get_type() (acitoolkit.aciphysobject.ExternalSwitch
method), 71get_type() (acitoolkit.aciphysobject.Fan method), 82get_type() (acitoolkit.aciphysobject.Fantray
method), 89get_type() (acitoolkit.aciphysobject.Interface
method), 95get_type() (acitoolkit.aciphysobject.Linecard
method), 102get_type() (acitoolkit.aciphysobject.Link method),
109get_type() (acitoolkit.aciphysobject.Node method),
115get_type() (acitoolkit.aciphysobject.Pod method),
126get_type() (acitoolkit.aciphysobject.Powersupply
method), 133get_type() (acitoolkit.aciphysobject.Process
method), 138get_type() (acitoolkit.aciphysobject.Supervisorcard
method), 145get_type() (acitoolkit.aciphysobject.Systemcontroller
method), 151get_type() (cableplan.CpSwitch method), 453get_unicast_route() (aci-
toolkit.acitoolkit.BridgeDomain method),
202get_unknown_mac_unicast() (aci-
toolkit.acitoolkit.BridgeDomain method),203
get_unknown_multicast() (aci-toolkit.acitoolkit.BridgeDomain method),203
get_url() (acitoolkit.acibaseobject.BaseACIPhysObjectstatic method), 60
get_url() (acitoolkit.aciphysobject.ExternalSwitchstatic method), 71
get_url() (acitoolkit.aciphysobject.Fan staticmethod), 82
get_url() (acitoolkit.aciphysobject.Fantray staticmethod), 89
get_url() (acitoolkit.aciphysobject.Interface staticmethod), 95
get_url() (acitoolkit.aciphysobject.Linecard staticmethod), 102
get_url() (acitoolkit.aciphysobject.Link staticmethod), 109
get_url() (acitoolkit.aciphysobject.Node staticmethod), 115
get_url() (acitoolkit.aciphysobject.Pod staticmethod), 126
get_url() (acitoolkit.aciphysobject.Powersupplystatic method), 133
get_url() (acitoolkit.aciphysobject.Process staticmethod), 138
get_url() (acitoolkit.aciphysobject.Supervisorcardstatic method), 145
get_url() (acitoolkit.aciphysobject.Systemcontrollerstatic method), 151
get_url() (acitoolkit.acitoolkit.NetworkPool staticmethod), 322
get_url() (acitoolkit.acitoolkit.PhysDomain staticmethod), 382
get_url() (acitoolkit.acitoolkit.PortChannel staticmethod), 388
get_url() (acitoolkit.acitoolkit.Tenant static method),416
get_url() (acitoolkit.acitoolkit.VMM static method),422
getFabricSt() (acitoolkit.aciphysobject.Nodemethod), 113
getRole() (acitoolkit.aciphysobject.ExternalSwitchmethod), 69
granularityEnum (aci-toolkit.acitoolkit.CollectionPolicy attribute),207
Hhas_attachment() (aci-
toolkit.acibaseobject.BaseACIObject method),
536 Index
acitoolkit Documentation, Release 0.1
56has_attachment() (acitoolkit.aciphysobject.Cluster
method), 65has_attachment() (aci-
toolkit.aciphysobject.ExternalSwitch method),71
has_attachment() (acitoolkit.aciphysobject.Fabricmethod), 76
has_attachment() (acitoolkit.aciphysobject.Fanmethod), 83
has_attachment() (aci-toolkit.aciphysobject.Fantray method), 89
has_attachment() (aci-toolkit.aciphysobject.Interface method),95
has_attachment() (aci-toolkit.aciphysobject.Linecard method),102
has_attachment() (acitoolkit.aciphysobject.Linkmethod), 109
has_attachment() (acitoolkit.aciphysobject.Nodemethod), 115
has_attachment() (aci-toolkit.aciphysobject.PhysicalModel method),121
has_attachment() (acitoolkit.aciphysobject.Podmethod), 127
has_attachment() (aci-toolkit.aciphysobject.Powersupply method),133
has_attachment() (aci-toolkit.aciphysobject.Process method), 139
has_attachment() (aci-toolkit.aciphysobject.Supervisorcard method),145
has_attachment() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151
has_attachment() (acitoolkit.acitoolkit.AnyEPGmethod), 161
has_attachment() (acitoolkit.acitoolkit.AppProfilemethod), 167
has_attachment() (aci-toolkit.acitoolkit.AttributeCriterion method),173
has_attachment() (aci-toolkit.acitoolkit.BaseContract method),184
has_attachment() (acitoolkit.acitoolkit.BaseSubnetmethod), 191
has_attachment() (aci-toolkit.acitoolkit.BaseTerminal method),197
has_attachment() (aci-
toolkit.acitoolkit.BGPSession method), 178has_attachment() (aci-
toolkit.acitoolkit.BridgeDomain method),203
has_attachment() (aci-toolkit.acitoolkit.CommonEPG method),213
has_attachment() (acitoolkit.acitoolkit.Contextmethod), 218
has_attachment() (acitoolkit.acitoolkit.Contractmethod), 224
has_attachment() (aci-toolkit.acitoolkit.ContractInterface method),230
has_attachment() (aci-toolkit.acitoolkit.ContractSubject method),236
has_attachment() (acitoolkit.acitoolkit.Endpointmethod), 255
has_attachment() (acitoolkit.acitoolkit.EPGmethod), 243
has_attachment() (aci-toolkit.acitoolkit.EPGDomain method), 250
has_attachment() (aci-toolkit.acitoolkit.FexInterface method), 261
has_attachment() (acitoolkit.acitoolkit.Filtermethod), 266
has_attachment() (acitoolkit.acitoolkit.FilterEntrymethod), 272
has_attachment() (aci-toolkit.acitoolkit.InputTerminal method),284
has_attachment() (acitoolkit.acitoolkit.IPEndpointmethod), 278
has_attachment() (aci-toolkit.acitoolkit.L2ExtDomain method),289
has_attachment() (acitoolkit.acitoolkit.L2Interfacemethod), 295
has_attachment() (aci-toolkit.acitoolkit.L3ExtDomain method),300
has_attachment() (acitoolkit.acitoolkit.L3Interfacemethod), 306
has_attachment() (aci-toolkit.acitoolkit.LogicalModel method),312
has_attachment() (aci-toolkit.acitoolkit.NetworkPool method), 322
has_attachment() (aci-toolkit.acitoolkit.OSPFInterface method),327
has_attachment() (aci-toolkit.acitoolkit.OSPFInterfacePolicy
Index 537
acitoolkit Documentation, Release 0.1
method), 333has_attachment() (aci-
toolkit.acitoolkit.OSPFRouter method), 339has_attachment() (aci-
toolkit.acitoolkit.OutputTerminal method),344
has_attachment() (aci-toolkit.acitoolkit.OutsideEPG method), 351
has_attachment() (acitoolkit.acitoolkit.OutsideL2method), 357
has_attachment() (aci-toolkit.acitoolkit.OutsideL2EPG method),364
has_attachment() (acitoolkit.acitoolkit.OutsideL3method), 370
has_attachment() (aci-toolkit.acitoolkit.OutsideNetwork method),376
has_attachment() (aci-toolkit.acitoolkit.PhysDomain method), 382
has_attachment() (aci-toolkit.acitoolkit.PortChannel method), 388
has_attachment() (acitoolkit.acitoolkit.Searchmethod), 394
has_attachment() (acitoolkit.acitoolkit.Subnetmethod), 399
has_attachment() (acitoolkit.acitoolkit.Taboomethod), 405
has_attachment() (acitoolkit.acitoolkit.Tagmethod), 411
has_attachment() (acitoolkit.acitoolkit.Tenantmethod), 417
has_attachment() (acitoolkit.acitoolkit.VMMmethod), 422
has_attachment() (aci-toolkit.acitoolkit.VMMCredentials method),428
has_attachment() (aci-toolkit.acitoolkit.VmmDomain method),433
has_bd() (acitoolkit.acitoolkit.EPG method), 243has_bd() (acitoolkit.acitoolkit.OutsideL2 method),
357has_child() (acitoolkit.acibaseobject.BaseACIObject
method), 56has_child() (acitoolkit.aciphysobject.Cluster
method), 65has_child() (acitoolkit.aciphysobject.ExternalSwitch
method), 71has_child() (acitoolkit.aciphysobject.Fabric
method), 77has_child() (acitoolkit.aciphysobject.Fan method),
83has_child() (acitoolkit.aciphysobject.Fantray
method), 89has_child() (acitoolkit.aciphysobject.Interface
method), 95has_child() (acitoolkit.aciphysobject.Linecard
method), 102has_child() (acitoolkit.aciphysobject.Link method),
109has_child() (acitoolkit.aciphysobject.Node method),
115has_child() (acitoolkit.aciphysobject.PhysicalModel
method), 121has_child() (acitoolkit.aciphysobject.Pod method),
127has_child() (acitoolkit.aciphysobject.Powersupply
method), 133has_child() (acitoolkit.aciphysobject.Process
method), 139has_child() (acitoolkit.aciphysobject.Supervisorcard
method), 145has_child() (acitoolkit.aciphysobject.Systemcontroller
method), 151has_child() (acitoolkit.acitoolkit.AnyEPG method),
162has_child() (acitoolkit.acitoolkit.AppProfile
method), 167has_child() (acitoolkit.acitoolkit.AttributeCriterion
method), 173has_child() (acitoolkit.acitoolkit.BaseContract
method), 184has_child() (acitoolkit.acitoolkit.BaseSubnet
method), 191has_child() (acitoolkit.acitoolkit.BaseTerminal
method), 197has_child() (acitoolkit.acitoolkit.BGPSession
method), 178has_child() (acitoolkit.acitoolkit.BridgeDomain
method), 203has_child() (acitoolkit.acitoolkit.CommonEPG
method), 213has_child() (acitoolkit.acitoolkit.Context method),
218has_child() (acitoolkit.acitoolkit.Contract method),
224has_child() (acitoolkit.acitoolkit.ContractInterface
method), 230has_child() (acitoolkit.acitoolkit.ContractSubject
method), 236has_child() (acitoolkit.acitoolkit.Endpoint method),
255has_child() (acitoolkit.acitoolkit.EPG method), 243has_child() (acitoolkit.acitoolkit.EPGDomain
method), 250has_child() (acitoolkit.acitoolkit.FexInterface
method), 261
538 Index
acitoolkit Documentation, Release 0.1
has_child() (acitoolkit.acitoolkit.Filter method), 266has_child() (acitoolkit.acitoolkit.FilterEntry
method), 273has_child() (acitoolkit.acitoolkit.InputTerminal
method), 284has_child() (acitoolkit.acitoolkit.IPEndpoint
method), 278has_child() (acitoolkit.acitoolkit.L2ExtDomain
method), 289has_child() (acitoolkit.acitoolkit.L2Interface
method), 295has_child() (acitoolkit.acitoolkit.L3ExtDomain
method), 300has_child() (acitoolkit.acitoolkit.L3Interface
method), 306has_child() (acitoolkit.acitoolkit.LogicalModel
method), 312has_child() (acitoolkit.acitoolkit.NetworkPool
method), 322has_child() (acitoolkit.acitoolkit.OSPFInterface
method), 328has_child() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 333has_child() (acitoolkit.acitoolkit.OSPFRouter
method), 339has_child() (acitoolkit.acitoolkit.OutputTerminal
method), 344has_child() (acitoolkit.acitoolkit.OutsideEPG
method), 351has_child() (acitoolkit.acitoolkit.OutsideL2
method), 357has_child() (acitoolkit.acitoolkit.OutsideL2EPG
method), 364has_child() (acitoolkit.acitoolkit.OutsideL3
method), 370has_child() (acitoolkit.acitoolkit.OutsideNetwork
method), 376has_child() (acitoolkit.acitoolkit.PhysDomain
method), 382has_child() (acitoolkit.acitoolkit.PortChannel
method), 388has_child() (acitoolkit.acitoolkit.Search method),
394has_child() (acitoolkit.acitoolkit.Subnet method),
399has_child() (acitoolkit.acitoolkit.Taboo method),
405has_child() (acitoolkit.acitoolkit.Tag method), 411has_child() (acitoolkit.acitoolkit.Tenant method),
417has_child() (acitoolkit.acitoolkit.VMM method), 422has_child() (acitoolkit.acitoolkit.VMMCredentials
method), 428has_child() (acitoolkit.acitoolkit.VmmDomain
method), 433has_context() (acitoolkit.acitoolkit.BridgeDomain
method), 203has_context() (acitoolkit.acitoolkit.L3Interface
method), 306has_context() (acitoolkit.acitoolkit.OutsideL3
method), 370has_detachment() (aci-
toolkit.acibaseobject.BaseACIObject method),57
has_detachment() (acitoolkit.aciphysobject.Clustermethod), 65
has_detachment() (aci-toolkit.aciphysobject.ExternalSwitch method),71
has_detachment() (acitoolkit.aciphysobject.Fabricmethod), 77
has_detachment() (acitoolkit.aciphysobject.Fanmethod), 83
has_detachment() (aci-toolkit.aciphysobject.Fantray method), 89
has_detachment() (aci-toolkit.aciphysobject.Interface method),95
has_detachment() (aci-toolkit.aciphysobject.Linecard method),102
has_detachment() (acitoolkit.aciphysobject.Linkmethod), 109
has_detachment() (acitoolkit.aciphysobject.Nodemethod), 115
has_detachment() (aci-toolkit.aciphysobject.PhysicalModel method),121
has_detachment() (acitoolkit.aciphysobject.Podmethod), 127
has_detachment() (aci-toolkit.aciphysobject.Powersupply method),133
has_detachment() (aci-toolkit.aciphysobject.Process method), 139
has_detachment() (aci-toolkit.aciphysobject.Supervisorcard method),145
has_detachment() (aci-toolkit.aciphysobject.Systemcontrollermethod), 151
has_detachment() (acitoolkit.acitoolkit.AnyEPGmethod), 162
has_detachment() (acitoolkit.acitoolkit.AppProfilemethod), 167
has_detachment() (aci-toolkit.acitoolkit.AttributeCriterion method),173
Index 539
acitoolkit Documentation, Release 0.1
has_detachment() (aci-toolkit.acitoolkit.BaseContract method),184
has_detachment() (acitoolkit.acitoolkit.BaseSubnetmethod), 191
has_detachment() (aci-toolkit.acitoolkit.BaseTerminal method),197
has_detachment() (aci-toolkit.acitoolkit.BGPSession method), 178
has_detachment() (aci-toolkit.acitoolkit.BridgeDomain method),203
has_detachment() (aci-toolkit.acitoolkit.CommonEPG method),213
has_detachment() (acitoolkit.acitoolkit.Contextmethod), 219
has_detachment() (acitoolkit.acitoolkit.Contractmethod), 224
has_detachment() (aci-toolkit.acitoolkit.ContractInterface method),230
has_detachment() (aci-toolkit.acitoolkit.ContractSubject method),236
has_detachment() (acitoolkit.acitoolkit.Endpointmethod), 255
has_detachment() (acitoolkit.acitoolkit.EPGmethod), 244
has_detachment() (aci-toolkit.acitoolkit.EPGDomain method), 250
has_detachment() (aci-toolkit.acitoolkit.FexInterface method), 261
has_detachment() (acitoolkit.acitoolkit.Filtermethod), 267
has_detachment() (acitoolkit.acitoolkit.FilterEntrymethod), 273
has_detachment() (aci-toolkit.acitoolkit.InputTerminal method),284
has_detachment() (acitoolkit.acitoolkit.IPEndpointmethod), 278
has_detachment() (aci-toolkit.acitoolkit.L2ExtDomain method),289
has_detachment() (acitoolkit.acitoolkit.L2Interfacemethod), 295
has_detachment() (aci-toolkit.acitoolkit.L3ExtDomain method),301
has_detachment() (acitoolkit.acitoolkit.L3Interfacemethod), 306
has_detachment() (aci-
toolkit.acitoolkit.LogicalModel method),312
has_detachment() (aci-toolkit.acitoolkit.NetworkPool method), 322
has_detachment() (aci-toolkit.acitoolkit.OSPFInterface method),328
has_detachment() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 333
has_detachment() (aci-toolkit.acitoolkit.OSPFRouter method), 339
has_detachment() (aci-toolkit.acitoolkit.OutputTerminal method),344
has_detachment() (aci-toolkit.acitoolkit.OutsideEPG method), 352
has_detachment() (acitoolkit.acitoolkit.OutsideL2method), 357
has_detachment() (aci-toolkit.acitoolkit.OutsideL2EPG method),365
has_detachment() (acitoolkit.acitoolkit.OutsideL3method), 371
has_detachment() (aci-toolkit.acitoolkit.OutsideNetwork method),376
has_detachment() (aci-toolkit.acitoolkit.PhysDomain method), 382
has_detachment() (aci-toolkit.acitoolkit.PortChannel method), 388
has_detachment() (acitoolkit.acitoolkit.Searchmethod), 394
has_detachment() (acitoolkit.acitoolkit.Subnetmethod), 399
has_detachment() (acitoolkit.acitoolkit.Taboomethod), 405
has_detachment() (acitoolkit.acitoolkit.Tagmethod), 411
has_detachment() (acitoolkit.acitoolkit.Tenantmethod), 417
has_detachment() (acitoolkit.acitoolkit.VMMmethod), 423
has_detachment() (aci-toolkit.acitoolkit.VMMCredentials method),428
has_detachment() (aci-toolkit.acitoolkit.VmmDomain method),434
has_entry() (acitoolkit.acitoolkit.Filter method), 267has_events() (aci-
toolkit.acibaseobject.BaseACIObject classmethod), 57
has_events() (acitoolkit.aciphysobject.Cluster class
540 Index
acitoolkit Documentation, Release 0.1
method), 65has_events() (aci-
toolkit.aciphysobject.ExternalSwitch classmethod), 71
has_events() (acitoolkit.aciphysobject.Fabric classmethod), 77
has_events() (acitoolkit.aciphysobject.Fan classmethod), 83
has_events() (acitoolkit.aciphysobject.Fantray classmethod), 89
has_events() (acitoolkit.aciphysobject.Interfaceclass method), 95
has_events() (acitoolkit.aciphysobject.Linecardclass method), 102
has_events() (acitoolkit.aciphysobject.Link classmethod), 109
has_events() (acitoolkit.aciphysobject.Node classmethod), 116
has_events() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 121
has_events() (acitoolkit.aciphysobject.Pod classmethod), 127
has_events() (acitoolkit.aciphysobject.Powersupplyclass method), 133
has_events() (acitoolkit.aciphysobject.Process classmethod), 139
has_events() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 145
has_events() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 151
has_events() (acitoolkit.acisession.Session method),155
has_events() (acitoolkit.acitoolkit.AnyEPG classmethod), 162
has_events() (acitoolkit.acitoolkit.AppProfile classmethod), 167
has_events() (aci-toolkit.acitoolkit.AttributeCriterion classmethod), 173
has_events() (acitoolkit.acitoolkit.BaseContractclass method), 184
has_events() (acitoolkit.acitoolkit.BaseSubnet classmethod), 191
has_events() (acitoolkit.acitoolkit.BaseTerminalclass method), 197
has_events() (acitoolkit.acitoolkit.BGPSession classmethod), 179
has_events() (acitoolkit.acitoolkit.BridgeDomainclass method), 203
has_events() (acitoolkit.acitoolkit.CommonEPGclass method), 213
has_events() (acitoolkit.acitoolkit.Context classmethod), 219
has_events() (acitoolkit.acitoolkit.Contract classmethod), 224
has_events() (acitoolkit.acitoolkit.ContractInterfaceclass method), 230
has_events() (acitoolkit.acitoolkit.ContractSubjectclass method), 236
has_events() (acitoolkit.acitoolkit.Endpoint classmethod), 256
has_events() (acitoolkit.acitoolkit.EPG classmethod), 244
has_events() (acitoolkit.acitoolkit.EPGDomainclass method), 250
has_events() (acitoolkit.acitoolkit.FexInterface classmethod), 261
has_events() (acitoolkit.acitoolkit.Filter classmethod), 267
has_events() (acitoolkit.acitoolkit.FilterEntry classmethod), 273
has_events() (acitoolkit.acitoolkit.InputTerminalclass method), 284
has_events() (acitoolkit.acitoolkit.IPEndpoint classmethod), 278
has_events() (acitoolkit.acitoolkit.L2ExtDomainclass method), 289
has_events() (acitoolkit.acitoolkit.L2Interface classmethod), 295
has_events() (acitoolkit.acitoolkit.L3ExtDomainclass method), 301
has_events() (acitoolkit.acitoolkit.L3Interface classmethod), 307
has_events() (acitoolkit.acitoolkit.LogicalModelclass method), 312
has_events() (acitoolkit.acitoolkit.NetworkPoolclass method), 322
has_events() (acitoolkit.acitoolkit.OSPFInterfaceclass method), 328
has_events() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 333
has_events() (acitoolkit.acitoolkit.OSPFRouterclass method), 339
has_events() (acitoolkit.acitoolkit.OutputTerminalclass method), 345
has_events() (acitoolkit.acitoolkit.OutsideEPGclass method), 352
has_events() (acitoolkit.acitoolkit.OutsideL2 classmethod), 357
has_events() (acitoolkit.acitoolkit.OutsideL2EPGclass method), 365
has_events() (acitoolkit.acitoolkit.OutsideL3 classmethod), 371
has_events() (acitoolkit.acitoolkit.OutsideNetwork
Index 541
acitoolkit Documentation, Release 0.1
class method), 376has_events() (acitoolkit.acitoolkit.PhysDomain
class method), 382has_events() (acitoolkit.acitoolkit.PortChannel
class method), 388has_events() (acitoolkit.acitoolkit.Search class
method), 394has_events() (acitoolkit.acitoolkit.Subnet class
method), 400has_events() (acitoolkit.acitoolkit.Taboo class
method), 405has_events() (acitoolkit.acitoolkit.Tag class
method), 411has_events() (acitoolkit.acitoolkit.Tenant class
method), 417has_events() (acitoolkit.acitoolkit.VMM class
method), 423has_events() (acitoolkit.acitoolkit.VMMCredentials
class method), 428has_events() (acitoolkit.acitoolkit.VmmDomain
class method), 434has_faults() (acitoolkit.aciFaults.Faults class
method), 437has_import_contract() (aci-
toolkit.acitoolkit.ContractInterface method),230
has_l2extdom() (acitoolkit.acitoolkit.OutsideL2method), 358
has_l3extdom() (acitoolkit.acitoolkit.OutsideL3method), 371
has_l3out() (acitoolkit.acitoolkit.BridgeDomainmethod), 203
has_network() (acitoolkit.acitoolkit.PhysDomainmethod), 382
has_parent() (aci-toolkit.acibaseobject.BaseACIObject method),57
has_parent() (acitoolkit.aciphysobject.Clustermethod), 66
has_parent() (aci-toolkit.aciphysobject.ExternalSwitch method),72
has_parent() (acitoolkit.aciphysobject.Fabricmethod), 77
has_parent() (acitoolkit.aciphysobject.Fan method),83
has_parent() (acitoolkit.aciphysobject.Fantraymethod), 89
has_parent() (acitoolkit.aciphysobject.Interfacemethod), 95
has_parent() (acitoolkit.aciphysobject.Linecardmethod), 102
has_parent() (acitoolkit.aciphysobject.Linkmethod), 109
has_parent() (acitoolkit.aciphysobject.Nodemethod), 116
has_parent() (aci-toolkit.aciphysobject.PhysicalModel method),121
has_parent() (acitoolkit.aciphysobject.Pod method),127
has_parent() (acitoolkit.aciphysobject.Powersupplymethod), 133
has_parent() (acitoolkit.aciphysobject.Processmethod), 139
has_parent() (aci-toolkit.aciphysobject.Supervisorcard method),145
has_parent() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152
has_parent() (acitoolkit.acitoolkit.AnyEPGmethod), 162
has_parent() (acitoolkit.acitoolkit.AppProfilemethod), 167
has_parent() (aci-toolkit.acitoolkit.AttributeCriterion method),173
has_parent() (acitoolkit.acitoolkit.BaseContractmethod), 184
has_parent() (acitoolkit.acitoolkit.BaseSubnetmethod), 191
has_parent() (acitoolkit.acitoolkit.BaseTerminalmethod), 197
has_parent() (acitoolkit.acitoolkit.BGPSessionmethod), 179
has_parent() (acitoolkit.acitoolkit.BridgeDomainmethod), 203
has_parent() (acitoolkit.acitoolkit.CommonEPGmethod), 213
has_parent() (acitoolkit.acitoolkit.Context method),219
has_parent() (acitoolkit.acitoolkit.Contractmethod), 224
has_parent() (acitoolkit.acitoolkit.ContractInterfacemethod), 230
has_parent() (acitoolkit.acitoolkit.ContractSubjectmethod), 236
has_parent() (acitoolkit.acitoolkit.Endpointmethod), 256
has_parent() (acitoolkit.acitoolkit.EPG method),244
has_parent() (acitoolkit.acitoolkit.EPGDomainmethod), 250
has_parent() (acitoolkit.acitoolkit.FexInterfacemethod), 261
has_parent() (acitoolkit.acitoolkit.Filter method),267
542 Index
acitoolkit Documentation, Release 0.1
has_parent() (acitoolkit.acitoolkit.FilterEntrymethod), 273
has_parent() (acitoolkit.acitoolkit.InputTerminalmethod), 284
has_parent() (acitoolkit.acitoolkit.IPEndpointmethod), 278
has_parent() (acitoolkit.acitoolkit.L2ExtDomainmethod), 289
has_parent() (acitoolkit.acitoolkit.L2Interfacemethod), 295
has_parent() (acitoolkit.acitoolkit.L3ExtDomainmethod), 301
has_parent() (acitoolkit.acitoolkit.L3Interfacemethod), 307
has_parent() (acitoolkit.acitoolkit.LogicalModelmethod), 312
has_parent() (acitoolkit.acitoolkit.NetworkPoolmethod), 322
has_parent() (acitoolkit.acitoolkit.OSPFInterfacemethod), 328
has_parent() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 333
has_parent() (acitoolkit.acitoolkit.OSPFRoutermethod), 339
has_parent() (acitoolkit.acitoolkit.OutputTerminalmethod), 345
has_parent() (acitoolkit.acitoolkit.OutsideEPGmethod), 352
has_parent() (acitoolkit.acitoolkit.OutsideL2method), 358
has_parent() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365
has_parent() (acitoolkit.acitoolkit.OutsideL3method), 371
has_parent() (acitoolkit.acitoolkit.OutsideNetworkmethod), 376
has_parent() (acitoolkit.acitoolkit.PhysDomainmethod), 383
has_parent() (acitoolkit.acitoolkit.PortChannelmethod), 388
has_parent() (acitoolkit.acitoolkit.Search method),394
has_parent() (acitoolkit.acitoolkit.Subnet method),400
has_parent() (acitoolkit.acitoolkit.Taboo method),406
has_parent() (acitoolkit.acitoolkit.Tag method), 411has_parent() (acitoolkit.acitoolkit.Tenant method),
417has_parent() (acitoolkit.acitoolkit.VMM method),
423has_parent() (acitoolkit.acitoolkit.VMMCredentials
method), 428
has_parent() (acitoolkit.acitoolkit.VmmDomainmethod), 434
has_port_in_common() (cableplan.CpLinkmethod), 452
has_subnet() (acitoolkit.acitoolkit.BridgeDomainmethod), 203
has_tag() (acitoolkit.acibaseobject.BaseACIObjectmethod), 57
has_tag() (acitoolkit.aciphysobject.Cluster method),66
has_tag() (acitoolkit.aciphysobject.ExternalSwitchmethod), 72
has_tag() (acitoolkit.aciphysobject.Fabric method),77
has_tag() (acitoolkit.aciphysobject.Fan method), 83has_tag() (acitoolkit.aciphysobject.Fantray method),
89has_tag() (acitoolkit.aciphysobject.Interface
method), 95has_tag() (acitoolkit.aciphysobject.Linecard
method), 103has_tag() (acitoolkit.aciphysobject.Link method), 109has_tag() (acitoolkit.aciphysobject.Node method),
116has_tag() (acitoolkit.aciphysobject.PhysicalModel
method), 121has_tag() (acitoolkit.aciphysobject.Pod method), 127has_tag() (acitoolkit.aciphysobject.Powersupply
method), 133has_tag() (acitoolkit.aciphysobject.Process method),
139has_tag() (acitoolkit.aciphysobject.Supervisorcard
method), 145has_tag() (acitoolkit.aciphysobject.Systemcontroller
method), 152has_tag() (acitoolkit.acitoolkit.AnyEPG method), 162has_tag() (acitoolkit.acitoolkit.AppProfile method),
167has_tag() (acitoolkit.acitoolkit.AttributeCriterion
method), 173has_tag() (acitoolkit.acitoolkit.BaseContract
method), 184has_tag() (acitoolkit.acitoolkit.BaseSubnet method),
191has_tag() (acitoolkit.acitoolkit.BaseTerminal
method), 197has_tag() (acitoolkit.acitoolkit.BGPSession method),
179has_tag() (acitoolkit.acitoolkit.BridgeDomain
method), 203has_tag() (acitoolkit.acitoolkit.CommonEPG
method), 213has_tag() (acitoolkit.acitoolkit.Context method), 219has_tag() (acitoolkit.acitoolkit.Contract method), 225
Index 543
acitoolkit Documentation, Release 0.1
has_tag() (acitoolkit.acitoolkit.ContractInterfacemethod), 230
has_tag() (acitoolkit.acitoolkit.ContractSubjectmethod), 236
has_tag() (acitoolkit.acitoolkit.Endpoint method),256
has_tag() (acitoolkit.acitoolkit.EPG method), 244has_tag() (acitoolkit.acitoolkit.EPGDomain method),
250has_tag() (acitoolkit.acitoolkit.FexInterface method),
261has_tag() (acitoolkit.acitoolkit.Filter method), 267has_tag() (acitoolkit.acitoolkit.FilterEntry method),
273has_tag() (acitoolkit.acitoolkit.InputTerminal
method), 284has_tag() (acitoolkit.acitoolkit.IPEndpoint method),
278has_tag() (acitoolkit.acitoolkit.L2ExtDomain
method), 289has_tag() (acitoolkit.acitoolkit.L2Interface method),
295has_tag() (acitoolkit.acitoolkit.L3ExtDomain
method), 301has_tag() (acitoolkit.acitoolkit.L3Interface method),
307has_tag() (acitoolkit.acitoolkit.LogicalModel
method), 312has_tag() (acitoolkit.acitoolkit.NetworkPool method),
322has_tag() (acitoolkit.acitoolkit.OSPFInterface
method), 328has_tag() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 333has_tag() (acitoolkit.acitoolkit.OSPFRouter method),
339has_tag() (acitoolkit.acitoolkit.OutputTerminal
method), 345has_tag() (acitoolkit.acitoolkit.OutsideEPG method),
352has_tag() (acitoolkit.acitoolkit.OutsideL2 method),
358has_tag() (acitoolkit.acitoolkit.OutsideL2EPG
method), 365has_tag() (acitoolkit.acitoolkit.OutsideL3 method),
371has_tag() (acitoolkit.acitoolkit.OutsideNetwork
method), 377has_tag() (acitoolkit.acitoolkit.PhysDomain method),
383has_tag() (acitoolkit.acitoolkit.PortChannel method),
388has_tag() (acitoolkit.acitoolkit.Search method), 394has_tag() (acitoolkit.acitoolkit.Subnet method), 400
has_tag() (acitoolkit.acitoolkit.Taboo method), 406has_tag() (acitoolkit.acitoolkit.Tag method), 411has_tag() (acitoolkit.acitoolkit.Tenant method), 417has_tag() (acitoolkit.acitoolkit.VMM method), 423has_tag() (acitoolkit.acitoolkit.VMMCredentials
method), 428has_tag() (acitoolkit.acitoolkit.VmmDomain
method), 434has_tags() (acitoolkit.acibaseobject.BaseACIObject
method), 57has_tags() (acitoolkit.aciphysobject.Cluster
method), 66has_tags() (acitoolkit.aciphysobject.ExternalSwitch
method), 72has_tags() (acitoolkit.aciphysobject.Fabric method),
77has_tags() (acitoolkit.aciphysobject.Fan method), 83has_tags() (acitoolkit.aciphysobject.Fantray
method), 89has_tags() (acitoolkit.aciphysobject.Interface
method), 96has_tags() (acitoolkit.aciphysobject.Linecard
method), 103has_tags() (acitoolkit.aciphysobject.Link method),
109has_tags() (acitoolkit.aciphysobject.Node method),
116has_tags() (acitoolkit.aciphysobject.PhysicalModel
method), 121has_tags() (acitoolkit.aciphysobject.Pod method),
127has_tags() (acitoolkit.aciphysobject.Powersupply
method), 133has_tags() (acitoolkit.aciphysobject.Process
method), 139has_tags() (acitoolkit.aciphysobject.Supervisorcard
method), 145has_tags() (acitoolkit.aciphysobject.Systemcontroller
method), 152has_tags() (acitoolkit.acitoolkit.AnyEPG method),
162has_tags() (acitoolkit.acitoolkit.AppProfile method),
168has_tags() (acitoolkit.acitoolkit.AttributeCriterion
method), 173has_tags() (acitoolkit.acitoolkit.BaseContract
method), 184has_tags() (acitoolkit.acitoolkit.BaseSubnet
method), 191has_tags() (acitoolkit.acitoolkit.BaseTerminal
method), 197has_tags() (acitoolkit.acitoolkit.BGPSession
method), 179has_tags() (acitoolkit.acitoolkit.BridgeDomain
544 Index
acitoolkit Documentation, Release 0.1
method), 203has_tags() (acitoolkit.acitoolkit.CommonEPG
method), 213has_tags() (acitoolkit.acitoolkit.Context method),
219has_tags() (acitoolkit.acitoolkit.Contract method),
225has_tags() (acitoolkit.acitoolkit.ContractInterface
method), 230has_tags() (acitoolkit.acitoolkit.ContractSubject
method), 236has_tags() (acitoolkit.acitoolkit.Endpoint method),
256has_tags() (acitoolkit.acitoolkit.EPG method), 244has_tags() (acitoolkit.acitoolkit.EPGDomain
method), 250has_tags() (acitoolkit.acitoolkit.FexInterface
method), 261has_tags() (acitoolkit.acitoolkit.Filter method), 267has_tags() (acitoolkit.acitoolkit.FilterEntry method),
273has_tags() (acitoolkit.acitoolkit.InputTerminal
method), 284has_tags() (acitoolkit.acitoolkit.IPEndpoint method),
279has_tags() (acitoolkit.acitoolkit.L2ExtDomain
method), 290has_tags() (acitoolkit.acitoolkit.L2Interface
method), 295has_tags() (acitoolkit.acitoolkit.L3ExtDomain
method), 301has_tags() (acitoolkit.acitoolkit.L3Interface
method), 307has_tags() (acitoolkit.acitoolkit.LogicalModel
method), 313has_tags() (acitoolkit.acitoolkit.NetworkPool
method), 323has_tags() (acitoolkit.acitoolkit.OSPFInterface
method), 328has_tags() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 334has_tags() (acitoolkit.acitoolkit.OSPFRouter
method), 339has_tags() (acitoolkit.acitoolkit.OutputTerminal
method), 345has_tags() (acitoolkit.acitoolkit.OutsideEPG
method), 352has_tags() (acitoolkit.acitoolkit.OutsideL2 method),
358has_tags() (acitoolkit.acitoolkit.OutsideL2EPG
method), 365has_tags() (acitoolkit.acitoolkit.OutsideL3 method),
371has_tags() (acitoolkit.acitoolkit.OutsideNetwork
method), 377has_tags() (acitoolkit.acitoolkit.PhysDomain
method), 383has_tags() (acitoolkit.acitoolkit.PortChannel
method), 388has_tags() (acitoolkit.acitoolkit.Search method), 394has_tags() (acitoolkit.acitoolkit.Subnet method), 400has_tags() (acitoolkit.acitoolkit.Taboo method), 406has_tags() (acitoolkit.acitoolkit.Tag method), 411has_tags() (acitoolkit.acitoolkit.Tenant method), 417has_tags() (acitoolkit.acitoolkit.VMM method), 423has_tags() (acitoolkit.acitoolkit.VMMCredentials
method), 428has_tags() (acitoolkit.acitoolkit.VmmDomain
method), 434
Iimport_contract() (aci-
toolkit.acitoolkit.ContractInterface method),230
info() (acitoolkit.acibaseobject.BaseACIObjectmethod), 57
info() (acitoolkit.aciphysobject.Cluster method), 66info() (acitoolkit.aciphysobject.ExternalSwitch
method), 72info() (acitoolkit.aciphysobject.Fabric method), 77info() (acitoolkit.aciphysobject.Fan method), 83info() (acitoolkit.aciphysobject.Fantray method), 89info() (acitoolkit.aciphysobject.Interface method), 96info() (acitoolkit.aciphysobject.Linecard method), 103info() (acitoolkit.aciphysobject.Link method), 110info() (acitoolkit.aciphysobject.Node method), 116info() (acitoolkit.aciphysobject.PhysicalModel
method), 121info() (acitoolkit.aciphysobject.Pod method), 127info() (acitoolkit.aciphysobject.Powersupply method),
133info() (acitoolkit.aciphysobject.Process method), 139info() (acitoolkit.aciphysobject.Supervisorcard
method), 145info() (acitoolkit.aciphysobject.Systemcontroller
method), 152info() (acitoolkit.acitoolkit.AnyEPG method), 162info() (acitoolkit.acitoolkit.AppProfile method), 168info() (acitoolkit.acitoolkit.AttributeCriterion
method), 173info() (acitoolkit.acitoolkit.BaseContract method),
184info() (acitoolkit.acitoolkit.BaseSubnet method), 191info() (acitoolkit.acitoolkit.BaseTerminal method),
197info() (acitoolkit.acitoolkit.BGPSession method), 179info() (acitoolkit.acitoolkit.BridgeDomain method),
203
Index 545
acitoolkit Documentation, Release 0.1
info() (acitoolkit.acitoolkit.CommonEPG method),213
info() (acitoolkit.acitoolkit.Context method), 219info() (acitoolkit.acitoolkit.Contract method), 225info() (acitoolkit.acitoolkit.ContractInterface
method), 231info() (acitoolkit.acitoolkit.ContractSubject method),
236info() (acitoolkit.acitoolkit.Endpoint method), 256info() (acitoolkit.acitoolkit.EPG method), 244info() (acitoolkit.acitoolkit.EPGDomain method), 250info() (acitoolkit.acitoolkit.FexInterface method), 261info() (acitoolkit.acitoolkit.Filter method), 267info() (acitoolkit.acitoolkit.FilterEntry method), 273info() (acitoolkit.acitoolkit.InputTerminal method),
284info() (acitoolkit.acitoolkit.IPEndpoint method), 279info() (acitoolkit.acitoolkit.L2ExtDomain method),
290info() (acitoolkit.acitoolkit.L2Interface method), 295info() (acitoolkit.acitoolkit.L3ExtDomain method),
301info() (acitoolkit.acitoolkit.L3Interface method), 307info() (acitoolkit.acitoolkit.LogicalModel method),
313info() (acitoolkit.acitoolkit.NetworkPool method), 323info() (acitoolkit.acitoolkit.OSPFInterface method),
328info() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 334info() (acitoolkit.acitoolkit.OSPFRouter method), 339info() (acitoolkit.acitoolkit.OutputTerminal method),
345info() (acitoolkit.acitoolkit.OutsideEPG method), 352info() (acitoolkit.acitoolkit.OutsideL2 method), 358info() (acitoolkit.acitoolkit.OutsideL2EPG method),
365info() (acitoolkit.acitoolkit.OutsideL3 method), 371info() (acitoolkit.acitoolkit.OutsideNetwork method),
377info() (acitoolkit.acitoolkit.PhysDomain method), 383info() (acitoolkit.acitoolkit.PortChannel method), 389info() (acitoolkit.acitoolkit.Search method), 394info() (acitoolkit.acitoolkit.Subnet method), 400info() (acitoolkit.acitoolkit.Taboo method), 406info() (acitoolkit.acitoolkit.Tag method), 411info() (acitoolkit.acitoolkit.Tenant method), 417info() (acitoolkit.acitoolkit.VMM method), 423info() (acitoolkit.acitoolkit.VMMCredentials method),
428info() (acitoolkit.acitoolkit.VmmDomain method), 434infoList() (acitoolkit.acibaseobject.BaseACIObject
method), 57
infoList() (acitoolkit.aciphysobject.Clustermethod), 66
infoList() (acitoolkit.aciphysobject.ExternalSwitchmethod), 72
infoList() (acitoolkit.aciphysobject.Fabric method),77
infoList() (acitoolkit.aciphysobject.Fan method), 83infoList() (acitoolkit.aciphysobject.Fantray
method), 89infoList() (acitoolkit.aciphysobject.Interface
method), 96infoList() (acitoolkit.aciphysobject.Linecard
method), 103infoList() (acitoolkit.aciphysobject.Link method),
110infoList() (acitoolkit.aciphysobject.Node method),
116infoList() (acitoolkit.aciphysobject.PhysicalModel
method), 121infoList() (acitoolkit.aciphysobject.Pod method),
127infoList() (acitoolkit.aciphysobject.Powersupply
method), 133infoList() (acitoolkit.aciphysobject.Process
method), 139infoList() (acitoolkit.aciphysobject.Supervisorcard
method), 146infoList() (acitoolkit.aciphysobject.Systemcontroller
method), 152infoList() (acitoolkit.acitoolkit.AnyEPG method),
162infoList() (acitoolkit.acitoolkit.AppProfile method),
168infoList() (acitoolkit.acitoolkit.AttributeCriterion
method), 173infoList() (acitoolkit.acitoolkit.BaseContract
method), 185infoList() (acitoolkit.acitoolkit.BaseSubnet
method), 191infoList() (acitoolkit.acitoolkit.BaseTerminal
method), 197infoList() (acitoolkit.acitoolkit.BGPSession
method), 179infoList() (acitoolkit.acitoolkit.BridgeDomain
method), 204infoList() (acitoolkit.acitoolkit.CommonEPG
method), 213infoList() (acitoolkit.acitoolkit.Context method),
219infoList() (acitoolkit.acitoolkit.Contract method),
225infoList() (acitoolkit.acitoolkit.ContractInterface
method), 231infoList() (acitoolkit.acitoolkit.ContractSubject
546 Index
acitoolkit Documentation, Release 0.1
method), 236infoList() (acitoolkit.acitoolkit.Endpoint method),
256infoList() (acitoolkit.acitoolkit.EPG method), 244infoList() (acitoolkit.acitoolkit.EPGDomain
method), 250infoList() (acitoolkit.acitoolkit.FexInterface
method), 261infoList() (acitoolkit.acitoolkit.Filter method), 267infoList() (acitoolkit.acitoolkit.FilterEntry method),
273infoList() (acitoolkit.acitoolkit.InputTerminal
method), 284infoList() (acitoolkit.acitoolkit.IPEndpoint method),
279infoList() (acitoolkit.acitoolkit.L2ExtDomain
method), 290infoList() (acitoolkit.acitoolkit.L2Interface
method), 296infoList() (acitoolkit.acitoolkit.L3ExtDomain
method), 301infoList() (acitoolkit.acitoolkit.L3Interface
method), 307infoList() (acitoolkit.acitoolkit.LogicalModel
method), 313infoList() (acitoolkit.acitoolkit.NetworkPool
method), 323infoList() (acitoolkit.acitoolkit.OSPFInterface
method), 328infoList() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 334infoList() (acitoolkit.acitoolkit.OSPFRouter
method), 339infoList() (acitoolkit.acitoolkit.OutputTerminal
method), 345infoList() (acitoolkit.acitoolkit.OutsideEPG
method), 352infoList() (acitoolkit.acitoolkit.OutsideL2 method),
358infoList() (acitoolkit.acitoolkit.OutsideL2EPG
method), 365infoList() (acitoolkit.acitoolkit.OutsideL3 method),
371infoList() (acitoolkit.acitoolkit.OutsideNetwork
method), 377infoList() (acitoolkit.acitoolkit.PhysDomain
method), 383infoList() (acitoolkit.acitoolkit.PortChannel
method), 389infoList() (acitoolkit.acitoolkit.Search method), 394infoList() (acitoolkit.acitoolkit.Subnet method), 400infoList() (acitoolkit.acitoolkit.Taboo method), 406infoList() (acitoolkit.acitoolkit.Tag method), 411infoList() (acitoolkit.acitoolkit.Tenant method), 417
infoList() (acitoolkit.acitoolkit.VMM method), 423infoList() (acitoolkit.acitoolkit.VMMCredentials
method), 428infoList() (acitoolkit.acitoolkit.VmmDomain
method), 434InputTerminal (class in acitoolkit.acitoolkit), 280Interface (class in acitoolkit.aciphysobject), 91invoke_login_callbacks() (aci-
toolkit.acisession.Session method), 155ip (acitoolkit.acitoolkit.BaseSubnet attribute), 191ip (acitoolkit.acitoolkit.OutsideNetwork attribute), 377ip (acitoolkit.acitoolkit.Subnet attribute), 400IPEndpoint (class in acitoolkit.acitoolkit), 275is_arp_flood() (acitoolkit.acitoolkit.BridgeDomain
method), 204is_attached() (aci-
toolkit.acibaseobject.BaseACIObject method),57
is_attached() (aci-toolkit.acibaseobject.BaseRelation method),61
is_attached() (acitoolkit.aciphysobject.Clustermethod), 66
is_attached() (aci-toolkit.aciphysobject.ExternalSwitch method),72
is_attached() (acitoolkit.aciphysobject.Fabricmethod), 77
is_attached() (acitoolkit.aciphysobject.Fanmethod), 83
is_attached() (acitoolkit.aciphysobject.Fantraymethod), 89
is_attached() (acitoolkit.aciphysobject.Interfacemethod), 96
is_attached() (acitoolkit.aciphysobject.Linecardmethod), 103
is_attached() (acitoolkit.aciphysobject.Linkmethod), 110
is_attached() (acitoolkit.aciphysobject.Nodemethod), 116
is_attached() (aci-toolkit.aciphysobject.PhysicalModel method),121
is_attached() (acitoolkit.aciphysobject.Podmethod), 127
is_attached() (aci-toolkit.aciphysobject.Powersupply method),133
is_attached() (acitoolkit.aciphysobject.Processmethod), 139
is_attached() (aci-toolkit.aciphysobject.Supervisorcard method),146
is_attached() (aci-
Index 547
acitoolkit Documentation, Release 0.1
toolkit.aciphysobject.Systemcontrollermethod), 152
is_attached() (acitoolkit.acitoolkit.AnyEPGmethod), 162
is_attached() (acitoolkit.acitoolkit.AppProfilemethod), 168
is_attached() (aci-toolkit.acitoolkit.AttributeCriterion method),173
is_attached() (acitoolkit.acitoolkit.BaseContractmethod), 185
is_attached() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
is_attached() (acitoolkit.acitoolkit.BaseTerminalmethod), 197
is_attached() (acitoolkit.acitoolkit.BGPSessionmethod), 179
is_attached() (acitoolkit.acitoolkit.BridgeDomainmethod), 204
is_attached() (acitoolkit.acitoolkit.CommonEPGmethod), 214
is_attached() (acitoolkit.acitoolkit.Contextmethod), 219
is_attached() (acitoolkit.acitoolkit.Contractmethod), 225
is_attached() (aci-toolkit.acitoolkit.ContractInterface method),231
is_attached() (acitoolkit.acitoolkit.ContractSubjectmethod), 236
is_attached() (acitoolkit.acitoolkit.Endpointmethod), 256
is_attached() (acitoolkit.acitoolkit.EPG method),244
is_attached() (acitoolkit.acitoolkit.EPGDomainmethod), 250
is_attached() (acitoolkit.acitoolkit.FexInterfacemethod), 262
is_attached() (acitoolkit.acitoolkit.Filter method),267
is_attached() (acitoolkit.acitoolkit.FilterEntrymethod), 273
is_attached() (acitoolkit.acitoolkit.InputTerminalmethod), 284
is_attached() (acitoolkit.acitoolkit.IPEndpointmethod), 279
is_attached() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290
is_attached() (acitoolkit.acitoolkit.L2Interfacemethod), 296
is_attached() (acitoolkit.acitoolkit.L3ExtDomainmethod), 301
is_attached() (acitoolkit.acitoolkit.L3Interfacemethod), 307
is_attached() (acitoolkit.acitoolkit.LogicalModelmethod), 313
is_attached() (acitoolkit.acitoolkit.NetworkPoolmethod), 323
is_attached() (acitoolkit.acitoolkit.OSPFInterfacemethod), 328
is_attached() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
is_attached() (acitoolkit.acitoolkit.OSPFRoutermethod), 339
is_attached() (acitoolkit.acitoolkit.OutputTerminalmethod), 345
is_attached() (acitoolkit.acitoolkit.OutsideEPGmethod), 352
is_attached() (acitoolkit.acitoolkit.OutsideL2method), 358
is_attached() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365
is_attached() (acitoolkit.acitoolkit.OutsideL3method), 371
is_attached() (acitoolkit.acitoolkit.OutsideNetworkmethod), 377
is_attached() (acitoolkit.acitoolkit.PhysDomainmethod), 383
is_attached() (acitoolkit.acitoolkit.PortChannelmethod), 389
is_attached() (acitoolkit.acitoolkit.Search method),394
is_attached() (acitoolkit.acitoolkit.Subnet method),400
is_attached() (acitoolkit.acitoolkit.Taboo method),406
is_attached() (acitoolkit.acitoolkit.Tag method),411
is_attached() (acitoolkit.acitoolkit.Tenant method),417
is_attached() (acitoolkit.acitoolkit.VMM method),423
is_attached() (aci-toolkit.acitoolkit.VMMCredentials method),429
is_attached() (acitoolkit.acitoolkit.VmmDomainmethod), 434
is_attributed_based (acitoolkit.acitoolkit.EPGattribute), 244
is_bgp() (acitoolkit.acitoolkit.BGPSession staticmethod), 179
is_cdp_disabled() (aci-toolkit.aciphysobject.Interface method),96
is_cdp_enabled() (aci-toolkit.aciphysobject.Interface method),96
548 Index
acitoolkit Documentation, Release 0.1
is_connected() (cableplan.CpLink method), 452is_deleted() (aci-
toolkit.acibaseobject.BaseACIObject method),57
is_deleted() (acitoolkit.aciFaults.Faults method),437
is_deleted() (acitoolkit.aciphysobject.Clustermethod), 66
is_deleted() (aci-toolkit.aciphysobject.ExternalSwitch method),72
is_deleted() (acitoolkit.aciphysobject.Fabricmethod), 77
is_deleted() (acitoolkit.aciphysobject.Fan method),83
is_deleted() (acitoolkit.aciphysobject.Fantraymethod), 90
is_deleted() (acitoolkit.aciphysobject.Interfacemethod), 96
is_deleted() (acitoolkit.aciphysobject.Linecardmethod), 103
is_deleted() (acitoolkit.aciphysobject.Linkmethod), 110
is_deleted() (acitoolkit.aciphysobject.Nodemethod), 116
is_deleted() (aci-toolkit.aciphysobject.PhysicalModel method),121
is_deleted() (acitoolkit.aciphysobject.Pod method),127
is_deleted() (acitoolkit.aciphysobject.Powersupplymethod), 134
is_deleted() (acitoolkit.aciphysobject.Processmethod), 139
is_deleted() (aci-toolkit.aciphysobject.Supervisorcard method),146
is_deleted() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152
is_deleted() (acitoolkit.acitoolkit.AnyEPGmethod), 162
is_deleted() (acitoolkit.acitoolkit.AppProfilemethod), 168
is_deleted() (aci-toolkit.acitoolkit.AttributeCriterion method),174
is_deleted() (acitoolkit.acitoolkit.BaseContractmethod), 185
is_deleted() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
is_deleted() (acitoolkit.acitoolkit.BaseTerminalmethod), 197
is_deleted() (acitoolkit.acitoolkit.BGPSession
method), 179is_deleted() (acitoolkit.acitoolkit.BridgeDomain
method), 204is_deleted() (acitoolkit.acitoolkit.CommonEPG
method), 214is_deleted() (acitoolkit.acitoolkit.Context method),
219is_deleted() (acitoolkit.acitoolkit.Contract
method), 225is_deleted() (acitoolkit.acitoolkit.ContractInterface
method), 231is_deleted() (acitoolkit.acitoolkit.ContractSubject
method), 236is_deleted() (acitoolkit.acitoolkit.Endpoint
method), 256is_deleted() (acitoolkit.acitoolkit.EPG method),
244is_deleted() (acitoolkit.acitoolkit.EPGDomain
method), 250is_deleted() (acitoolkit.acitoolkit.FexInterface
method), 262is_deleted() (acitoolkit.acitoolkit.Filter method),
267is_deleted() (acitoolkit.acitoolkit.FilterEntry
method), 273is_deleted() (acitoolkit.acitoolkit.InputTerminal
method), 284is_deleted() (acitoolkit.acitoolkit.IPEndpoint
method), 279is_deleted() (acitoolkit.acitoolkit.L2ExtDomain
method), 290is_deleted() (acitoolkit.acitoolkit.L2Interface
method), 296is_deleted() (acitoolkit.acitoolkit.L3ExtDomain
method), 301is_deleted() (acitoolkit.acitoolkit.L3Interface
method), 307is_deleted() (acitoolkit.acitoolkit.LogicalModel
method), 313is_deleted() (acitoolkit.acitoolkit.NetworkPool
method), 323is_deleted() (acitoolkit.acitoolkit.OSPFInterface
method), 328is_deleted() (aci-
toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
is_deleted() (acitoolkit.acitoolkit.OSPFRoutermethod), 339
is_deleted() (acitoolkit.acitoolkit.OutputTerminalmethod), 345
is_deleted() (acitoolkit.acitoolkit.OutsideEPGmethod), 352
is_deleted() (acitoolkit.acitoolkit.OutsideL2method), 358
Index 549
acitoolkit Documentation, Release 0.1
is_deleted() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365
is_deleted() (acitoolkit.acitoolkit.OutsideL3method), 371
is_deleted() (acitoolkit.acitoolkit.OutsideNetworkmethod), 377
is_deleted() (acitoolkit.acitoolkit.PhysDomainmethod), 383
is_deleted() (acitoolkit.acitoolkit.PortChannelmethod), 389
is_deleted() (acitoolkit.acitoolkit.Search method),394
is_deleted() (acitoolkit.acitoolkit.Subnet method),400
is_deleted() (acitoolkit.acitoolkit.Taboo method),406
is_deleted() (acitoolkit.acitoolkit.Tag method), 412is_deleted() (acitoolkit.acitoolkit.Tenant method),
417is_deleted() (acitoolkit.acitoolkit.VMM method),
423is_deleted() (acitoolkit.acitoolkit.VMMCredentials
method), 429is_deleted() (acitoolkit.acitoolkit.VmmDomain
method), 434is_detached() (aci-
toolkit.acibaseobject.BaseACIObject method),57
is_detached() (aci-toolkit.acibaseobject.BaseRelation method),61
is_detached() (acitoolkit.aciphysobject.Clustermethod), 66
is_detached() (aci-toolkit.aciphysobject.ExternalSwitch method),72
is_detached() (acitoolkit.aciphysobject.Fabricmethod), 77
is_detached() (acitoolkit.aciphysobject.Fanmethod), 83
is_detached() (acitoolkit.aciphysobject.Fantraymethod), 90
is_detached() (acitoolkit.aciphysobject.Interfacemethod), 96
is_detached() (acitoolkit.aciphysobject.Linecardmethod), 103
is_detached() (acitoolkit.aciphysobject.Linkmethod), 110
is_detached() (acitoolkit.aciphysobject.Nodemethod), 116
is_detached() (aci-toolkit.aciphysobject.PhysicalModel method),121
is_detached() (acitoolkit.aciphysobject.Pod
method), 127is_detached() (aci-
toolkit.aciphysobject.Powersupply method),134
is_detached() (acitoolkit.aciphysobject.Processmethod), 139
is_detached() (aci-toolkit.aciphysobject.Supervisorcard method),146
is_detached() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152
is_detached() (acitoolkit.acitoolkit.AnyEPGmethod), 162
is_detached() (acitoolkit.acitoolkit.AppProfilemethod), 168
is_detached() (aci-toolkit.acitoolkit.AttributeCriterion method),174
is_detached() (acitoolkit.acitoolkit.BaseContractmethod), 185
is_detached() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
is_detached() (acitoolkit.acitoolkit.BaseTerminalmethod), 197
is_detached() (acitoolkit.acitoolkit.BGPSessionmethod), 179
is_detached() (acitoolkit.acitoolkit.BridgeDomainmethod), 204
is_detached() (acitoolkit.acitoolkit.CommonEPGmethod), 214
is_detached() (acitoolkit.acitoolkit.Contextmethod), 219
is_detached() (acitoolkit.acitoolkit.Contractmethod), 225
is_detached() (aci-toolkit.acitoolkit.ContractInterface method),231
is_detached() (acitoolkit.acitoolkit.ContractSubjectmethod), 236
is_detached() (acitoolkit.acitoolkit.Endpointmethod), 256
is_detached() (acitoolkit.acitoolkit.EPG method),244
is_detached() (acitoolkit.acitoolkit.EPGDomainmethod), 250
is_detached() (acitoolkit.acitoolkit.FexInterfacemethod), 262
is_detached() (acitoolkit.acitoolkit.Filter method),267
is_detached() (acitoolkit.acitoolkit.FilterEntrymethod), 273
is_detached() (acitoolkit.acitoolkit.InputTerminalmethod), 284
550 Index
acitoolkit Documentation, Release 0.1
is_detached() (acitoolkit.acitoolkit.IPEndpointmethod), 279
is_detached() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290
is_detached() (acitoolkit.acitoolkit.L2Interfacemethod), 296
is_detached() (acitoolkit.acitoolkit.L3ExtDomainmethod), 301
is_detached() (acitoolkit.acitoolkit.L3Interfacemethod), 307
is_detached() (acitoolkit.acitoolkit.LogicalModelmethod), 313
is_detached() (acitoolkit.acitoolkit.NetworkPoolmethod), 323
is_detached() (acitoolkit.acitoolkit.OSPFInterfacemethod), 328
is_detached() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
is_detached() (acitoolkit.acitoolkit.OSPFRoutermethod), 339
is_detached() (acitoolkit.acitoolkit.OutputTerminalmethod), 345
is_detached() (acitoolkit.acitoolkit.OutsideEPGmethod), 352
is_detached() (acitoolkit.acitoolkit.OutsideL2method), 358
is_detached() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 365
is_detached() (acitoolkit.acitoolkit.OutsideL3method), 371
is_detached() (acitoolkit.acitoolkit.OutsideNetworkmethod), 377
is_detached() (acitoolkit.acitoolkit.PhysDomainmethod), 383
is_detached() (acitoolkit.acitoolkit.PortChannelmethod), 389
is_detached() (acitoolkit.acitoolkit.Search method),394
is_detached() (acitoolkit.acitoolkit.Subnet method),400
is_detached() (acitoolkit.acitoolkit.Taboo method),406
is_detached() (acitoolkit.acitoolkit.Tag method),412
is_detached() (acitoolkit.acitoolkit.Tenant method),417
is_detached() (acitoolkit.acitoolkit.VMM method),423
is_detached() (aci-toolkit.acitoolkit.VMMCredentials method),429
is_detached() (acitoolkit.acitoolkit.VmmDomainmethod), 434
is_dn_a_fex_interface() (aci-toolkit.acitoolkit.FexInterface class method),262
is_dn_vpc() (acitoolkit.acibaseobject.BaseInterfacestatic method), 61
is_dn_vpc() (acitoolkit.aciphysobject.Interface staticmethod), 96
is_dn_vpc() (acitoolkit.acitoolkit.PortChannel staticmethod), 389
is_interface() (aci-toolkit.acibaseobject.BaseACIObject staticmethod), 57
is_interface() (acitoolkit.aciphysobject.Clusterstatic method), 66
is_interface() (aci-toolkit.aciphysobject.ExternalSwitch staticmethod), 72
is_interface() (acitoolkit.aciphysobject.Fabricstatic method), 77
is_interface() (acitoolkit.aciphysobject.Fan staticmethod), 84
is_interface() (acitoolkit.aciphysobject.Fantraystatic method), 90
is_interface() (acitoolkit.aciphysobject.Interfacemethod), 96
is_interface() (acitoolkit.aciphysobject.Linecardstatic method), 103
is_interface() (acitoolkit.aciphysobject.Link staticmethod), 110
is_interface() (acitoolkit.aciphysobject.Nodestatic method), 116
is_interface() (aci-toolkit.aciphysobject.PhysicalModel staticmethod), 121
is_interface() (acitoolkit.aciphysobject.Pod staticmethod), 128
is_interface() (aci-toolkit.aciphysobject.Powersupply staticmethod), 134
is_interface() (acitoolkit.aciphysobject.Processstatic method), 140
is_interface() (aci-toolkit.aciphysobject.Supervisorcard staticmethod), 146
is_interface() (aci-toolkit.aciphysobject.Systemcontroller staticmethod), 152
is_interface() (acitoolkit.acitoolkit.AnyEPG staticmethod), 162
is_interface() (acitoolkit.acitoolkit.AppProfilestatic method), 168
is_interface() (aci-toolkit.acitoolkit.AttributeCriterion staticmethod), 174
Index 551
acitoolkit Documentation, Release 0.1
is_interface() (acitoolkit.acitoolkit.BaseContractstatic method), 185
is_interface() (acitoolkit.acitoolkit.BaseSubnetstatic method), 192
is_interface() (acitoolkit.acitoolkit.BaseTerminalstatic method), 197
is_interface() (acitoolkit.acitoolkit.BGPSessionmethod), 179
is_interface() (acitoolkit.acitoolkit.BridgeDomainstatic method), 204
is_interface() (acitoolkit.acitoolkit.CommonEPGstatic method), 214
is_interface() (acitoolkit.acitoolkit.Context staticmethod), 219
is_interface() (acitoolkit.acitoolkit.Contract staticmethod), 225
is_interface() (aci-toolkit.acitoolkit.ContractInterface staticmethod), 231
is_interface() (aci-toolkit.acitoolkit.ContractSubject staticmethod), 236
is_interface() (acitoolkit.acitoolkit.Endpointstatic method), 256
is_interface() (acitoolkit.acitoolkit.EPG staticmethod), 244
is_interface() (acitoolkit.acitoolkit.EPGDomainstatic method), 251
is_interface() (acitoolkit.acitoolkit.FexInterfacestatic method), 262
is_interface() (acitoolkit.acitoolkit.Filter staticmethod), 267
is_interface() (acitoolkit.acitoolkit.FilterEntrystatic method), 273
is_interface() (acitoolkit.acitoolkit.InputTerminalstatic method), 285
is_interface() (acitoolkit.acitoolkit.IPEndpointstatic method), 279
is_interface() (acitoolkit.acitoolkit.L2ExtDomainstatic method), 290
is_interface() (acitoolkit.acitoolkit.L2Interfacemethod), 296
is_interface() (acitoolkit.acitoolkit.L3ExtDomainstatic method), 301
is_interface() (acitoolkit.acitoolkit.L3Interfacemethod), 307
is_interface() (acitoolkit.acitoolkit.LogicalModelstatic method), 313
is_interface() (acitoolkit.acitoolkit.NetworkPoolstatic method), 323
is_interface() (aci-toolkit.acitoolkit.OSPFInterface method),328
is_interface() (aci-
toolkit.acitoolkit.OSPFInterfacePolicy staticmethod), 334
is_interface() (acitoolkit.acitoolkit.OSPFRouterstatic method), 340
is_interface() (aci-toolkit.acitoolkit.OutputTerminal staticmethod), 345
is_interface() (acitoolkit.acitoolkit.OutsideEPGstatic method), 352
is_interface() (acitoolkit.acitoolkit.OutsideL2static method), 358
is_interface() (aci-toolkit.acitoolkit.OutsideL2EPG staticmethod), 365
is_interface() (acitoolkit.acitoolkit.OutsideL3static method), 371
is_interface() (aci-toolkit.acitoolkit.OutsideNetwork staticmethod), 377
is_interface() (acitoolkit.acitoolkit.PhysDomainstatic method), 383
is_interface() (acitoolkit.acitoolkit.PortChannelmethod), 389
is_interface() (acitoolkit.acitoolkit.Search staticmethod), 395
is_interface() (acitoolkit.acitoolkit.Subnet staticmethod), 400
is_interface() (acitoolkit.acitoolkit.Taboo staticmethod), 406
is_interface() (acitoolkit.acitoolkit.Tag staticmethod), 412
is_interface() (acitoolkit.acitoolkit.Tenant staticmethod), 417
is_interface() (acitoolkit.acitoolkit.VMM staticmethod), 423
is_interface() (aci-toolkit.acitoolkit.VMMCredentials staticmethod), 429
is_interface() (acitoolkit.acitoolkit.VmmDomainstatic method), 434
is_lldp_disabled() (aci-toolkit.aciphysobject.Interface method),96
is_lldp_enabled() (aci-toolkit.aciphysobject.Interface method),96
is_ospf() (acitoolkit.acitoolkit.OSPFInterface staticmethod), 328
is_spine() (cableplan.CpSwitch method), 453is_subscribed() (acitoolkit.acisession.Session
method), 156is_unicast_route() (aci-
toolkit.acitoolkit.BridgeDomain method),204
552 Index
acitoolkit Documentation, Release 0.1
is_vpc() (acitoolkit.acitoolkit.PortChannel method),389
isModified() (aci-toolkit.acitoolkit.BaseMonitorClass method),187
isModified() (acitoolkit.acitoolkit.CollectionPolicymethod), 207
isModified() (acitoolkit.acitoolkit.MonitorPolicymethod), 316
isModified() (acitoolkit.acitoolkit.MonitorStatsmethod), 317
isModified() (acitoolkit.acitoolkit.MonitorTargetmethod), 318
LL2ExtDomain (class in acitoolkit.acitoolkit), 286L2Interface (class in acitoolkit.acitoolkit), 291L3ExtDomain (class in acitoolkit.acitoolkit), 297L3Interface (class in acitoolkit.acitoolkit), 303Linecard (class in acitoolkit.aciphysobject), 98Link (class in acitoolkit.aciphysobject), 104list() (cableplan.CpPort method), 451logged_in() (acitoolkit.acisession.Session method),
156LogicalModel (class in acitoolkit.acitoolkit), 309login() (acitoolkit.acisession.Session method), 156
Mmark_as_deleted() (aci-
toolkit.acibaseobject.BaseACIObject method),57
mark_as_deleted() (acitoolkit.aciFaults.Faultsmethod), 437
mark_as_deleted() (aci-toolkit.aciphysobject.Cluster method), 66
mark_as_deleted() (aci-toolkit.aciphysobject.ExternalSwitch method),72
mark_as_deleted() (aci-toolkit.aciphysobject.Fabric method), 78
mark_as_deleted() (acitoolkit.aciphysobject.Fanmethod), 84
mark_as_deleted() (aci-toolkit.aciphysobject.Fantray method), 90
mark_as_deleted() (aci-toolkit.aciphysobject.Interface method),96
mark_as_deleted() (aci-toolkit.aciphysobject.Linecard method),103
mark_as_deleted() (acitoolkit.aciphysobject.Linkmethod), 110
mark_as_deleted() (acitoolkit.aciphysobject.Nodemethod), 116
mark_as_deleted() (aci-toolkit.aciphysobject.PhysicalModel method),122
mark_as_deleted() (acitoolkit.aciphysobject.Podmethod), 128
mark_as_deleted() (aci-toolkit.aciphysobject.Powersupply method),134
mark_as_deleted() (aci-toolkit.aciphysobject.Process method), 140
mark_as_deleted() (aci-toolkit.aciphysobject.Supervisorcard method),146
mark_as_deleted() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152
mark_as_deleted() (acitoolkit.acitoolkit.AnyEPGmethod), 163
mark_as_deleted() (aci-toolkit.acitoolkit.AppProfile method), 168
mark_as_deleted() (aci-toolkit.acitoolkit.AttributeCriterion method),174
mark_as_deleted() (aci-toolkit.acitoolkit.BaseContract method),185
mark_as_deleted() (aci-toolkit.acitoolkit.BaseSubnet method), 192
mark_as_deleted() (aci-toolkit.acitoolkit.BaseTerminal method),198
mark_as_deleted() (aci-toolkit.acitoolkit.BGPSession method), 179
mark_as_deleted() (aci-toolkit.acitoolkit.BridgeDomain method),204
mark_as_deleted() (aci-toolkit.acitoolkit.CommonEPG method),214
mark_as_deleted() (acitoolkit.acitoolkit.Contextmethod), 219
mark_as_deleted() (acitoolkit.acitoolkit.Contractmethod), 225
mark_as_deleted() (aci-toolkit.acitoolkit.ContractInterface method),231
mark_as_deleted() (aci-toolkit.acitoolkit.ContractSubject method),237
mark_as_deleted() (acitoolkit.acitoolkit.Endpointmethod), 256
mark_as_deleted() (acitoolkit.acitoolkit.EPGmethod), 244
mark_as_deleted() (aci-
Index 553
acitoolkit Documentation, Release 0.1
toolkit.acitoolkit.EPGDomain method), 251mark_as_deleted() (aci-
toolkit.acitoolkit.FexInterface method), 262mark_as_deleted() (acitoolkit.acitoolkit.Filter
method), 267mark_as_deleted() (aci-
toolkit.acitoolkit.FilterEntry method), 274mark_as_deleted() (aci-
toolkit.acitoolkit.InputTerminal method),285
mark_as_deleted() (aci-toolkit.acitoolkit.IPEndpoint method), 279
mark_as_deleted() (aci-toolkit.acitoolkit.L2ExtDomain method),290
mark_as_deleted() (aci-toolkit.acitoolkit.L2Interface method), 296
mark_as_deleted() (aci-toolkit.acitoolkit.L3ExtDomain method),301
mark_as_deleted() (aci-toolkit.acitoolkit.L3Interface method), 307
mark_as_deleted() (aci-toolkit.acitoolkit.LogicalModel method),313
mark_as_deleted() (aci-toolkit.acitoolkit.NetworkPool method), 323
mark_as_deleted() (aci-toolkit.acitoolkit.OSPFInterface method),329
mark_as_deleted() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
mark_as_deleted() (aci-toolkit.acitoolkit.OSPFRouter method), 340
mark_as_deleted() (aci-toolkit.acitoolkit.OutputTerminal method),345
mark_as_deleted() (aci-toolkit.acitoolkit.OutsideEPG method), 352
mark_as_deleted() (acitoolkit.acitoolkit.OutsideL2method), 358
mark_as_deleted() (aci-toolkit.acitoolkit.OutsideL2EPG method),365
mark_as_deleted() (acitoolkit.acitoolkit.OutsideL3method), 371
mark_as_deleted() (aci-toolkit.acitoolkit.OutsideNetwork method),377
mark_as_deleted() (aci-toolkit.acitoolkit.PhysDomain method), 383
mark_as_deleted() (aci-toolkit.acitoolkit.PortChannel method), 389
mark_as_deleted() (acitoolkit.acitoolkit.Searchmethod), 395
mark_as_deleted() (acitoolkit.acitoolkit.Subnetmethod), 400
mark_as_deleted() (acitoolkit.acitoolkit.Taboomethod), 406
mark_as_deleted() (acitoolkit.acitoolkit.Tagmethod), 412
mark_as_deleted() (acitoolkit.acitoolkit.Tenantmethod), 418
mark_as_deleted() (acitoolkit.acitoolkit.VMMmethod), 423
mark_as_deleted() (aci-toolkit.acitoolkit.VMMCredentials method),429
mark_as_deleted() (aci-toolkit.acitoolkit.VmmDomain method),434
mask_class_from_graphs() (aci-toolkit.acibaseobject.BaseACIObject classmethod), 57
mask_class_from_graphs() (aci-toolkit.aciphysobject.Cluster class method),66
mask_class_from_graphs() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 72
mask_class_from_graphs() (aci-toolkit.aciphysobject.Fabric class method),78
mask_class_from_graphs() (aci-toolkit.aciphysobject.Fan class method),84
mask_class_from_graphs() (aci-toolkit.aciphysobject.Fantray class method),90
mask_class_from_graphs() (aci-toolkit.aciphysobject.Interface class method),96
mask_class_from_graphs() (aci-toolkit.aciphysobject.Linecard class method),103
mask_class_from_graphs() (aci-toolkit.aciphysobject.Link class method),110
mask_class_from_graphs() (aci-toolkit.aciphysobject.Node class method),116
mask_class_from_graphs() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 122
mask_class_from_graphs() (aci-toolkit.aciphysobject.Pod class method),128
554 Index
acitoolkit Documentation, Release 0.1
mask_class_from_graphs() (aci-toolkit.aciphysobject.Powersupply classmethod), 134
mask_class_from_graphs() (aci-toolkit.aciphysobject.Process class method),140
mask_class_from_graphs() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 146
mask_class_from_graphs() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 152
mask_class_from_graphs() (aci-toolkit.acitoolkit.AnyEPG class method),163
mask_class_from_graphs() (aci-toolkit.acitoolkit.AppProfile class method),168
mask_class_from_graphs() (aci-toolkit.acitoolkit.AttributeCriterion classmethod), 174
mask_class_from_graphs() (aci-toolkit.acitoolkit.BaseContract class method),185
mask_class_from_graphs() (aci-toolkit.acitoolkit.BaseSubnet class method),192
mask_class_from_graphs() (aci-toolkit.acitoolkit.BaseTerminal class method),198
mask_class_from_graphs() (aci-toolkit.acitoolkit.BGPSession class method),179
mask_class_from_graphs() (aci-toolkit.acitoolkit.BridgeDomain class method),204
mask_class_from_graphs() (aci-toolkit.acitoolkit.CommonEPG class method),214
mask_class_from_graphs() (aci-toolkit.acitoolkit.Context class method),219
mask_class_from_graphs() (aci-toolkit.acitoolkit.Contract class method),225
mask_class_from_graphs() (aci-toolkit.acitoolkit.ContractInterface classmethod), 231
mask_class_from_graphs() (aci-toolkit.acitoolkit.ContractSubject classmethod), 237
mask_class_from_graphs() (aci-toolkit.acitoolkit.Endpoint class method),256
mask_class_from_graphs() (aci-toolkit.acitoolkit.EPG class method), 244
mask_class_from_graphs() (aci-toolkit.acitoolkit.EPGDomain class method),251
mask_class_from_graphs() (aci-toolkit.acitoolkit.FexInterface class method),262
mask_class_from_graphs() (aci-toolkit.acitoolkit.Filter class method), 268
mask_class_from_graphs() (aci-toolkit.acitoolkit.FilterEntry class method),274
mask_class_from_graphs() (aci-toolkit.acitoolkit.InputTerminal class method),285
mask_class_from_graphs() (aci-toolkit.acitoolkit.IPEndpoint class method),279
mask_class_from_graphs() (aci-toolkit.acitoolkit.L2ExtDomain class method),290
mask_class_from_graphs() (aci-toolkit.acitoolkit.L2Interface class method),296
mask_class_from_graphs() (aci-toolkit.acitoolkit.L3ExtDomain class method),301
mask_class_from_graphs() (aci-toolkit.acitoolkit.L3Interface class method),307
mask_class_from_graphs() (aci-toolkit.acitoolkit.LogicalModel class method),313
mask_class_from_graphs() (aci-toolkit.acitoolkit.NetworkPool class method),323
mask_class_from_graphs() (aci-toolkit.acitoolkit.OSPFInterface class method),329
mask_class_from_graphs() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 334
mask_class_from_graphs() (aci-toolkit.acitoolkit.OSPFRouter class method),340
mask_class_from_graphs() (aci-toolkit.acitoolkit.OutputTerminal classmethod), 345
mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideEPG class method),352
mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideL2 class method),
Index 555
acitoolkit Documentation, Release 0.1
358mask_class_from_graphs() (aci-
toolkit.acitoolkit.OutsideL2EPG class method),365
mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideL3 class method),371
mask_class_from_graphs() (aci-toolkit.acitoolkit.OutsideNetwork classmethod), 377
mask_class_from_graphs() (aci-toolkit.acitoolkit.PhysDomain class method),383
mask_class_from_graphs() (aci-toolkit.acitoolkit.PortChannel class method),389
mask_class_from_graphs() (aci-toolkit.acitoolkit.Search class method), 395
mask_class_from_graphs() (aci-toolkit.acitoolkit.Subnet class method), 400
mask_class_from_graphs() (aci-toolkit.acitoolkit.Taboo class method), 406
mask_class_from_graphs() (aci-toolkit.acitoolkit.Tag class method), 412
mask_class_from_graphs() (aci-toolkit.acitoolkit.Tenant class method), 418
mask_class_from_graphs() (aci-toolkit.acitoolkit.VMM class method), 423
mask_class_from_graphs() (aci-toolkit.acitoolkit.VMMCredentials classmethod), 429
mask_class_from_graphs() (aci-toolkit.acitoolkit.VmmDomain class method),434
match (acitoolkit.acitoolkit.AttributeCriterion at-tribute), 174
match_links() (cableplan.CpLink static method),452
merge() (cableplan.CpSwitch method), 453MonitorPolicy (class in acitoolkit.acitoolkit), 314MonitorStats (class in acitoolkit.acitoolkit), 316MonitorTarget (class in acitoolkit.acitoolkit), 318
Nname() (cableplan.CpPort method), 451NetworkPool (class in acitoolkit.acitoolkit), 319Node (class in acitoolkit.aciphysobject), 111
OoperSt (acitoolkit.aciphysobject.Node attribute), 116order() (cableplan.CpLink method), 452OSPFInterface (class in acitoolkit.acitoolkit), 324OSPFInterfacePolicy (class in aci-
toolkit.acitoolkit), 330
OSPFRouter (class in acitoolkit.acitoolkit), 335OutputTerminal (class in acitoolkit.acitoolkit), 341OutsideEPG (class in acitoolkit.acitoolkit), 347OutsideL2 (class in acitoolkit.acitoolkit), 354OutsideL2EPG (class in acitoolkit.acitoolkit), 360OutsideL3 (class in acitoolkit.acitoolkit), 367OutsideNetwork (class in acitoolkit.acitoolkit), 373
Pparse_dn() (acitoolkit.aciphysobject.Interface class
method), 97parse_dn() (acitoolkit.acitoolkit.FexInterface class
method), 262parse_encap() (acitoolkit.acitoolkit.L2Interface
static method), 296parse_name() (acitoolkit.aciphysobject.Interface
static method), 97PhysDomain (class in acitoolkit.acitoolkit), 379PhysicalModel (class in acitoolkit.aciphysobject),
118Pod (class in acitoolkit.aciphysobject), 123populate_children() (aci-
toolkit.acibaseobject.BaseACIObject method),57
populate_children() (aci-toolkit.aciphysobject.Cluster method), 66
populate_children() (aci-toolkit.aciphysobject.ExternalSwitch method),72
populate_children() (aci-toolkit.aciphysobject.Fabric method), 78
populate_children() (aci-toolkit.aciphysobject.Fan method), 84
populate_children() (aci-toolkit.aciphysobject.Fantray method), 90
populate_children() (aci-toolkit.aciphysobject.Interface method),97
populate_children() (aci-toolkit.aciphysobject.Linecard method),103
populate_children() (aci-toolkit.aciphysobject.Link method), 110
populate_children() (aci-toolkit.aciphysobject.Node method), 117
populate_children() (aci-toolkit.aciphysobject.PhysicalModel method),122
populate_children() (aci-toolkit.aciphysobject.Pod method), 128
populate_children() (aci-toolkit.aciphysobject.Powersupply method),134
556 Index
acitoolkit Documentation, Release 0.1
populate_children() (aci-toolkit.aciphysobject.Process method), 140
populate_children() (aci-toolkit.aciphysobject.Supervisorcard method),146
populate_children() (aci-toolkit.aciphysobject.Systemcontrollermethod), 152
populate_children() (aci-toolkit.acitoolkit.AnyEPG method), 163
populate_children() (aci-toolkit.acitoolkit.AppProfile method), 168
populate_children() (aci-toolkit.acitoolkit.AttributeCriterion method),174
populate_children() (aci-toolkit.acitoolkit.BaseContract method),185
populate_children() (aci-toolkit.acitoolkit.BaseSubnet method), 192
populate_children() (aci-toolkit.acitoolkit.BaseTerminal method),198
populate_children() (aci-toolkit.acitoolkit.BGPSession method), 180
populate_children() (aci-toolkit.acitoolkit.BridgeDomain method),204
populate_children() (aci-toolkit.acitoolkit.CommonEPG method),214
populate_children() (aci-toolkit.acitoolkit.Context method), 220
populate_children() (aci-toolkit.acitoolkit.Contract method), 225
populate_children() (aci-toolkit.acitoolkit.ContractInterface method),231
populate_children() (aci-toolkit.acitoolkit.ContractSubject method),237
populate_children() (aci-toolkit.acitoolkit.Endpoint method), 256
populate_children() (acitoolkit.acitoolkit.EPGmethod), 245
populate_children() (aci-toolkit.acitoolkit.EPGDomain method), 251
populate_children() (aci-toolkit.acitoolkit.FexInterface method), 262
populate_children() (acitoolkit.acitoolkit.Filtermethod), 268
populate_children() (aci-toolkit.acitoolkit.FilterEntry method), 274
populate_children() (aci-
toolkit.acitoolkit.InputTerminal method),285
populate_children() (aci-toolkit.acitoolkit.IPEndpoint method), 279
populate_children() (aci-toolkit.acitoolkit.L2ExtDomain method),290
populate_children() (aci-toolkit.acitoolkit.L2Interface method), 296
populate_children() (aci-toolkit.acitoolkit.L3ExtDomain method),302
populate_children() (aci-toolkit.acitoolkit.L3Interface method), 307
populate_children() (aci-toolkit.acitoolkit.LogicalModel method),313
populate_children() (aci-toolkit.acitoolkit.NetworkPool method), 323
populate_children() (aci-toolkit.acitoolkit.OSPFInterface method),329
populate_children() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
populate_children() (aci-toolkit.acitoolkit.OSPFRouter method), 340
populate_children() (aci-toolkit.acitoolkit.OutputTerminal method),345
populate_children() (aci-toolkit.acitoolkit.OutsideEPG method), 352
populate_children() (aci-toolkit.acitoolkit.OutsideL2 method), 358
populate_children() (aci-toolkit.acitoolkit.OutsideL2EPG method),365
populate_children() (aci-toolkit.acitoolkit.OutsideL3 method), 372
populate_children() (aci-toolkit.acitoolkit.OutsideNetwork method),377
populate_children() (aci-toolkit.acitoolkit.PhysDomain method), 383
populate_children() (aci-toolkit.acitoolkit.PortChannel method), 389
populate_children() (acitoolkit.acitoolkit.Searchmethod), 395
populate_children() (acitoolkit.acitoolkit.Subnetmethod), 401
populate_children() (acitoolkit.acitoolkit.Taboomethod), 406
populate_children() (acitoolkit.acitoolkit.Tagmethod), 412
Index 557
acitoolkit Documentation, Release 0.1
populate_children() (acitoolkit.acitoolkit.Tenantmethod), 418
populate_children() (acitoolkit.acitoolkit.VMMmethod), 423
populate_children() (aci-toolkit.acitoolkit.VMMCredentials method),429
populate_children() (aci-toolkit.acitoolkit.VmmDomain method),435
PortChannel (class in acitoolkit.acitoolkit), 385Powersupply (class in acitoolkit.aciphysobject), 129print_help() (acitoolkit.acitoolkitlib.Credentials
method), 437Process (class in acitoolkit.aciphysobject), 135protect() (acitoolkit.acitoolkit.AnyEPG method), 163protect() (acitoolkit.acitoolkit.CommonEPG
method), 214protect() (acitoolkit.acitoolkit.EPG method), 245protect() (acitoolkit.acitoolkit.OutsideEPG method),
353protect() (acitoolkit.acitoolkit.OutsideL2EPG
method), 366provide() (acitoolkit.acitoolkit.AnyEPG method), 163provide() (acitoolkit.acitoolkit.CommonEPG
method), 214provide() (acitoolkit.acitoolkit.EPG method), 245provide() (acitoolkit.acitoolkit.OutsideEPG method),
353provide() (acitoolkit.acitoolkit.OutsideL2EPG
method), 366push_to_apic() (acitoolkit.aciphysobject.Interface
method), 97push_to_apic() (acitoolkit.acisession.Session
method), 156push_to_apic() (acitoolkit.acitoolkit.PhysDomain
method), 384push_to_apic() (acitoolkit.acitoolkit.Tenant
method), 418
Rrefresh_login() (acitoolkit.acisession.Session
method), 156register_login_callback() (aci-
toolkit.acisession.Session method), 156remaining_avail() (cableplan.CpLink method),
452remaining_need() (cableplan.CpLink method), 452remove_available_port() (cableplan.CpPort
method), 451remove_bd() (acitoolkit.acitoolkit.EPG method), 245remove_bd() (acitoolkit.acitoolkit.OutsideL2
method), 359
remove_child() (aci-toolkit.acibaseobject.BaseACIObject method),58
remove_child() (acitoolkit.aciphysobject.Clustermethod), 67
remove_child() (aci-toolkit.aciphysobject.ExternalSwitch method),73
remove_child() (acitoolkit.aciphysobject.Fabricmethod), 78
remove_child() (acitoolkit.aciphysobject.Fanmethod), 84
remove_child() (acitoolkit.aciphysobject.Fantraymethod), 90
remove_child() (acitoolkit.aciphysobject.Interfacemethod), 97
remove_child() (acitoolkit.aciphysobject.Linecardmethod), 103
remove_child() (acitoolkit.aciphysobject.Linkmethod), 110
remove_child() (acitoolkit.aciphysobject.Nodemethod), 117
remove_child() (aci-toolkit.aciphysobject.PhysicalModel method),122
remove_child() (acitoolkit.aciphysobject.Podmethod), 128
remove_child() (aci-toolkit.aciphysobject.Powersupply method),134
remove_child() (acitoolkit.aciphysobject.Processmethod), 140
remove_child() (aci-toolkit.aciphysobject.Supervisorcard method),146
remove_child() (aci-toolkit.aciphysobject.Systemcontrollermethod), 153
remove_child() (acitoolkit.acitoolkit.AnyEPGmethod), 163
remove_child() (acitoolkit.acitoolkit.AppProfilemethod), 168
remove_child() (aci-toolkit.acitoolkit.AttributeCriterion method),174
remove_child() (acitoolkit.acitoolkit.BaseContractmethod), 185
remove_child() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
remove_child() (acitoolkit.acitoolkit.BaseTerminalmethod), 198
remove_child() (acitoolkit.acitoolkit.BGPSessionmethod), 180
remove_child() (acitoolkit.acitoolkit.BridgeDomain
558 Index
acitoolkit Documentation, Release 0.1
method), 204remove_child() (acitoolkit.acitoolkit.CommonEPG
method), 214remove_child() (acitoolkit.acitoolkit.Context
method), 220remove_child() (acitoolkit.acitoolkit.Contract
method), 225remove_child() (aci-
toolkit.acitoolkit.ContractInterface method),231
remove_child() (aci-toolkit.acitoolkit.ContractSubject method),237
remove_child() (acitoolkit.acitoolkit.Endpointmethod), 257
remove_child() (acitoolkit.acitoolkit.EPG method),245
remove_child() (acitoolkit.acitoolkit.EPGDomainmethod), 251
remove_child() (acitoolkit.acitoolkit.FexInterfacemethod), 262
remove_child() (acitoolkit.acitoolkit.Filter method),268
remove_child() (acitoolkit.acitoolkit.FilterEntrymethod), 274
remove_child() (acitoolkit.acitoolkit.InputTerminalmethod), 285
remove_child() (acitoolkit.acitoolkit.IPEndpointmethod), 279
remove_child() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290
remove_child() (acitoolkit.acitoolkit.L2Interfacemethod), 296
remove_child() (acitoolkit.acitoolkit.L3ExtDomainmethod), 302
remove_child() (acitoolkit.acitoolkit.L3Interfacemethod), 308
remove_child() (acitoolkit.acitoolkit.LogicalModelmethod), 313
remove_child() (acitoolkit.acitoolkit.NetworkPoolmethod), 323
remove_child() (aci-toolkit.acitoolkit.OSPFInterface method),329
remove_child() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
remove_child() (acitoolkit.acitoolkit.OSPFRoutermethod), 340
remove_child() (aci-toolkit.acitoolkit.OutputTerminal method),346
remove_child() (acitoolkit.acitoolkit.OutsideEPGmethod), 353
remove_child() (acitoolkit.acitoolkit.OutsideL2method), 359
remove_child() (aci-toolkit.acitoolkit.OutsideL2EPG method),366
remove_child() (acitoolkit.acitoolkit.OutsideL3method), 372
remove_child() (aci-toolkit.acitoolkit.OutsideNetwork method),378
remove_child() (acitoolkit.acitoolkit.PhysDomainmethod), 384
remove_child() (acitoolkit.acitoolkit.PortChannelmethod), 389
remove_child() (acitoolkit.acitoolkit.Searchmethod), 395
remove_child() (acitoolkit.acitoolkit.Subnetmethod), 401
remove_child() (acitoolkit.acitoolkit.Taboomethod), 407
remove_child() (acitoolkit.acitoolkit.Tag method),412
remove_child() (acitoolkit.acitoolkit.Tenantmethod), 418
remove_child() (acitoolkit.acitoolkit.VMMmethod), 424
remove_child() (aci-toolkit.acitoolkit.VMMCredentials method),429
remove_child() (acitoolkit.acitoolkit.VmmDomainmethod), 435
remove_collection_policy() (aci-toolkit.acitoolkit.BaseMonitorClass method),187
remove_collection_policy() (aci-toolkit.acitoolkit.CollectionPolicy method),207
remove_collection_policy() (aci-toolkit.acitoolkit.MonitorPolicy method),316
remove_collection_policy() (aci-toolkit.acitoolkit.MonitorStats method),317
remove_collection_policy() (aci-toolkit.acitoolkit.MonitorTarget method),318
remove_context() (aci-toolkit.acitoolkit.BridgeDomain method),204
remove_context() (acitoolkit.acitoolkit.L3Interfacemethod), 308
remove_context() (acitoolkit.acitoolkit.OutsideL3method), 372
remove_network() (aci-
Index 559
acitoolkit Documentation, Release 0.1
toolkit.acitoolkit.PhysDomain method), 384remove_stats() (aci-
toolkit.acitoolkit.BaseMonitorClass method),187
remove_stats() (aci-toolkit.acitoolkit.CollectionPolicy method),207
remove_stats() (acitoolkit.acitoolkit.MonitorPolicymethod), 316
remove_stats() (acitoolkit.acitoolkit.MonitorStatsmethod), 317
remove_stats() (acitoolkit.acitoolkit.MonitorTargetmethod), 319
remove_subnet() (aci-toolkit.acitoolkit.BridgeDomain method),204
remove_tag() (aci-toolkit.acibaseobject.BaseACIObject method),58
remove_tag() (acitoolkit.aciphysobject.Clustermethod), 67
remove_tag() (aci-toolkit.aciphysobject.ExternalSwitch method),73
remove_tag() (acitoolkit.aciphysobject.Fabricmethod), 78
remove_tag() (acitoolkit.aciphysobject.Fan method),84
remove_tag() (acitoolkit.aciphysobject.Fantraymethod), 90
remove_tag() (acitoolkit.aciphysobject.Interfacemethod), 97
remove_tag() (acitoolkit.aciphysobject.Linecardmethod), 104
remove_tag() (acitoolkit.aciphysobject.Linkmethod), 110
remove_tag() (acitoolkit.aciphysobject.Nodemethod), 117
remove_tag() (aci-toolkit.aciphysobject.PhysicalModel method),122
remove_tag() (acitoolkit.aciphysobject.Pod method),128
remove_tag() (acitoolkit.aciphysobject.Powersupplymethod), 134
remove_tag() (acitoolkit.aciphysobject.Processmethod), 140
remove_tag() (aci-toolkit.aciphysobject.Supervisorcard method),146
remove_tag() (aci-toolkit.aciphysobject.Systemcontrollermethod), 153
remove_tag() (acitoolkit.acitoolkit.AnyEPG
method), 163remove_tag() (acitoolkit.acitoolkit.AppProfile
method), 168remove_tag() (aci-
toolkit.acitoolkit.AttributeCriterion method),174
remove_tag() (acitoolkit.acitoolkit.BaseContractmethod), 185
remove_tag() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
remove_tag() (acitoolkit.acitoolkit.BaseTerminalmethod), 198
remove_tag() (acitoolkit.acitoolkit.BGPSessionmethod), 180
remove_tag() (acitoolkit.acitoolkit.BridgeDomainmethod), 205
remove_tag() (acitoolkit.acitoolkit.CommonEPGmethod), 214
remove_tag() (acitoolkit.acitoolkit.Context method),220
remove_tag() (acitoolkit.acitoolkit.Contractmethod), 226
remove_tag() (acitoolkit.acitoolkit.ContractInterfacemethod), 231
remove_tag() (acitoolkit.acitoolkit.ContractSubjectmethod), 237
remove_tag() (acitoolkit.acitoolkit.Endpointmethod), 257
remove_tag() (acitoolkit.acitoolkit.EPG method),245
remove_tag() (acitoolkit.acitoolkit.EPGDomainmethod), 251
remove_tag() (acitoolkit.acitoolkit.FexInterfacemethod), 262
remove_tag() (acitoolkit.acitoolkit.Filter method),268
remove_tag() (acitoolkit.acitoolkit.FilterEntrymethod), 274
remove_tag() (acitoolkit.acitoolkit.InputTerminalmethod), 285
remove_tag() (acitoolkit.acitoolkit.IPEndpointmethod), 279
remove_tag() (acitoolkit.acitoolkit.L2ExtDomainmethod), 290
remove_tag() (acitoolkit.acitoolkit.L2Interfacemethod), 296
remove_tag() (acitoolkit.acitoolkit.L3ExtDomainmethod), 302
remove_tag() (acitoolkit.acitoolkit.L3Interfacemethod), 308
remove_tag() (acitoolkit.acitoolkit.LogicalModelmethod), 313
remove_tag() (acitoolkit.acitoolkit.NetworkPoolmethod), 323
560 Index
acitoolkit Documentation, Release 0.1
remove_tag() (acitoolkit.acitoolkit.OSPFInterfacemethod), 329
remove_tag() (aci-toolkit.acitoolkit.OSPFInterfacePolicymethod), 334
remove_tag() (acitoolkit.acitoolkit.OSPFRoutermethod), 340
remove_tag() (acitoolkit.acitoolkit.OutputTerminalmethod), 346
remove_tag() (acitoolkit.acitoolkit.OutsideEPGmethod), 353
remove_tag() (acitoolkit.acitoolkit.OutsideL2method), 359
remove_tag() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 366
remove_tag() (acitoolkit.acitoolkit.OutsideL3method), 372
remove_tag() (acitoolkit.acitoolkit.OutsideNetworkmethod), 378
remove_tag() (acitoolkit.acitoolkit.PhysDomainmethod), 384
remove_tag() (acitoolkit.acitoolkit.PortChannelmethod), 389
remove_tag() (acitoolkit.acitoolkit.Search method),395
remove_tag() (acitoolkit.acitoolkit.Subnet method),401
remove_tag() (acitoolkit.acitoolkit.Taboo method),407
remove_tag() (acitoolkit.acitoolkit.Tag method), 412remove_tag() (acitoolkit.acitoolkit.Tenant method),
418remove_tag() (acitoolkit.acitoolkit.VMM method),
424remove_tag() (acitoolkit.acitoolkit.VMMCredentials
method), 429remove_tag() (acitoolkit.acitoolkit.VmmDomain
method), 435remove_target() (aci-
toolkit.acitoolkit.BaseMonitorClass method),187
remove_target() (aci-toolkit.acitoolkit.CollectionPolicy method),207
remove_target() (aci-toolkit.acitoolkit.MonitorPolicy method),316
remove_target() (acitoolkit.acitoolkit.MonitorStatsmethod), 317
remove_target() (aci-toolkit.acitoolkit.MonitorTarget method),319
reset_accounting() (cableplan.CABLEPLANmethod), 454
reset_accounting() (cableplan.CpLink method),453
reset_accounting() (cableplan.CpPort method),451
resubscribe() (acitoolkit.acisession.Sessionmethod), 156
retentionEnum (aci-toolkit.acitoolkit.CollectionPolicy attribute),207
role (acitoolkit.aciphysobject.ExternalSwitch at-tribute), 73
SSearch (class in acitoolkit.acitoolkit), 390Session (class in acitoolkit.acisession), 154set_addr() (acitoolkit.acitoolkit.BaseSubnet
method), 192set_addr() (acitoolkit.acitoolkit.L3Interface
method), 308set_addr() (acitoolkit.acitoolkit.OutsideNetwork
method), 378set_addr() (acitoolkit.acitoolkit.Subnet method), 401set_allow_all() (acitoolkit.acitoolkit.Context
method), 220set_area_type() (aci-
toolkit.acitoolkit.OSPFInterface method),329
set_arp_flood() (aci-toolkit.acitoolkit.BridgeDomain method),205
set_as_detached() (aci-toolkit.acibaseobject.BaseRelation method),61
set_base_epg() (acitoolkit.acitoolkit.EPG method),245
set_deployment_immediacy() (aci-toolkit.acitoolkit.EPG method), 245
set_description() (aci-toolkit.acitoolkit.BaseMonitorClass method),187
set_description() (aci-toolkit.acitoolkit.CollectionPolicy method),208
set_description() (aci-toolkit.acitoolkit.MonitorPolicy method),316
set_description() (aci-toolkit.acitoolkit.MonitorStats method),317
set_description() (aci-toolkit.acitoolkit.MonitorTarget method),319
set_dom_deployment_immediacy() (aci-toolkit.acitoolkit.EPG method), 245
Index 561
acitoolkit Documentation, Release 0.1
set_dom_resolution_immediacy() (aci-toolkit.acitoolkit.EPG method), 245
set_intra_epg_isolation() (aci-toolkit.acitoolkit.EPG method), 246
set_l3if_type() (acitoolkit.acitoolkit.L3Interfacemethod), 308
set_mac() (acitoolkit.acitoolkit.BridgeDomainmethod), 205
set_mtu() (acitoolkit.acitoolkit.L3Interface method),308
set_multidestination() (aci-toolkit.acitoolkit.BridgeDomain method),205
set_name() (acitoolkit.acitoolkit.BaseMonitorClassmethod), 187
set_name() (acitoolkit.acitoolkit.CollectionPolicymethod), 208
set_name() (acitoolkit.acitoolkit.MonitorPolicymethod), 316
set_name() (acitoolkit.acitoolkit.MonitorStatsmethod), 317
set_name() (acitoolkit.acitoolkit.MonitorTargetmethod), 319
set_name() (cableplan.CpSwitch method), 453set_node_id() (acitoolkit.acitoolkit.OSPFRouter
method), 340set_nw_type() (aci-
toolkit.acitoolkit.OSPFInterfacePolicymethod), 335
set_parent() (aci-toolkit.acibaseobject.BaseACIObject method),58
set_parent() (acitoolkit.aciphysobject.Clustermethod), 67
set_parent() (aci-toolkit.aciphysobject.ExternalSwitch method),73
set_parent() (acitoolkit.aciphysobject.Fabricmethod), 78
set_parent() (acitoolkit.aciphysobject.Fan method),84
set_parent() (acitoolkit.aciphysobject.Fantraymethod), 90
set_parent() (acitoolkit.aciphysobject.Interfacemethod), 97
set_parent() (acitoolkit.aciphysobject.Linecardmethod), 104
set_parent() (acitoolkit.aciphysobject.Linkmethod), 110
set_parent() (acitoolkit.aciphysobject.Nodemethod), 117
set_parent() (aci-toolkit.aciphysobject.PhysicalModel method),122
set_parent() (acitoolkit.aciphysobject.Pod method),128
set_parent() (acitoolkit.aciphysobject.Powersupplymethod), 134
set_parent() (acitoolkit.aciphysobject.Processmethod), 140
set_parent() (aci-toolkit.aciphysobject.Supervisorcard method),146
set_parent() (aci-toolkit.aciphysobject.Systemcontrollermethod), 153
set_parent() (acitoolkit.acitoolkit.AnyEPGmethod), 163
set_parent() (acitoolkit.acitoolkit.AppProfilemethod), 169
set_parent() (aci-toolkit.acitoolkit.AttributeCriterion method),174
set_parent() (acitoolkit.acitoolkit.BaseContractmethod), 185
set_parent() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
set_parent() (acitoolkit.acitoolkit.BaseTerminalmethod), 198
set_parent() (acitoolkit.acitoolkit.BGPSessionmethod), 180
set_parent() (acitoolkit.acitoolkit.BridgeDomainmethod), 205
set_parent() (acitoolkit.acitoolkit.CommonEPGmethod), 214
set_parent() (acitoolkit.acitoolkit.Context method),220
set_parent() (acitoolkit.acitoolkit.Contractmethod), 226
set_parent() (acitoolkit.acitoolkit.ContractInterfacemethod), 231
set_parent() (acitoolkit.acitoolkit.ContractSubjectmethod), 237
set_parent() (acitoolkit.acitoolkit.Endpointmethod), 257
set_parent() (acitoolkit.acitoolkit.EPG method),246
set_parent() (acitoolkit.acitoolkit.EPGDomainmethod), 251
set_parent() (acitoolkit.acitoolkit.FexInterfacemethod), 262
set_parent() (acitoolkit.acitoolkit.Filter method),268
set_parent() (acitoolkit.acitoolkit.FilterEntrymethod), 274
set_parent() (acitoolkit.acitoolkit.InputTerminalmethod), 285
set_parent() (acitoolkit.acitoolkit.IPEndpoint
562 Index
acitoolkit Documentation, Release 0.1
method), 280set_parent() (acitoolkit.acitoolkit.L2ExtDomain
method), 291set_parent() (acitoolkit.acitoolkit.L2Interface
method), 296set_parent() (acitoolkit.acitoolkit.L3ExtDomain
method), 302set_parent() (acitoolkit.acitoolkit.L3Interface
method), 308set_parent() (acitoolkit.acitoolkit.LogicalModel
method), 314set_parent() (acitoolkit.acitoolkit.NetworkPool
method), 324set_parent() (acitoolkit.acitoolkit.OSPFInterface
method), 329set_parent() (aci-
toolkit.acitoolkit.OSPFInterfacePolicymethod), 335
set_parent() (acitoolkit.acitoolkit.OSPFRoutermethod), 340
set_parent() (acitoolkit.acitoolkit.OutputTerminalmethod), 346
set_parent() (acitoolkit.acitoolkit.OutsideEPGmethod), 353
set_parent() (acitoolkit.acitoolkit.OutsideL2method), 359
set_parent() (acitoolkit.acitoolkit.OutsideL2EPGmethod), 366
set_parent() (acitoolkit.acitoolkit.OutsideL3method), 372
set_parent() (acitoolkit.acitoolkit.OutsideNetworkmethod), 378
set_parent() (acitoolkit.acitoolkit.PhysDomainmethod), 384
set_parent() (acitoolkit.acitoolkit.PortChannelmethod), 390
set_parent() (acitoolkit.acitoolkit.Search method),395
set_parent() (acitoolkit.acitoolkit.Subnet method),401
set_parent() (acitoolkit.acitoolkit.Taboo method),407
set_parent() (acitoolkit.acitoolkit.Tag method), 412set_parent() (acitoolkit.acitoolkit.Tenant method),
418set_parent() (acitoolkit.acitoolkit.VMM method),
424set_parent() (acitoolkit.acitoolkit.VMMCredentials
method), 429set_parent() (acitoolkit.acitoolkit.VmmDomain
method), 435set_parent() (cableplan.CpSwitch method), 453set_router_id() (acitoolkit.acitoolkit.OSPFRouter
method), 340
set_scope() (acitoolkit.acitoolkit.BaseContractmethod), 186
set_scope() (acitoolkit.acitoolkit.BaseSubnetmethod), 192
set_scope() (acitoolkit.acitoolkit.Contract method),226
set_scope() (acitoolkit.acitoolkit.OutsideNetworkmethod), 378
set_scope() (acitoolkit.acitoolkit.Subnet method),401
set_scope() (acitoolkit.acitoolkit.Taboo method),407
set_unicast_route() (aci-toolkit.acitoolkit.BridgeDomain method),205
set_unknown_mac_unicast() (aci-toolkit.acitoolkit.BridgeDomain method),205
set_unknown_multicast() (aci-toolkit.acitoolkit.BridgeDomain method),205
setAdminState() (aci-toolkit.acitoolkit.CollectionPolicy method),207
setRetention() (aci-toolkit.acitoolkit.CollectionPolicy method),208
sorted_links() (cableplan.CABLEPLAN method),454
statsDictionary (acitoolkit.acitoolkit.MonitorStatsattribute), 318
statsFamilyEnum (acitoolkit.acitoolkit.MonitorStatsattribute), 318
Subnet (class in acitoolkit.acitoolkit), 396subscribe() (acitoolkit.acibaseobject.BaseACIObject
class method), 58subscribe() (acitoolkit.aciphysobject.Cluster class
method), 67subscribe() (acitoolkit.aciphysobject.ExternalSwitch
class method), 73subscribe() (acitoolkit.aciphysobject.Fabric class
method), 78subscribe() (acitoolkit.aciphysobject.Fan class
method), 84subscribe() (acitoolkit.aciphysobject.Fantray class
method), 90subscribe() (acitoolkit.aciphysobject.Interface class
method), 97subscribe() (acitoolkit.aciphysobject.Linecard class
method), 104subscribe() (acitoolkit.aciphysobject.Link class
method), 111subscribe() (acitoolkit.aciphysobject.Node class
method), 117
Index 563
acitoolkit Documentation, Release 0.1
subscribe() (acitoolkit.aciphysobject.PhysicalModelclass method), 122
subscribe() (acitoolkit.aciphysobject.Pod classmethod), 128
subscribe() (acitoolkit.aciphysobject.Powersupplyclass method), 134
subscribe() (acitoolkit.aciphysobject.Process classmethod), 140
subscribe() (acitoolkit.aciphysobject.Supervisorcardclass method), 147
subscribe() (acitoolkit.aciphysobject.Systemcontrollerclass method), 153
subscribe() (acitoolkit.acisession.Session method),156
subscribe() (acitoolkit.acitoolkit.AnyEPG classmethod), 163
subscribe() (acitoolkit.acitoolkit.AppProfile classmethod), 169
subscribe() (acitoolkit.acitoolkit.AttributeCriterionclass method), 174
subscribe() (acitoolkit.acitoolkit.BaseContract classmethod), 186
subscribe() (acitoolkit.acitoolkit.BaseSubnet classmethod), 193
subscribe() (acitoolkit.acitoolkit.BaseTerminal classmethod), 198
subscribe() (acitoolkit.acitoolkit.BGPSession classmethod), 180
subscribe() (acitoolkit.acitoolkit.BridgeDomainclass method), 205
subscribe() (acitoolkit.acitoolkit.CommonEPG classmethod), 215
subscribe() (acitoolkit.acitoolkit.Context classmethod), 220
subscribe() (acitoolkit.acitoolkit.Contract classmethod), 226
subscribe() (acitoolkit.acitoolkit.ContractInterfaceclass method), 232
subscribe() (acitoolkit.acitoolkit.ContractSubjectclass method), 237
subscribe() (acitoolkit.acitoolkit.Endpoint classmethod), 257
subscribe() (acitoolkit.acitoolkit.EPG classmethod), 246
subscribe() (acitoolkit.acitoolkit.EPGDomain classmethod), 251
subscribe() (acitoolkit.acitoolkit.FexInterface classmethod), 263
subscribe() (acitoolkit.acitoolkit.Filter classmethod), 268
subscribe() (acitoolkit.acitoolkit.FilterEntry classmethod), 274
subscribe() (acitoolkit.acitoolkit.InputTerminalclass method), 285
subscribe() (acitoolkit.acitoolkit.IPEndpoint classmethod), 280
subscribe() (acitoolkit.acitoolkit.L2ExtDomain classmethod), 291
subscribe() (acitoolkit.acitoolkit.L2Interface classmethod), 297
subscribe() (acitoolkit.acitoolkit.L3ExtDomain classmethod), 302
subscribe() (acitoolkit.acitoolkit.L3Interface classmethod), 308
subscribe() (acitoolkit.acitoolkit.LogicalModel classmethod), 314
subscribe() (acitoolkit.acitoolkit.NetworkPool classmethod), 324
subscribe() (acitoolkit.acitoolkit.OSPFInterfaceclass method), 329
subscribe() (acitoolkit.acitoolkit.OSPFInterfacePolicyclass method), 335
subscribe() (acitoolkit.acitoolkit.OSPFRouter classmethod), 340
subscribe() (acitoolkit.acitoolkit.OutputTerminalclass method), 346
subscribe() (acitoolkit.acitoolkit.OutsideEPG classmethod), 353
subscribe() (acitoolkit.acitoolkit.OutsideL2 classmethod), 359
subscribe() (acitoolkit.acitoolkit.OutsideL2EPGclass method), 366
subscribe() (acitoolkit.acitoolkit.OutsideL3 classmethod), 372
subscribe() (acitoolkit.acitoolkit.OutsideNetworkclass method), 378
subscribe() (acitoolkit.acitoolkit.PhysDomain classmethod), 384
subscribe() (acitoolkit.acitoolkit.PortChannel classmethod), 390
subscribe() (acitoolkit.acitoolkit.Search classmethod), 395
subscribe() (acitoolkit.acitoolkit.Subnet classmethod), 401
subscribe() (acitoolkit.acitoolkit.Taboo classmethod), 407
subscribe() (acitoolkit.acitoolkit.Tag class method),412
subscribe() (acitoolkit.acitoolkit.Tenant classmethod), 418
subscribe() (acitoolkit.acitoolkit.VMM classmethod), 424
subscribe() (acitoolkit.acitoolkit.VMMCredentialsclass method), 429
subscribe() (acitoolkit.acitoolkit.VmmDomain classmethod), 435
subscribe_faults() (acitoolkit.aciFaults.Faultsclass method), 438
564 Index
acitoolkit Documentation, Release 0.1
subscribe_to_fault_instances_subtree()(acitoolkit.acibaseobject.BaseACIObjectmethod), 58
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Cluster method), 67
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.ExternalSwitchmethod), 73
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Fabric method), 78
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Fan method), 84
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Fantray method), 91
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Interface method), 97
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Linecard method),104
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Link method), 111
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Node method), 117
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.PhysicalModelmethod), 122
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Pod method), 128
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Powersupply method),135
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Process method), 140
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Supervisorcardmethod), 147
subscribe_to_fault_instances_subtree()(acitoolkit.aciphysobject.Systemcontrollermethod), 153
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.AnyEPG method), 163
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.AppProfile method), 169
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.AttributeCriterionmethod), 175
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BaseContract method),186
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BaseSubnet method), 193
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BaseTerminal method),198
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BGPSession method), 180
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.BridgeDomain method),205
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.CommonEPG method),215
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Context method), 220
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Contract method), 226
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.ContractInterfacemethod), 232
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.ContractSubject method),237
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Endpoint method), 257
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.EPG method), 246
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.EPGDomain method),251
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.FexInterface method), 263
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Filter method), 268
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.FilterEntry method), 274
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.InputTerminal method),285
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.IPEndpoint method), 280
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L2ExtDomain method),291
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L2Interface method), 297
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L3ExtDomain method),302
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.L3Interface method), 308
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.LogicalModel method),314
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.NetworkPool method),324
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OSPFInterface method),
Index 565
acitoolkit Documentation, Release 0.1
329subscribe_to_fault_instances_subtree()
(acitoolkit.acitoolkit.OSPFInterfacePolicymethod), 335
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OSPFRouter method),341
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutputTerminal method),346
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideEPG method), 353
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideL2 method), 359
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideL2EPG method),366
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideL3 method), 372
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.OutsideNetwork method),378
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.PhysDomain method),384
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.PortChannel method), 390
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Search method), 395
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Subnet method), 401
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Taboo method), 407
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Tag method), 413
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.Tenant method), 418
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.VMM method), 424
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.VMMCredentialsmethod), 430
subscribe_to_fault_instances_subtree()(acitoolkit.acitoolkit.VmmDomain method),435
Supervisorcard (class in acitoolkit.aciphysobject),141
Systemcontroller (class in aci-toolkit.aciphysobject), 147
TTaboo (class in acitoolkit.acitoolkit), 402Tag (class in acitoolkit.acitoolkit), 408Tenant (class in acitoolkit.acitoolkit), 413
TunnelInterface (class in acitoolkit.acitoolkit), 419
Uunsubscribe() (aci-
toolkit.acibaseobject.BaseACIObject classmethod), 58
unsubscribe() (acitoolkit.aciphysobject.Clusterclass method), 67
unsubscribe() (aci-toolkit.aciphysobject.ExternalSwitch classmethod), 73
unsubscribe() (acitoolkit.aciphysobject.Fabric classmethod), 78
unsubscribe() (acitoolkit.aciphysobject.Fan classmethod), 85
unsubscribe() (acitoolkit.aciphysobject.Fantrayclass method), 91
unsubscribe() (acitoolkit.aciphysobject.Interfaceclass method), 98
unsubscribe() (acitoolkit.aciphysobject.Linecardclass method), 104
unsubscribe() (acitoolkit.aciphysobject.Link classmethod), 111
unsubscribe() (acitoolkit.aciphysobject.Node classmethod), 117
unsubscribe() (aci-toolkit.aciphysobject.PhysicalModel classmethod), 123
unsubscribe() (acitoolkit.aciphysobject.Pod classmethod), 129
unsubscribe() (aci-toolkit.aciphysobject.Powersupply classmethod), 135
unsubscribe() (acitoolkit.aciphysobject.Processclass method), 141
unsubscribe() (aci-toolkit.aciphysobject.Supervisorcard classmethod), 147
unsubscribe() (aci-toolkit.aciphysobject.Systemcontroller classmethod), 153
unsubscribe() (acitoolkit.acisession.Sessionmethod), 156
unsubscribe() (acitoolkit.acitoolkit.AnyEPG classmethod), 164
unsubscribe() (acitoolkit.acitoolkit.AppProfile classmethod), 169
unsubscribe() (aci-toolkit.acitoolkit.AttributeCriterion classmethod), 175
unsubscribe() (acitoolkit.acitoolkit.BaseContractclass method), 186
unsubscribe() (acitoolkit.acitoolkit.BaseSubnetclass method), 193
566 Index
acitoolkit Documentation, Release 0.1
unsubscribe() (acitoolkit.acitoolkit.BaseTerminalclass method), 199
unsubscribe() (acitoolkit.acitoolkit.BGPSessionclass method), 180
unsubscribe() (acitoolkit.acitoolkit.BridgeDomainclass method), 206
unsubscribe() (acitoolkit.acitoolkit.CommonEPGclass method), 215
unsubscribe() (acitoolkit.acitoolkit.Context classmethod), 220
unsubscribe() (acitoolkit.acitoolkit.Contract classmethod), 226
unsubscribe() (aci-toolkit.acitoolkit.ContractInterface classmethod), 232
unsubscribe() (acitoolkit.acitoolkit.ContractSubjectclass method), 238
unsubscribe() (acitoolkit.acitoolkit.Endpoint classmethod), 257
unsubscribe() (acitoolkit.acitoolkit.EPG classmethod), 246
unsubscribe() (acitoolkit.acitoolkit.EPGDomainclass method), 252
unsubscribe() (acitoolkit.acitoolkit.FexInterfaceclass method), 263
unsubscribe() (acitoolkit.acitoolkit.Filter classmethod), 268
unsubscribe() (acitoolkit.acitoolkit.FilterEntryclass method), 274
unsubscribe() (acitoolkit.acitoolkit.InputTerminalclass method), 286
unsubscribe() (acitoolkit.acitoolkit.IPEndpointclass method), 280
unsubscribe() (acitoolkit.acitoolkit.L2ExtDomainclass method), 291
unsubscribe() (acitoolkit.acitoolkit.L2Interfaceclass method), 297
unsubscribe() (acitoolkit.acitoolkit.L3ExtDomainclass method), 302
unsubscribe() (acitoolkit.acitoolkit.L3Interfaceclass method), 309
unsubscribe() (acitoolkit.acitoolkit.LogicalModelclass method), 314
unsubscribe() (acitoolkit.acitoolkit.NetworkPoolclass method), 324
unsubscribe() (acitoolkit.acitoolkit.OSPFInterfaceclass method), 330
unsubscribe() (aci-toolkit.acitoolkit.OSPFInterfacePolicy classmethod), 335
unsubscribe() (acitoolkit.acitoolkit.OSPFRouterclass method), 341
unsubscribe() (acitoolkit.acitoolkit.OutputTerminalclass method), 346
unsubscribe() (acitoolkit.acitoolkit.OutsideEPGclass method), 354
unsubscribe() (acitoolkit.acitoolkit.OutsideL2 classmethod), 359
unsubscribe() (acitoolkit.acitoolkit.OutsideL2EPGclass method), 367
unsubscribe() (acitoolkit.acitoolkit.OutsideL3 classmethod), 372
unsubscribe() (acitoolkit.acitoolkit.OutsideNetworkclass method), 378
unsubscribe() (acitoolkit.acitoolkit.PhysDomainclass method), 384
unsubscribe() (acitoolkit.acitoolkit.PortChannelclass method), 390
unsubscribe() (acitoolkit.acitoolkit.Search classmethod), 396
unsubscribe() (acitoolkit.acitoolkit.Subnet classmethod), 402
unsubscribe() (acitoolkit.acitoolkit.Taboo classmethod), 407
unsubscribe() (acitoolkit.acitoolkit.Tag classmethod), 413
unsubscribe() (acitoolkit.acitoolkit.Tenant classmethod), 419
unsubscribe() (acitoolkit.acitoolkit.VMM classmethod), 424
unsubscribe() (aci-toolkit.acitoolkit.VMMCredentials classmethod), 430
unsubscribe() (acitoolkit.acitoolkit.VmmDomainclass method), 435
update_db() (acitoolkit.acibaseobject.BaseACIObjectmethod), 58
update_db() (acitoolkit.aciphysobject.Clustermethod), 67
update_db() (acitoolkit.aciphysobject.ExternalSwitchmethod), 73
update_db() (acitoolkit.aciphysobject.Fabricmethod), 79
update_db() (acitoolkit.aciphysobject.Fan method),85
update_db() (acitoolkit.aciphysobject.Fantraymethod), 91
update_db() (acitoolkit.aciphysobject.Interfacemethod), 98
update_db() (acitoolkit.aciphysobject.Linecardmethod), 104
update_db() (acitoolkit.aciphysobject.Link method),111
update_db() (acitoolkit.aciphysobject.Node method),117
update_db() (acitoolkit.aciphysobject.PhysicalModelmethod), 123
update_db() (acitoolkit.aciphysobject.Pod method),
Index 567
acitoolkit Documentation, Release 0.1
129update_db() (acitoolkit.aciphysobject.Powersupply
method), 135update_db() (acitoolkit.aciphysobject.Process
method), 141update_db() (acitoolkit.aciphysobject.Supervisorcard
method), 147update_db() (acitoolkit.aciphysobject.Systemcontroller
method), 153update_db() (acitoolkit.acitoolkit.AnyEPG method),
164update_db() (acitoolkit.acitoolkit.AppProfile
method), 169update_db() (acitoolkit.acitoolkit.AttributeCriterion
method), 175update_db() (acitoolkit.acitoolkit.BaseContract
method), 186update_db() (acitoolkit.acitoolkit.BaseSubnet
method), 193update_db() (acitoolkit.acitoolkit.BaseTerminal
method), 199update_db() (acitoolkit.acitoolkit.BGPSession
method), 180update_db() (acitoolkit.acitoolkit.BridgeDomain
method), 206update_db() (acitoolkit.acitoolkit.CommonEPG
method), 215update_db() (acitoolkit.acitoolkit.Context method),
221update_db() (acitoolkit.acitoolkit.Contract method),
226update_db() (acitoolkit.acitoolkit.ContractInterface
method), 232update_db() (acitoolkit.acitoolkit.ContractSubject
method), 238update_db() (acitoolkit.acitoolkit.Endpoint method),
257update_db() (acitoolkit.acitoolkit.EPG method), 246update_db() (acitoolkit.acitoolkit.EPGDomain
method), 252update_db() (acitoolkit.acitoolkit.FexInterface
method), 263update_db() (acitoolkit.acitoolkit.Filter method), 269update_db() (acitoolkit.acitoolkit.FilterEntry
method), 275update_db() (acitoolkit.acitoolkit.InputTerminal
method), 286update_db() (acitoolkit.acitoolkit.IPEndpoint
method), 280update_db() (acitoolkit.acitoolkit.L2ExtDomain
method), 291update_db() (acitoolkit.acitoolkit.L2Interface
method), 297update_db() (acitoolkit.acitoolkit.L3ExtDomain
method), 302update_db() (acitoolkit.acitoolkit.L3Interface
method), 309update_db() (acitoolkit.acitoolkit.LogicalModel
method), 314update_db() (acitoolkit.acitoolkit.NetworkPool
method), 324update_db() (acitoolkit.acitoolkit.OSPFInterface
method), 330update_db() (acitoolkit.acitoolkit.OSPFInterfacePolicy
method), 335update_db() (acitoolkit.acitoolkit.OSPFRouter
method), 341update_db() (acitoolkit.acitoolkit.OutputTerminal
method), 346update_db() (acitoolkit.acitoolkit.OutsideEPG
method), 354update_db() (acitoolkit.acitoolkit.OutsideL2
method), 359update_db() (acitoolkit.acitoolkit.OutsideL2EPG
method), 367update_db() (acitoolkit.acitoolkit.OutsideL3
method), 373update_db() (acitoolkit.acitoolkit.OutsideNetwork
method), 378update_db() (acitoolkit.acitoolkit.PhysDomain
method), 384update_db() (acitoolkit.acitoolkit.PortChannel
method), 390update_db() (acitoolkit.acitoolkit.Search method),
396update_db() (acitoolkit.acitoolkit.Subnet method),
402update_db() (acitoolkit.acitoolkit.Taboo method),
407update_db() (acitoolkit.acitoolkit.Tag method), 413update_db() (acitoolkit.acitoolkit.Tenant method),
419update_db() (acitoolkit.acitoolkit.VMM method), 424update_db() (acitoolkit.acitoolkit.VMMCredentials
method), 430update_db() (acitoolkit.acitoolkit.VmmDomain
method), 435
Vvalidate_fault_filter() (aci-
toolkit.aciFaults.Faults class method), 438verify() (acitoolkit.acitoolkitlib.Credentials method),
437VMM (class in acitoolkit.acitoolkit), 419VMMCredentials (class in acitoolkit.acitoolkit), 425VmmDomain (class in acitoolkit.acitoolkit), 430VMMvSwitchInfo (class in acitoolkit.acitoolkit), 430
568 Index