万本电子书0元读

万本电子书0元读

顶部广告

Hands-On Enterprise Automation with Python.电子书

售       价:¥

6人正在读 | 0人评论 9.8

作       者:Bassem Aly

出  版  社:Packt Publishing

出版时间:2018-06-28

字       数:36.4万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Invent your own Python scripts to automate your infrastructure About This Book ? Make the most of Python libraries and modules to automate your infrastructure ? Leverage Python programming to automate server configurations and administration tasks ? Efficiently develop your Python skill set Who This Book Is For Hands-On Enterprise Automation with Python is for system administrators and DevOps engineers who are looking for an alternative to major automation frameworks such as Puppet and Chef. Basic programming knowledge with Python and Linux shell scripting is necessary. What You Will Learn ? Understand common automation modules used in Python ? Develop Python scripts to manage network devices ? Automate common Linux administration tasks with Ansible and Fabric ? Managing Linux processes ? Administrate VMware, OpenStack, and AWS instances with Python ? Security automation and sharing code on GitHub In Detail Hands-On Enterprise Automation with Python starts by covering the set up of a Python environment to perform automation tasks, as well as the modules, libraries, and tools you will be using. We’ll explore examples of network automation tasks using simple Python programs and Ansible. Next, we will walk you through automating administration tasks with Python Fabric, where you will learn to perform server configuration and administration, along with system administration tasks such as user management, database management, and process management. As you progress through this book, you’ll automate several testing services with Python scripts and perform automation tasks on virtual machines and cloud infrastructure with Python. In the concluding chapters, you will cover Python-based offensive security tools and learn how to automate your security tasks. By the end of this book, you will have mastered the skills of automating several system administration tasks with Python. Style and approach This book will follow a practical approach to help you script and automate tasks using Python.
目录展开

Title Page

Copyright and Credits

Hands-On Enterprise Automation with Python

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the author

About the reviewer

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

Setting Up Our Python Environment

An introduction to Python

Python versions

Why are there two active versions?

Should you only learn Python 3?

Does this mean I can't write code that runs on both Python 2 and Python 3?

Python installation

Installing the PyCharm IDE

Setting up a Python project inside PyCharm

Exploring some nifty PyCharm features

Code debugging

Code refactoring

Installing packages from the GUI

Summary

Common Libraries Used in Automation

Understanding Python packages

Package search paths

Common Python libraries

Network Python Libraries

System and cloud Python libraries

Accessing module source code

Visualizing Python code

Summary

Setting Up the Network Lab Environment

Technical requirements

When and why to automate the network

Why do we need automation?

Screen scraping versus API automation

Why use Python for network automation?

The future of network automation

Network lab setup

Getting ready – installing EVE-NG

Installation on VMware Workstation

Installation over VMware ESXi

Installation over Red Hat KVM

Accessing EVE-NG

Installing EVE-NG client pack

Loading network images into EVE-NG

Building an enterprise network topology

Adding new nodes

Connecting nodes together

Summary

Using Python to Manage Network Devices

Technical requirements

Python and SSH

Paramiko module

Module installation

SSH to the network device

Netmiko module

Vendor support

Installation and verification

Using netmiko for SSH

Configuring devices using netmiko

Exception handling in netmiko

Device auto detect

Using the telnet protocol in Python

Push configuration using telnetlib

Handling IP addresses and networks with netaddr

Netaddr installation

Exploring netaddr methods

Sample use cases

Backup device configuration

Building the python script

Creating your own access terminal

Reading data from an Excel sheet

More use cases

Summary

Extracting Useful Data from Network Devices

Technical requirements

Understanding parsers

Introduction to regular expressions

Creating a regular expression in Python

Configuration auditing using CiscoConfParse

CiscoConfParse library

Supported vendors

CiscoConfParse installation

Working with CiscoConfParse

Visualizing returned data with matplotLib

Matplotlib installation

Hands-on with matplotlib

Visualizing SNMP using matplotlib

Summary

Configuration Generator with Python and Jinja2

What is YAML?

YAML file formatting

Text editor tips

Building a golden configuration with Jinja2

Reading templates from the filesystem

Using Jinja2 loops and conditions

Summary

Parallel Execution of Python Script

How a computer executes your Python script

Python multiprocessing library

Getting started with multiprocessing

Intercommunication between processes

Summary

Preparing a Lab Environment

Getting the Linux operating system

Downloading CentOS

Downloading Ubuntu

Creating an automation machine on a hypervisor

Creating a Linux machine over VMware ESXi

Creating a Linux machine over KVM

Getting started with Cobbler

Understanding how Cobbler works

Installing Cobbler on an automation server

Provisioning servers through Cobbler

Summary

Using the Subprocess Module

The popen() subprocess

Reading stdin, stdout, and stderr

The subprocess call suite

Summary

Running System Administration Tasks with Fabric

Technical requirements

What is Fabric?

Installation

Fabric operations

Using run operation

Using get operation

Using put operation

Using sudo operation

Using prompt operation

Using reboot operation

Executing your first Fabric file

More about the fab tool

Discover system health using Fabric

Other useful features in Fabric

Fabric roles

Fabric context managers

Summary

Generating System Reports and System Monitoring

Collecting data from Linux

Sending generated data through email

Using the time and date modules

Running the script on a regular basis

Managing users in Ansible

Linux systems

Microsoft Windows

Summary

Interacting with the Database

Installing MySQL on an automation server

Securing the installation

Verifying the database installation

Accessing the MySQL database from Python

Querying the database

Inserting records into the database

Summary

Ansible for System Administration

Ansible terminology

Installing Ansible on Linux

On RHEL and CentOS

Ubuntu

Using Ansible in ad hoc mode

How Ansible actually works

Creating your first playbook

Understanding Ansible conditions, handlers, and loops

Designing conditions

Creating loops in ansible

Trigger tasks with handlers

Working with Ansible facts

Working with the Ansible template

Summary

Creating and Managing VMware Virtual Machines

Setting up the environment

Generating a VMX file using Jinja2

Building the VMX template

Handling Microsoft Excel data

Generating VMX files

VMware Python clients

Installing PyVmomi

First steps with pyvmomi

Changing the virtual machine state

There's more

Using Ansible playbook to manage instances

Summary

Interacting with the OpenStack API

Understanding RESTful web services

Setting up the environment

Installing rdo-OpenStack package

On RHEL 7.4

On CentOS 7.4

Generating answer file

Editing answer file

Run the packstack

Access the OpenStack GUI

Sending requests to the OpenStack keystone

Creating instances from Python

Creating the image

Assigning a flavor

Creating the network and subnet

Launching the instance

Managing OpenStack instances from Ansible

Shade and Ansible installation

Building the Ansible playbook

Running the playbook

Summary

Automating AWS with Boto3

AWS Python modules

Boto3 installation

Managing AWS instances

Instance termination

Automating AWS S3 services

Creating buckets

Uploading a file to a bucket

Deleting a bucket

Summary

Using the Scapy Framework

Understanding Scapy

Installing Scapy

Unix-based systems

Installing in Debian and Ubuntu

Installing in Red Hat/CentOS

Windows and macOS X Support

Generating packets and network streams using Scapy

Capturing and replaying packets

Injecting data inside packets

Packet sniffing

Writing the packets to pcap

Summary

Building a Network Scanner Using Python

Understanding the network scanner

Building a network scanner with Python

Enhancing the code

Scanning the services

Sharing your code on GitHub

Creating an account on GitHub

Creating and pushing your code

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部