Après 3 parties très orientées sur l’interface graphique de NSX-T, je vous propose cette fois-ci un petit tour d’horizon de l’API ReST, grande richesse de NSX-T, s’il en est.

De notre coté, et pour le moment, nous allons utiliser en priorité les APIs pour la supervision des composants de notre nouvelle infrastructure. Pour autant, il est évidemment possible de piloter entièrement NSX-T par la programmation. Nous allons d’ailleurs commencer à nous former et progresser sur cet aspect en utilisant Ansible, mais c’est un autre sujet ! (j’y reviendrai dans un prochain billet, d’ici quelques semaines/mois).

En attendant, voici un florilège des requests que nous allons exploiter de manière pragmatique pour le moment. Aujourd’hui, point de syntaxe compliquée, nous utiliserons directement le bon vieux curl (promis, Timo, je regarde httpie dès que possible ^^) accompagné de “jq”, un outil en ligne de commande bien pratique pour parser une sortie JSON.

Pour ce qui est du management cluster (les appliances NSX Manager), voici une liste d’URL que vous pouvez utiliser pour interroger l’état de divers services :

On y trouve notamment un moyen d’obtenir rapidement l’état général de votre cluster de management :

Vous noterez que l’authentification est réalisé avec la méthode “Basic” qui consiste à encoder en base64 le user et son password sous la forme “USER:PASSWORD”. On peut également obtenir l’état complet de l’ensemble des transport nodes (edges nodes et compute nodes) via une simplement commande :

Vous pouvez aussi interroger en détail un transport node pour obtenir son état complet, en rajoutant son ID dans l’URL :

On peut aussi récupérer l’état général du edge cluster (regroupant les deux edge nodes) :

Toujours au chapitre de la consultation, vous pouvez récupérer la liste et les propriétés de tous les composants que vous voulez au sein de NSX-T. Ici un listing simple des routeurs logiques :

Plus intéressant, étant donné qu’il n’existe pas – encore – de section spécifique sur l’interface d’admin pour gérer les tags en direct, vous pouvez récupérer tous les tags utilisés dans vos NS Groups. Cela vous permet au moins de faire l’inventaire de ceux que vous êtes sensés exploiter dans votre tagging de VM, par exemple, pour vos politiques de sécurité :

Au final, comme la plupart des API REST récentes, l’accès aux fonctions NSX-T est relativement simple et ne nécessite pas d’expertise particulière en développement, dans un premier temps tout du moins. Pour votre info, vous trouverez la documentation complète chez VMware à cette adresse.