Automatisation ALE

Dernière modification le 28 mars 2020

Dans la gamme des commutateurs Alcatel-Lucent Enterprise, appelée OmniSwitch, il existe deux systèmes d’exploitation : AOS6 et AOS8. La stratégie consiste à uniformiser de plus en plus les équipements avec AOS8.

AOS8 possède plus de méthodes d’automatisation que AOS6, mais les points communs entre les deux systèmes sont :

  • Zero-touch Provisionning
    • Serveurs DHCP / FTP / TFTP ou…
    • Serveur OmniVista 2500 on-premise ou en cloud (Cirrus)
  • Python / SSH avec mon module Netmiko en Off-box scripting
    • Je conseille d’utiliser Netmiko avec le framework Python Nornir
  • Ansible / SSH avec mes Network Modules disponibles dans la Galaxy

Sur AOS8, une méthode d’automatisation Off-box consiste à utiliser le langage Python et les accès aux Web Services. Cette approche permet d’imaginer de construire une application complète en mode CLI ou en mode web avec un framework comme Django ou Flask.

from consumer import AOSAPI, AOSConnection

def access_omniswitch():
    try:
        api = AOSAPI(AOSConnection(
                username = 'admin',
                password = 'switch',
                hostaddress = '192.168.1.1',
                secure = False,
                obeyproxy = False,
                prettylinks = True,
                useport = 80,
                aosheaders = None,
                debug = True))
        api.login()
        results = api.query('mib', 'chasEntTemperatureTable', {
                'mibObject0':'chasEntTempCurrent',
                'mibObject1':'chasEntTempThreshold',
                'mibObject2':'chasEntTempDangerThreshold'})['result']
        if api.success():
            return results['data']['rows']
        else:
            raise HTTPError("Bad Diag: %d" % api.diag())
        api.logout()
    except HTTPError, e:
        api.logout()
        print "Error: " + e.msg
Alcatel-Lucent Enterprise Network Automation
Alcatel-Lucent Enterprise Network Automation – ALE Web Site