Ce que vous allez apprendre
Vous êtes devops, administrateur, vous gérez des parcs informatiques, vous manipulez des systèmes, des réseaux, des bases de données... Vous souhaitez être plus performant, améliorer vos recherches, automatiser vos tâches, envoyer des mails en fonction des résultats obtenus... Optez pour Python. En vous familiarisant avec les bases de ce langage et les librairies nécessaires, vous serez capable d’écrire des scripts Python pour interagir avec la machine et les utilisateurs. Cette première approche des capacités de Python vous rendra rapidement opérationnel.
Objectifs
- Maîtriser les bases du langage Python
- Posséder une vue d'ensemble des librairies Python disponibles pour les tâches d'administration système
- Être capable d'installer une librairie Python
- Savoir réaliser des tâches d'administration système avec des scripts Python
- Comprendre la syntaxe objet de Python
Public concerné
Administrateurs systèmes, devops, développeurs souhaitant se former à Python pour l'administration système.
Prérequis
Avoir suivi le cours "Initiation à la programmation avec Python" (THO) ou posséder des connaissances de base en algorithmique (variables, tableaux, fonctions). Vérifiez que vous avez les prérequis nécessaires pour profiter pleinement de cette formation en faisant
ce test.
Programme
Les bases du langage Python
- Les principaux types de données: chaînes de caractères, booléennes, nombres.
- Tableaux indicés (listes et tuples), tableaux associatifs (dictionnaires), tableaux d'octets.
- Les 3 structures de contrôles : les boucles for et while, le test if/elif/else.
- Créer et utiliser des fonctions.
- Traiter les erreurs avec la gestion des exceptions try/except/finally.
- Lire et écrire des fichiers textes/binaires.
- Comprendre le principal piège de Python : les types mutable et immutable.
Travaux pratiques
Exercices d'algorithmique de base pour se familiariser avec le langage et être à l'aise avec la manipulation de données : génération de masques d'adresses IP, extractions de chaînes de caractères, formatage de données...
Un peu plus loin avec Python
- Les générateurs : comprendre leur utilité et savoir en créer.
- Les rudiments de la programmation objet pour savoir créer de nouveaux types de données : classes/attributs/méthodes.
- Créer et utiliser une librairie.
Travaux pratiques
Créer une librairie et la réutiliser dans différents scripts. Créer un générateur d'IP.
Les bases de l'administration système
- Analyser des logs avec les expressions régulières.
- Manipuler et analyser des fichiers CSV/Excel avec Pandas.
- Passer des paramètres à un script avec argparse.
- Utiliser une base de données relationnelle.
- Exécuter des commandes système.
Travaux pratiques
Recherche d'intrusions/erreurs dans un fichier de logs. Insertion de fichiers CSV dans une base de données relationnelle. Géolocaliser les adresses IP. Créer une archive tar/zip.
Compléments d'administration système
- Se connecter à une API web avec requests et télécharger le contenu de pages HTML avec scrapy.
- Envoyer des emails.
- Administrer plusieurs machines avec fabric et ansible.