Python for System Administration

Purpose

Learn to use Python to automate system administration tasks

Objectives

  • Use Python for processing and generating text files
  • Build Python command-line applications
  • Build a web API and UI using Flask and Python
  • Create a Python module for use with Ansible

Audience

System administrators who want to level up their automation skills using the Python programming language

Prerequisites

Students should be comfortable with basic UNIX command-line interfaces, shell scripting, and networking.

Course Outline

  • Intro to Python
    • Using Jupyter
    • Core Python Syntax
  • Working with text
    • Text processing
    • Structured text processing
    • The Python logging module
    • Generating text with Jinja2
  • Python environments and packaging
    • Using Virtual Environments
    • Packaging Projects for Distribution
  • Building command-line interfaces
    • Replacing shell script functionality
    • Command line interfaces
  • Unit testing
  • Introduction to object-oriented programming
  • Python sysadmin tasks
    • Interfacing with Amazon
    • Using APIs
    • Using SNMP
    • Remote administration with Fabric
  • Multithreading and multiprocessing
  • Building APIs and web UIs with Flask
  • Extending Ansible
    • Ansible overview
    • Ansible module development
    • Project

Please contact us for information on pricing and availability