Modern System Administration
by Jennifer Davis
Copyright 2020 Jennifer Davis. All rights reserved.
Printed in the United States of America.
Published by OReilly Media, Inc. , 1005 Gravenstein Highway North, Sebastopol, CA 95472.
OReilly books may be purchased for educational, business, or sales promotional use. Online editions are also available for most titles (http://oreilly.com). For more information, contact our corporate/institutional sales department: 800-998-9938 or corporate@oreilly.com .
- Acquisitions Editor: John Devins
- Development Editor: Virginia Wilson
- Production Editor: Katherine Tozer
- Interior Designer: David Futato
- Cover Designer: Karen Montgomery
- Illustrator: Kate Dullea
- Tech Reviewers: Chris Devers, Yvonne Lam, Tabitha Sable, Brenna Flood, David Blank-Edelman, Amy Tobey, Bryan Smith, Luciano Siqueira, Steven Ragnark, leen Frisch, Tom Limoncelli, Luciano Siqueira, Jess Males, Matt Beran, and Donald Ellis
- November 2022: First Edition
Revision History for the Early Release
- 2019-09-24: First Release
- 2020-01-10: Second Release
- 2020-04-09: Third Release
- 2020-06-26: Fourth Release
- 2020-09-14: Fifth Release
- 2020-12-11: Sixth Release
- 2021-03-05: Seventh Release
- 2021-06-30: Eighth Release
- 2021-10-06: Ninth Release
- 2021-11-23: Tenth Release
- 2022-02-09: Eleventh Release
- 2022-04-22: Twelfth Release
- 2022-06-22: Thirteenth Release
- 2022-09-20: Fourteenth Release
See http://oreilly.com/catalog/errata.csp?isbn=9781492055211 for release details.
The OReilly logo is a registered trademark of OReilly Media, Inc. Modern System Administration, the cover image, and related trade dress are trademarks of OReilly Media, Inc.
While the publisher and the author have used good faith efforts to ensure that the information and instructions contained in this work are accurate, the publisher and the author disclaim all responsibility for errors or omissions, including without limitation responsibility for damages resulting from the use of or reliance on this work. Use of the information and instructions contained in this work is at your own risk. If any code samples or other technology this work contains or describes is subject to open source licenses or the intellectual property rights of others, it is your responsibility to ensure that your use thereof complies with such licenses and/or rights.
978-1-492-05514-3
Preface
When I started my first system administrator job, my mentors told me I needed to read The Red Book (aka the 2nd Edition of UNIX System Administration Handbook by Evi Nemeth, Garth Synder, Scott Seebass, and Trent Hein) and attend USENIX LISA (the first conference dedicated to system administration and targeting large scale siteswhich back then meant serving more than 100 users). And those mentors were right; I learned so much from both experiences. Reading the Red Book gave me a solid grounding on specific hardware and Unix services. It was much more valuable than any available manuals because of its authors collective, practical wisdom. At my first USENIX LISA, I learned from tutorials about the importance of continuous learning (Evi Nemeths Hot Topics in System Administration tutorials) and documentation techniques( Mike Ciavarella s Documentation Techniques for SysAdmins). I met countless other sysadmins at informal gatherings and information-sharing sessions, like the Birds of a Feather (BOF) and hallway tracks.
Beyond all of the specific skills or technologies, I learned that:
System administration work is often cross-cutting across many disciplines requiring collaboration
Random knowledge can turn out to be unexpectedly useful
Stories are crucial to how we learn (and teach) (which is how those random pieces of knowledge are sticky enough for use).
I still felt like there was a gap, a distance for me between system administration as described and my experience of system administration in practice. Since then, Ive realized there is never going to be the book that tells me exactly what I need to do for every given situation. Of course, we learn from sharing stories, but each of us forges our paths for the specific systems we need to maintain in the particular environments we find them.
And that path is becoming more complex. Today, system administrators have an ever-growing list of technologies and third-party services to learn about and leverage to build, deploy, and run that have thousands, sometimes even millions of users.
With that in mind, in this book, I want to share some of my stories and focus on a distilled set of fundamentals and practices that will support your journey to assemble, run, scale, and eventually hand off your systems.
Who Should Read This Book?
I wrote this book for all the experienced system administrators, IT professionals, support engineers, and other operation engineers looking for a map to understand the landscape of contemporary operation technologies and practices.
This book may also be helpful to developers, testers, and anyone who wants to level up their operations skills. I recognize that sometimes a team is made up of folks that only sometimes do ops stuff but have a need to understand the systems more clearly to be effective in their role.
Ive tried to focus on the principles and practices that support all modern operations work. Still, I recognize that my experiences (lots of Unix-flavored administration, primarily with distributed systems) shaped my perspectives. All of this book is relevant to most sysadmins, but every organization has different needs which will drive the activities of those sysadmin teams. For example, suppose your activities are primarily managing site-based infrastructure (i.e., Wi-Fi hotspots, printers, phones). In that case, the material in with Assembling the System will not be as relevant.
What This Book Is Not
This book is not a how-to reference for tools, software applications, or specific operating systems, as there are many quality reference materials to dig into those particular topics. (Although, where relevant, I will point out some recommended materials to level up your skills.)
If you are looking for the instruction manual for a specific tool that gives you a step-by-step guide to administering a system, this isnt that book. There are plenty of operating system and application-specific books and resources out there. A few options I recommend include:
For general Unix administration, the latest version of the Red Book, Unix and Linux System Administration Handbook, 5th Edition by Trent R. Hein, Evi Nemeth, Garth Snyder, Ben Whaley, and Dan Mackin
For general system and network administration and decades of experience, two books from Thomas A. Limoncelli, Strata R. Chalup, and Christina J. Hogan :
The Practice of System and Network Administration: Volume 1: DevOps and other Best Practices for Enterprise IT, 3rd Edition
The Practice of Cloud System Administration: DevOps and SRE Practices for Web Services, Volume 2.
For a deep dive on data application system concerns: Designing Data-Intensive Applications by Martin Kleppmann
If youre focused on managing microservices, check out: Building Microservices 2nd Edition by Sam Newman
Scope of This Book