Difference between revisions of "Cisco ACI"

From HackerNet
Jump to: navigation, search
Line 54: Line 54:
 
     print(f"HTTP Error {response.status_code}:{response.reason} occurred.")
 
     print(f"HTTP Error {response.status_code}:{response.reason} occurred.")
 
</syntaxhighlight>
 
</syntaxhighlight>
 +
 +
==Default Authentication Domain != Local==
 +
Om man har t.ex. radius eller tacacs som default authentication realm men vill ändå kunna logga in med lokala konton så måste man ange det mha sitt username vid login.
 +
 +
API: '''apic#fallback\\username'''<br/>
 +
SSH: '''apic#fallback\\username'''<br/>
 +
GUI: '''apic:fallback\\username'''<br/>
  
 
[[Category:Cisco]]
 
[[Category:Cisco]]

Revision as of 13:01, 2 February 2022

Cisco aci är en av Ciscos senaste innovationer inom hur man bygger datacenter och är egentligen ett orkestreringsverktyg för Nexus serien men inte med IOS utan APIC mjukvara i grunden på switcharna. Det är ett software defined network där man från en kontroller kan man då styra sitt fabric och integrera andra system med det för att göra automation mot sitt datacenter nedan är några exempel på hur ACI fungerar. ACI står för Application Centric Infrastructure men man är inte tvingad att köra just applikationer utan det kan vara annat som exempel l2 eller l3 integrationer internt i fabricen eller göra integrationer externa också mot både nät och applikationsresurser.

Datacenter Design

Det finns garanterat annan dokumentation på design av hur man bör bygga datacenter baserat på olika leverantörer eller preferenser men här beskriver vi grundläggande hur designen ser ut med spine och leaf uppsättning och vad som är viktigt att tänka på när man bygger och integrerar sina system.

ACI-Fabric_layers.png

Spine
Spine kallas de Nexus switchar som sitter på toppen av de andra fabric switcharna för att tänket man skall ha är att alla Leaf switchar skall alltid kopplas till alla spines för att få redundans och funktion genom hela fabricen.
Leaf
Leaf är de switcharna som kopplas in till faktiska resurser så som upklinks till spines och downlinks mot antingen UCS enheter "bare metal" servrar alternativt annan nätverksutrustning om peering sker utanför ditt fabric eller om man kör med en annan leverantör för brandväggs leverans.
Apic
Stretch Fabric
Multi-POD

Mjukvara

Mjukvaran i aci är ett eget typ av operativ för just Apicen som har möjlighet att styra de olika fabric enheterna.

APIC
Nexus

Hårdvara

Hårvaran har utvecklats med tiden för att ha stöd för tyngre och större fabrics med mer resurser.
Generationer
Asic
Begränsningar

Integration

UCS
Vmware

APIC API

import requests
import os

username = os.environ.get('USERNAME')
password = os.environ.get('PASSWORD')
hostname = 'apic1.hackernet.se'

# Build payload with userid/password and create a session object
payload = {"aaaUser": {"attributes": {"name": username, "pwd" : password }}}
session = requests.session()

# Issue the login request. The cookie will be stored in session.cookies.
login_url = f'https://{hostname}/api/aaaLogin.json'
response = session.post(login_url, json=payload, verify=False)

# Use the session object to get ACI objects
if response.ok:
    response = session.get(f'https://{hostname}/api/node/class/fvTenant.json', verify=False)
else:
    print(f"HTTP Error {response.status_code}:{response.reason} occurred.")

Default Authentication Domain != Local

Om man har t.ex. radius eller tacacs som default authentication realm men vill ändå kunna logga in med lokala konton så måste man ange det mha sitt username vid login.

API: apic#fallback\\username
SSH: apic#fallback\\username
GUI: apic:fallback\\username