Avant de commencer
- tout ce qui est discuté ici est plus pertinent pour les centres de données et les réseaux de bureaux
- il s'agira du projet https://github.com/nihole/PSEFABRIC
- voir également l' article qui décrit les principes de base de PSEFABRIC.
Le système de gestion de réseau idéal
J'ose dire que du point de vue de la gestion et de l'automatisation,
PSEFABRIC est désormais plus proche que toute autre solution de ce que l'on pourrait appeler un «gestionnaire de réseau idéal».
Si vous avez une bonne voiture, vous savez ce qu'est un bon système de contrôle. En tant qu'utilisateur, vous devez seulement savoir comment modifier la vitesse et la direction du mouvement, et ceci et seulement cela, dans l'ensemble, vous fournit une interface. Dans le même temps, les voitures peuvent être différentes, de différents fabricants, avec des solutions techniques différentes - l'interface est toujours la même: frein, essence et volant (supposons que vous ayez une transmission automatique).
Cette approche peut-elle être appliquée au réseau et, dans l'affirmative, quel système de contrôle serait idéal pour le réseau?
Pour répondre à ces questions, répondons d'abord à la question, et qui est le conducteur?
Les réseaux, n'étant pas un «cheval sphérique dans le vide», n'existent pas pour eux-mêmes, ils existent dans un seul but - la transmission de données. Et les utilisateurs de ce service sont des applications. Tout ce dont l'application a besoin, c'est de grilles et de la connectivité entre elles. Le point de configuration devrait idéalement être le même pour l'ensemble du réseau (et non pas une centaine de périphériques réseau différents) et l'interface devrait être simple et unifiée.
Et ... bien sûr, c'est une tâche impossible, car du point de vue du réseau, tout est compliqué: des centaines de protocoles, types d'équipements, fournisseurs, conceptions - c'est un océan d'options en tout genre. Comment créer un produit avec une interface simple et unifiée qui prend en compte toute cette diversité? Il est clair que le problème sous cette forme ne peut pas être résolu.
Et pourtant, maintenant nous pouvons déjà dire qu'il existe une solution et PSEFABRIC le montre. La tâche, bien sûr, doit être légèrement modifiée, mais, heureusement, ce changement n'est pas significatif.
Énoncé du problème
Il y a deux bonnes nouvelles.
La première est qu'après avoir terminé la construction de votre réseau et l'avez mis en service, à partir de ce moment, la gamme des tâches que vous effectuez sur le réseau est considérablement réduite.
En règle générale, les tâches opérationnelles sont les suivantes:
- création / suppression d'une configuration liée à la mise en place des protocoles L2 / L3 pour la connexion des appareils (réseaux, wilans, sous-interfaces, ...).
Je l'appellerai création / suppression de réseau. - accès ouvert / fermé
- création / suppression de serveurs virtuels pour équilibrer le trafic
Cela nous donne la possibilité de modifier l'exigence initiale. Nous n'allons pas gérer toutes les opérations sur le réseau. On distingue plusieurs opérations interdépendantes, à savoir
- création d'accès
- réseautage (dans le sens décrit ci-dessus)
- création de serveurs virtuels pour l'équilibrage
- ...
La deuxième bonne nouvelle est l'interface.
Le
produit Cisco
ConfD nous donne tout ce dont nous avons besoin. En utilisant le langage YANG, nous pouvons décrire (et donc créer) pratiquement toute logique nécessaire de notre interface. Nous aurons également tout ce que nous aimons tant. En voici quelques-unes:
- sauvegarde de la configuration
- versions de configuration candidate et en cours d'exécution (capacité de validation)
- vérification de la syntaxe et de la logique des changements
- annulations
- AAA
- configurabilité via cli, http, rest, netconf, snmp
PSEFABRIC v.010
Nouvelle version v.010 PSEFABRIC
- facilite le basculement entre différents contextes de projet
- Il est facilement personnalisable pour une grande variété de conceptions, d'équipements et d'exigences. Ceci est assuré par les propriétés PSEFABRIC suivantes:
- projet p000 , qui est un modèle pour d'autres projets. L'approche recommandée lors de la création d'un nouveau projet consiste à copier les fichiers de ce projet avec leur modification ultérieure
- Un ensemble d' outils pour configurer PSEFABRIC. Aucun changement de code requis
- une méthodologie qui décrit la séquence des étapes à suivre dans le processus de mise en œuvre de cette solution
Lorsque
cet article a été écrit il y a un an, c'était en gros la réponse à la question "est-ce possible en principe?"
L'exemple donné alors (maintenant il s'appelle le projet
p001 ), intéressant du point de vue d'un ensemble d'équipements (routeurs Cisco, commutateurs L3, commutateurs, Cisco ASA, Juniper SRX), est encore quelque peu artificiel.
Le gros avantage de ce projet (p001) est la présence d'un laboratoire (UNL), où vous pouvez "jouer" avec les réglages de PSEFABRIC et tous les équipements ci-dessus, comprendre les principes de fonctionnement, les principaux points de la configuration, vous familiariser avec les outils de diagnostic ...
La version actuelle de PSEFABRIC (v.010) est déjà un produit à part entière. Vous pouvez le prendre et l'appliquer sur votre réseau ou sur le réseau de votre client. Pour démontrer la flexibilité et la force de cette solution, un autre projet a été créé (
p002 ).
Il s'agit déjà d'une conception «combat» que vous pouvez appliquer chez vous ou chez le client. Il s'agit d'une approche populaire et moderne pour construire un centre de données basé sur des idées de longue date:
- Segmentation logique imbriquée
- dispositifs logiques (ACI Tenants, Palo-Alto VSYS, N7k VDC, ...)
- Segmentation de routage (VRF)
- contrĂ´le du trafic entre les segments logiques sur les pare-feu
- Cloud MPLS pour connecter les centres de données
Équipement: Palo-Alto, Cisco ACI.
Dans cette
vidéo d'une demi-heure
, nous analysons en détail l'
exemple 0 . Dans cet exemple, en utilisant PSEFABRIC, nous configurons l'accès entre les différents segments de réseau du projet p002, en ajustant respectivement l'équipement ACI et PA.
Un peu de miracles
Pour comprendre comment PSEFABRIC modifie le concept de gestion de réseau, voici quelques exemples.
Commençons par des choses conceptuelles.
- Flexibilité Après avoir répondu à toutes les questions du questionnaire, la mise en place de PSEFABRIC pour un nouveau projet prend de plusieurs jours à plusieurs semaines. Tout dépend de la rapidité avec laquelle vous pouvez créer tous les modèles nécessaires. Mais en tout cas, 3 mois semblent assez réalistes pour la mise en œuvre (avec les tests) de ce système. Par exemple, la configuration de PSEFABRIC pour le projet p002 a pris 1 semaine. Ayant de l'expérience dans la création d'un système de contrôle d'accès pour ACI, je peux dire que même si nous augmentons ce délai à 6 mois pour un projet complexe, cela reste un très, très bon indicateur.
- Reprise après sinistre. Vous avez en fait une configuration «opérationnelle» de «l'ensemble du réseau» dans un seul fichier. Vous pouvez facilement l'appliquer à de nouveaux équipements. Mais de façon intéressante, vous pouvez même remplacer le type d'équipement (par exemple, c'était Juniper SRX, mais est devenu Palo-Alto FW), modifier les paramètres PSEFABRIC (ou créer un nouveau projet avec de nouveaux paramètres) et appliquer la même configuration, mais à un nouveau type d'équipement. Et cela ressemble vraiment à un miracle, non?
- Journalisation d'accès. Le problème habituel. Si vous ne vous connectez pas, alors très vite vous ne comprendrez plus où et quoi et quels accès sont encore nécessaires, et qui sont obsolètes, et en général vous perdez le contrôle de votre réseau. Si vous vous connectez, cela prend beaucoup de temps, et vous n'êtes jamais sûr que les accès qui sont enregistrés correspondent vraiment à la configuration réelle et à la fin vous cessez de le faire. Ici, vous avez à la fois la configuration et l'enregistrement dans une seule bouteille.
- DevOps. La configuration de votre réseau est désormais un fichier texte simple et facile à lire. Par conséquent, vous pouvez appliquer le développement des meilleures pratiques aux modifications apportées à votre réseau.
- NaaS. Avez-vous pensé à comment implémenter la solution «Network as a Service»? Vous avez maintenant cette solution avec les interfaces cli, netconf, REST, HTTP, SNMP.
Et quelques exemples techniques:
- Avez-vous essayé de répondre à des questions comme «où / d'où sont ouverts les accès depuis / vers tel ou tel réseau?» Si vous avez plusieurs centres de données et que les accès sont contrôlés sur une douzaine d'appareils différents, la réponse à cette question peut être assez difficile. Dans le cas de PSEFABRIC, c'est élémentaire.
- Certains fournisseurs proposent des solutions d'administration d'accès pratiques, telles que tag dans Palo-Alto ou StanleyCec dans Cisco. L'essentiel est de fournir automatiquement l'accès aux réseaux à l'aide de balises. Chez PSEFABRIC, vous pouvez l'implémenter pour l'ensemble de votre réseau, quel que soit le fournisseur. Cela ressemble à un miracle? À mon avis, oui.
- Vous souhaitez ouvrir l'accès à partir de plusieurs réseaux où se trouvent des ressources administratives (système de surveillance, systèmes de sauvegarde, ...) à tous les périphériques réseau et serveurs Linux. Habituellement, cela conduit au fait que vous devez ouvrir de nombreux accès sur de nombreux appareils. Une procédure exécutable, mais pas très agréable, et bien sûr, il peut y avoir de nombreux exemples. Dans le cas de PSEFABRIC, il peut s'agir d'une stratégie, puis PSEFABRIC déterminera où et quelles commandes de configuration doivent être appliquées.
Foire aux questions
Mais en quoi cela diffère-t-il de l'orchestration régulière, par exemple, en utilisant Cisco UCSD?
Quoi de neuf dans cette approche?
La nouveauté est que l'orchestration ne connaît généralement pas la configuration du réseau, et si des informations sont requises, l'orchestration doit faire des demandes d'équipement réel.
Par exemple, si vous supprimez un contrat sur un ACI, le système d'orchestration doit passer par tous les EPG de l'ACI pour trouver tous les fournisseurs et consommateurs de ce contrat. Et il peut s'agir de dizaines de milliers d'EPG. Et ce n'est pas seulement une question de performances (bien que cela aussi), mais que cela complique grandement la logique.
Eh bien, il suffit de regarder le chapitre précédent et de répondre à la question, avez-vous tous ces avantages en cas d'orchestration?
Intéressant?
PSEFABRIC est open source avec la licence Apache, version 2.0.
https://github.com/nihole/PSEFABRIChttps://github.com/nihole/PSEFABRIC/wikihttps://github.com/nihole/PSEFABRIC/wiki/Installation