Muutke küpsiste eelistusi

E-raamat: Automating Junos Administration: Doing More with Less

  • Formaat: 684 pages
  • Ilmumisaeg: 27-Apr-2016
  • Kirjastus: O'Reilly Media
  • Keel: eng
  • ISBN-13: 9781491929315
  • Formaat - PDF+DRM
  • Hind: 35,69 €*
  • * hind on lõplik, st. muud allahindlused enam ei rakendu
  • Lisa ostukorvi
  • Lisa soovinimekirja
  • See e-raamat on mõeldud ainult isiklikuks kasutamiseks. E-raamatuid ei saa tagastada.
  • Formaat: 684 pages
  • Ilmumisaeg: 27-Apr-2016
  • Kirjastus: O'Reilly Media
  • Keel: eng
  • ISBN-13: 9781491929315

DRM piirangud

  • Kopeerimine (copy/paste):

    ei ole lubatud

  • Printimine:

    ei ole lubatud

  • Kasutamine:

    Digitaalõiguste kaitse (DRM)
    Kirjastus on väljastanud selle e-raamatu krüpteeritud kujul, mis tähendab, et selle lugemiseks peate installeerima spetsiaalse tarkvara. Samuti peate looma endale  Adobe ID Rohkem infot siin. E-raamatut saab lugeda 1 kasutaja ning alla laadida kuni 6'de seadmesse (kõik autoriseeritud sama Adobe ID-ga).

    Vajalik tarkvara
    Mobiilsetes seadmetes (telefon või tahvelarvuti) lugemiseks peate installeerima selle tasuta rakenduse: PocketBook Reader (iOS / Android)

    PC või Mac seadmes lugemiseks peate installima Adobe Digital Editionsi (Seeon tasuta rakendus spetsiaalselt e-raamatute lugemiseks. Seda ei tohi segamini ajada Adober Reader'iga, mis tõenäoliselt on juba teie arvutisse installeeritud )

    Seda e-raamatut ei saa lugeda Amazon Kindle's. 

Networks continue to grow in size, complexity, and importance, most businesses want their networks to be flexible, reliable, and cost efficient. Network operators need to avoid downtime due to human error, and they need to manage growing networks without increasing network support staff. How can you balance these competing realities? With automation!

This practical guide will help you understand the automation features of Junos, show you the tools available to program Junos, and explain which tool is best for your particular network requirement.

This book covers:

  • The Junos management architecture
  • APIs for interacting with Junos
  • Libraries for simplifying the interaction with Junos
  • On-device automation scripts to modify and extend Junos behavior
  • Examples of automating network provisioning, monitoring, and troubleshooting
  • Mechanisms for performing high-speed changes (SDN)
Foreword xiii
Preface xv
1 Introduction 1(26)
Benefits of Automation
1(5)
Automation Saves Time
2(1)
Automation Prevents Human Error
3(1)
Automation Saves Memory
4(1)
Automation Prevents Copy/Paste Errors
4(1)
Automation Enables New Services
5(1)
Management System Internals
6(5)
Accessing the Management System
6(1)
Operational Command Flow
7(2)
Configuration Data Flow
9(2)
Configuration Databases and the Commit Model
11(14)
Configuration Databases
11(10)
The Commit Process
21(4)
Information About the Book
25(2)
2 RPC Mechanisms 27(66)
Structured Data Model
27(27)
Structured Data Formats
31(11)
Using Structured Data in Python
42(12)
Running RPCs on a Juncos Device
54(3)
RPC Authorization
56(1)
Operational RPCs
57(14)
RPC Output Formats
59(4)
Discovering Operational RPC Syntax
63(5)
Discovering RPC Reply Syntax
68(3)
Configuration with RPCs
71(20)
Configuration Representation in XML
72(3)
Discovering XML Configuration Syntax
75(3)
Operational RPCs to View and Change the Configuration
78(1)
Viewing the Configuration
79(2)
Changing the Configuration
81(10)
Chapter Summary
91(2)
3 The RESTful API Service 93(70)
Enabling the RESTful API Service
94(1)
HTTP GET Requests
95(4)
Authentication and Authorization
99(4)
Formatting HTTP Responses
103(7)
HTTP POST Requests
110(2)
Adding Parameters to RPCs
112(5)
Multiple RPCs in One Request
117(4)
Configuration
121(5)
RESTful API Explorer
126(5)
Using the RESTful APIs in Python
131(26)
The Preamble
134(2)
Loop Through Each Device
136(3)
Gather LLDP Neighbor Information
139(4)
Gather and Parse Interface Descriptions
143(4)
Check for XML Warnings and Errors
147(1)
Compare Current and Previous LLDP Neighbor Information
148(3)
Build a Candidate Configuration
151(1)
Apply and Commit the Candidate Configuration
152(3)
Parse Multi-RPC Responses
155(2)
Putting It All Together
157(1)
Additional RESTful API Service Configuration
157(2)
Internal Design
159(1)
Limitations
160(1)
Chapter Summary
161(2)
4 Junos PyEZ 163(86)
Installation
164(1)
Device Connectivity
165(10)
Creating a Device Instance
166(3)
Making the Connection
169(1)
Authentication and Authorization
170(1)
Connection Exceptions
171(2)
Facts Gathering
173(1)
Closing the Connection
174(1)
RPC Execution
175(8)
RPC on Demand
175(3)
RPC Parameters
178(1)
RPC Timeout
178(2)
RPC Exceptions
180(3)
RPC Responses
183(11)
lxml Elements
183(7)
Response Normalization
190(2)
jxmlease
192(1)
JSON
193(1)
Operational Tables and Views
194(24)
Prepackaged Operational Tables and Views
194(6)
Creating New Operational Tables and Views
200(12)
Using the New Operational Table and View
212(3)
Applying a Different View
215(2)
Saving and Loading XML Files from Tables
217(1)
Configuration
218(12)
Loading Configuration Changes
218(2)
Configuration Templates
220(6)
Viewing Configuration Differences
226(1)
Committing Configuration Changes
227(2)
Using the Rescue Configuration
229(1)
Utilities
230(1)
A PyEZ Example
231(16)
The Preamble
233(2)
Loop Through Each Device
235(4)
Gather LLDP Neighbor Information
239(1)
Gather and Parse Interface Descriptions
240(2)
Compare Current and Previous LLDP Neighbor Information
242(1)
Build, Apply, and Commit the Candidate Configuration
243(4)
Putting It All Together
247(1)
Limitations
247(1)
NETCONF Libraries for Other Languages
247(1)
Chapter Summary
248(1)
5 Commit Scripts 249(80)
Use Cases
249(4)
Custom Configuration Checks
249(1)
Automatically Fixing Mistakes
250(1)
Dynamically Expanding Configuration
250(3)
Basic Execution Flow
253(5)
XML Transformations
254(1)
Commit Script XML Input and Output Documents
255(2)
Performing Other Operations
257(1)
Changing the Configuration
258(3)
Handling Transient Changes
258(2)
Handling Permanent Changes
260(1)
Writing Commit Scripts in SLAX/XSLT
261(27)
Overview of a SLAX Script
262(2)
Building an Output Document
264(6)
Working with Variables and XML Data
270(5)
Templates
275(7)
Flow Control
282(4)
Predefined Templates
286(2)
Commit Script Examples
288(39)
Example: Custom Configuration Checks
288(14)
Example: Automatically Fixing Mistakes
302(7)
Example: Dynamically Expanding Configuration
309(18)
Chapter Summary
327(2)
6 Op Scripts 329(68)
Use Cases
329(2)
Custom CLI Commands
329(1)
Automatically Responding to Events
330(1)
Customizing Your Device
330(1)
Overview of Op Script Operation
331(7)
Op Script Input Document
333(1)
Op Script Arguments
334(1)
Op Script Document Processing
335(2)
Op Script Output Document
337(1)
Operational and Configuration State
338(12)
Interacting with Operational State
338(6)
Interacting with Configuration State
344(6)
Op Script Input and Output
350(5)
Formatting Output
351(1)
Displaying Immediate Output
351(1)
Obtaining User Input
352(3)
Some Useful Tools for Op and Event Scripts
355(2)
Dampening Events
355(1)
Parsing Strings
356(1)
Generating SNMP Objects and Traps
356(1)
Debugging Op and Event Scripts
357(10)
Printing Progress Messages
357(1)
Trace Messages
358(4)
Syslog Messages
362(1)
The SLAX Debugger
362(5)
Configuring Op Scripts
367(2)
Examples
369(26)
Example: Custom CLI Command
369(11)
Example: Filtering CLI Output
380(15)
Chapter Summary
395(2)
7 Event Scripts and Event Policies 397(44)
Overview of Event Script Operation
397(6)
Event Script Input Document
399(3)
Event Script Arguments
402(1)
Event Script Document Processing
402(1)
Event Script Output Document
403(1)
Event Policies
403(26)
Event Discovery
403(2)
Defining Event Policy Match Criteria
405(7)
Defining Event Policy Actions
412(9)
Event Policy Loops
421(2)
Embedding Event Policies in Event Scripts
423(5)
Testing Event Policies
428(1)
Configuring Event Scripts
429(1)
Example: Responding to a Flapping Link
430(10)
The Event
431(1)
The Event Policy
432(1)
The Event Script
433(5)
The Results
438(2)
Chapter Summary
440(1)
8 Initial Provisioning 441(16)
ZTP
442(10)
Netconify
452(3)
Chapter Summary
455(2)
9 Puppet 457(52)
Puppet Architecture
458(2)
Components for Junos Devices
460(1)
Installation and Configuration
461(10)
Puppet Master
461(2)
Junos Device
463(5)
Creating a Minimal Manifest
468(1)
Executing the Puppet Agent for the First Time
469(2)
The Puppet Language
471(6)
Basic Resource Syntax
471(2)
Variables
473(1)
Strings
474(1)
Classes
474(1)
Conditional Statements
474(2)
Node Definitions
476(1)
Manifest Organization
476(1)
Using Core Resource Types
477(11)
Managing -/.cshrc with the file Resource
477(4)
Managing puppet.conf with an ERB Template
481(3)
Managing the Puppet Agent with the cron Resource
484(4)
Using the netdev Resource Types
488(20)
The netdev_device Resource
488(1)
The netdev_vlan Resource
489(4)
The netdev_interface Resource
493(3)
The netdev_l2_interface Resource
496(4)
The netdev_lag Resource
500(3)
The netdev_stdlib_junos::applygroup Resource
503(5)
Chapter Summary
508(1)
10 Ansible 509(96)
Architecture and Communication
509(5)
Typical Communication
510(3)
Communicating with Junos Managed Nodes
513(1)
Installation and Configuration
514(6)
Installing Ansible
514(2)
Installing the Juniper.junos Role
516(1)
The Ansible Configuration File
516(2)
Junos Authentication and Authorization
518(2)
Creating Ansible Playbooks
520(36)
Inventory
520(3)
Playbooks and Plays
523(5)
Tasks and Modules
528(1)
Handlers
529(2)
Execution
531(6)
Variables
537(11)
Roles
548(4)
Conditionals
552(1)
Loops
553(2)
Vaults
555(1)
Ansible for Junos Modules
556(11)
junos_get_facts
557(1)
junos_zeroize
558(1)
junos_srx_cluster
559(1)
junos_shutdown
560(1)
junos_install_os
561(1)
junos_get_config
562(1)
junos_install_config
563(2)
junos_rollback
565(1)
junos_commit
566(1)
Example Playbooks
567(36)
Inventory, Variables, and Ansible Configuration Settings
567(6)
Gathering Junos Facts and Dynamic Groups
573(10)
Zeroize
583(4)
Initial Configuration
587(10)
Core OSPF Configuration
597(6)
Chapter Summary
603(2)
11 Putting Automation into Practice 605(28)
Use Cases
605(10)
Configuration Use Cases
605(6)
Operational Use Cases
611(4)
Best Practices
615(16)
General Recommendations
615(11)
Tool-Specific Recommendations
626(5)
Wrap-Up
631(2)
Glossary 633(4)
Index 637
Jonathan Looney (JNCIE-SP #254, JNCIE-ER #2, JNCIE-SEC #43, CCIE Routing & Switching #7797 [ Emeritus]), is a senior testing engineer with Juniper Networks. He has managed and automated networks. He has also written tools to automate testing and debugging. He has written training courses for Juniper Networks and also taught an information security course at Syracuse University for several semesters. At Juniper, he currently focuses on testing the Junos kernel and UI features, and conducts product security testing.Stacy Smith is a senior testing engineer with Juniper Networks. He has over 20 years of experience developing network automation for enterprise and service provider networks, as well as automating internal testing of new Junos features at Juniper Networks. His experience with Junos dates back to version 3.1 with one of the first customers to deploy Juniper s first product, the M40 router. He holds a B.S. degree in Computer Science from the United States Air Force Academy and is certified with Juniper Networks as JNCIE-SP #4 and JNCIE-ER #4."