Pro Python System Administration

Front Cover
Apress, Jul 25, 2010 - Computers - 416 pages

As time goes on, system administrators are presented with increasingly complicated challenges. In the early days, a team of engineers might have had to look after one or two systems. These days, one engineer can administer hundreds or thousands of systems.

System administrators are gradually replacing their tools with more advanced and flexible ones. One of the choices is Python. Structurally, Python is a modern, high-level language with a very clean syntax. Python comes with many built-in libraries that can make automation tasks easier. It also has extensive set of third-party libraries and a very active development community. This flexibility makes Python a good choice for a wide variety of tasks, from prototyping science applications to system maintenance and administration jobs.

  • This book explains and shows how to apply Python scripting in practice. Unlike the majority of the Python books, it will show you how to approach and resolve real-world issues that most system administrators will come across in their careers.
  • In this book, you will find several projects in the categories of network administration, web server administration, and monitoring and database management. In each project, we will define the problem, design the solution, and go through the more interesting implementation steps.
  • Each project is accompanied with the source code of a fully working prototype, which you’ll be able to use immediately or adapt to your requirements and environment.
What you’ll learn
  • Solve real-world system administration problems using Python.
  • Manage devices with SNMP and SOAP.
  • Build a distributed monitoring system.
  • Manage web applications and parse complex log files.
  • Automatically monitor and manage MySQL databases.
Who this book is for

This book is primarily aimed at experienced system administrators whose day-to-day tasks involve looking after and managing small-to-medium-sized server estates. It will also be beneficial for system administrators who want to learn more about automation and want to apply their Python knowledge to solve various system administration problems.

Python developers will also benefit from reading this book, especially if they are involved in developing automation and management tools.

This book assumes that readers already use Python and are comfortable with the language. Most of the Linux distributions come with Python and various libraries (such as Django, PIL and SciPy) packaged and readily available, but basic knowledge of installing packages in a Linux/Unix environment is advised.

Table of Contents
  1. Reading and Collecting Performance Data Using SNMP1
  2. Managing Devices Using the SOAP API
  3. Creating a Web Application for IP Address Accountancy
  4. Integrating the IP Address Application with DHCP
  5. Maintaining a List of Virtual Hosts in an Apache Configuration File
  6. Gathering and Presenting Statistical Data from Apache Log Files
  7. Performing Complex Searches and Reporting on Application Log Files
  8. A Web Site Availability Check Script for Nagios
  9. Management and Monitoring Subsystem
  10. Remote Monitoring Agents
  11. Statistics Gathering and Reporting
  12. Automatic MySQL Database Performance Tuning
  13. Using Amazon EC2/S3 as a Data Warehouse Solution

What people are saying - Write a review

We haven't found any reviews in the usual places.

Other editions - View all

About the author (2010)

Rytis Sileika has over ten years experience in system administration and system design. Previously, he worked as a system integration engineer and platform designer for enterprises, designing and building telecom platforms. Currently, Rytis administers systems in one of the largest online betting exchanges.