Vous le savez peut-être déjà si vous me suivez sur les réseaux sociaux, je me suis mis en tête de découvrir Python. Comme j’aime bien avoir un objectif quand j’apprends un nouveau langage, j’ai choisi d’intéragir avec des infrastructures VMware vSphere / vSAN (on ne se refait pas !). Qui dit nouveau langage, dit nouvelle façon de travailler. Entre l’installation de Python, des différentes librairies vSphere et vSAN et la configuration d’un éditeur, il y a de quoi faire… je vous propose de détailler les différentes étapes pour disposer d’un environnement de travail fonctionnel pour coder en Python que ce soit sous Windows ou Linux.
Installation de Python
On commence par la base… Vous n’irez pas loin sans l’interpreteur Python. Le mode d’installation varie en fonction des OS. Sous Windows, vous pouvez soit télécharger l’éxecutable et l’installer manuellement, soit utiliser Chocolatey:
C:\> choco install python -y
Sous Linux, il est possible que Python soit déjà installé. Si ce n’est pas le cas, munissez-vous de votre gestionnaire de package préféré. Sous Ubuntu ou Debian, vous pouvez utiliser apt-get:
~$ sudo apt-get install python -y
Il est possible de vérifier que Python est correctement installé en démarrant l’interpréteur en ligne de commande (pour le quitter, il faut entrer la commande exit()).
~$ python Python 2.7.12 (default, Dec 4 2017, 14:50:18) [GCC 5.4.0 20160609] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>>
A partir de maintenant, vous pouvez dores et déjà commencer à coder ! Cependant, si vous souhaitez utiliser les API vSphere et vSAN, il nous reste quelques étapes supplémentaires.
PIP et Pyvmomi sont dans un bateau…
Pour faciliter la vie des développeurs, VMware met à disposition des librairies permettant d’utiliser les API de ses produits. Dans le cadre de Python et vSphere, il est conseillé d’utiliser la librairie Pyvmomi qui vous permettra de manager vos vCenter et ESXi (mais pas vSAN !). Les choses étant parfois bien faites, Python dispose d’un gestionnaire de librairies appelé PIP qui permet de télécharger et d’installer celles qui vous intéressent. Pour les utilisateurs de Windows, PIP est installé par défaut en même temps que Python. Pour les Linuxiens, je vous laisse deviner quoi faire…
~$ sudo apt-get install python-pip -y
On peut ainsi facilement installer Pyvmomi avec la ligne de commande suivante:
~$ pip install pyvmomi
vSAN management SDK pour Python
Vous pensiez en avoir terminé ? Eh bien non… Passons maintenant aux librairies nécessaires pour vSAN. Ici, à ma connaissance, il n’est pas possible d’utiliser PIP. Il va falloir les télécharger manuellement sur le site de VMware, dézipper l’archive, et copier les fichiers vsanmgmtObjects.py
et vsanapiutils.py
dans un répertoire inclus dans le Path de Python (Répertoire d’installation sous Windows ou /usr/lib/PythonX.X sous Linux) ou bien dans le même répertoire où seront stockés vos scripts.
Visual Studio Code et extensions
Pour pouvoir coder dans de bonnes conditions, rien de tel qu’un bon éditeur. Il en existe pour tous les goûts mais personnellement j’utilise Microsoft Visual Studio Code. Il a l’avantage d’être relativement simple à utiliser, de ne pas consommer trop de ressources, d’être Open Source et disponible sur la plupart des OS (Windows bien sur mais aussi Linux et MacOS). Autre point fort, il dispose d’un nombre impressionnant de plugins plus pratiques les uns que les autres dont un dédié à Python !
L’installation est simple, vous trouverez toutes les explications nécessaires sur son site (Indice: exe/deb/choco/apt/yum…) et comble du bonheur, il vous proposera d’installer automatiquement le plugin Python dès que vous ouvrirez un fichier avec l’extension .py.
Executer un script Python
Des scripts sont disponibles sur le site VMware Sample Exchange. Vous pouvez par exemple tester celui-ci. Une fois téléchargé, il vous suffit de l’executer de la manière suivante:
~$ python vsanapicapacity.py -s vCenterServer -u 'vsphere username' -p 'password' --cluster ClusterName
Vous voilà maintenant prêts à écrire vos premières lignes de code ! Si vous ne savez pas par où commencer, Internet regorge de tutoriels pour découvrir Python. VMware propose aussi quelques scripts illustrant comment utiliser les API vSphere et vSAN. En ce qui me concerne, j’ai publié sur GitHub mon premier script nommé vsanmetrics qui permet de collecter des statistiques de performance vSAN. Mais ça, ce sera le sujet d’un prochain article !
[…] vous pouvez déjà aller consulter son premier billet dédié à ses pérégrinations ici. J’ai ensuite lâchement profité de son travail pour y ajouter nos clusters ! Des belles […]
Hello,
Pour l’installation avec Chocolatey, petite inversion de lettre qui bloque l’installation : choco install python -y.
Super initiative de partager ton aventure sur Python !
Matthieu
Oups, merci pour la correction et surtout merci d’avoir lu l’article 😉