Get a hands-on introduction to the Chef, the configuration management tool for solving operations issues in enterprises large and small. Ideal for developers and sysadmins new to configuration management, this guide shows you to automate the packaging and delivery of applications in your infrastructure. You’ll be able to build (or rebuild) your infrastructure’s application stack in minutes or hours, rather than days or weeks. After teaching you how to write Ruby-based Chef code, this book walks you through different Chef tools and configuration management concepts in each chapter, using detailed examples throughout. All you need to get started is command-line experience and familiarity with basic system administration. Configure your Chef development environment and start writing recipes Create Chef cookbooks with recipes for each part of your infrastructure Use Test Kitchen to manage sandbox testing environments Manage single nodes with Chef client, and multiple nodes with Chef Server Use data bags for storing shared global data between nodes Simulate production Chef Server environments with Chef Zero Classify different types of services in your infrastructure with roles Model life stages of your application, including development, testing, staging, and production
“As an author, editor, and publisher, I never paid much attention to the competition—except in a few cases. This is one of those cases. The UNIX System Administration Handbook is one of the few books we ever measured ourselves against.” —Tim O’Reilly, founder of O’Reilly Media “This edition is for those whose systems live in the cloud or in virtualized data centers; those whose administrative work largely takes the form of automation and configuration source code; those who collaborate closely with developers, network engineers, compliance officers, and all the other worker bees who inhabit the modern hive.” —Paul Vixie, Internet Hall of Fame-recognized innovator and founder of ISC and Farsight Security “This book is fun and functional as a desktop reference. If you use UNIX and Linux systems, you need this book in your short-reach library. It covers a bit of the systems’ history but doesn’t bloviate. It’s just straight-forward information delivered in a colorful and memorable fashion.” —Jason A. Nunnelley UNIX® and Linux® System Administration Handbook, Fifth Edition, is today’s definitive guide to installing, configuring, and maintaining any UNIX or Linux system, including systems that supply core Internet and cloud infrastructure. Updated for new distributions and cloud environments, this comprehensive guide covers best practices for every facet of system administration, including storage management, network design and administration, security, web hosting, automation, configuration management, performance analysis, virtualization, DNS, security, and the management of IT service organizations. The authors—world-class, hands-on technologists—offer indispensable new coverage of cloud platforms, the DevOps philosophy, continuous deployment, containerization, monitoring, and many other essential topics. Whatever your role in running systems and networks built on UNIX or Linux, this conversational, well-written ¿guide will improve your efficiency and help solve your knottiest problems.
Learn Chef Provisioning like a boss and discover how to deploy software and manage hosts, along with engaging recipes to automate your cloud and server infrastructure with Chef. About This Book Leverage the power of Chef to transform your infrastructure into code to deploy new features in minutes Get step-by-step instructions to configure, deploy, and scale your applications Master specific Chef techniques to run an entire fleet of machines without breaking a sweat. Who This Book Is For If you are a system administrator, Linux administrator, a cloud developer, or someone who just wants to learn and apply Chef automation to your existing or new infrastructure, then this learning path will show you all you need to know. In order to get the most out of this learning path, some experience of programming or scripting languages would be useful. What You Will Learn Install Chef server on your own hosts Integrate Chef with cloud services Debug your cookbooks and Chef runs using the numerous inspection and logging facilities of Chef Extend Chef to meet your advanced needs by creating custom plugins for Knife and Ohai Create a perfect model system Use the best test-driven development methodologies In Detail Chef is a configuration management tool that turns IT infrastructure into code. Chef provides tools to manage systems at scale. This learning path takes you on a comprehensive tour of Chef's functionality, ranging from its core features to advanced development. You will be brought up to speed with what's new in Chef and how to set up your own Chef infrastructure for individuals, or small or large teams. You will learn to use the basic Chef command-line tools. We will also take you through the core concepts of managing users, applications, and your entire cloud infrastructure. You will learn the techniques of the pros by walking you through a host of step-by-step guides to solve real-world infrastructure automation challenges.You will learn to automate and document every aspect of your network, from the hardware to software, middleware, and all your containers. You will become familiar with the Chef'sProvisioning tool. By the end of this course, you will be confident in how to manage your infrastructure, scale using the cloud, and extend the built-in functionality of Chef itself.The books used in this Learning Path are: 1) Chef Essentials 2) Chef Infrastructure Automation Cookbook – Second Edition 3) Mastering Chef Provisioning Style and approach This fast-paced guide covers the many facets of Chef and will teach administrators to use Chef as a birds-eye lens for their entire system. This book takes you through a host of step-by-step guides to solve real-world infrastructure automation challenges and offers elegant, time-saving solutions for a perfectly described and automated network.
Sharpen your DevOps knowledge with DevOps Bootcamp About This Book Improve your organization's performance to ensure smooth production of software and services. Learn how Continuous Integration and Continuous Delivery practices can be utilized to cultivate the DevOps culture. A fast-paced guide filled with illustrations and best practices to help you consistently ship quality software. Who This Book Is For The book is aimed at IT Developers and Operations—administrators who want to quickly learn and implement the DevOps culture in their organization. What You Will Learn Static Code Analysis using SOnarqube Configure a Maven-based JEE Web Application Perform Continuous Integration using Jenkins and VSTS Install and configure Docker Converge a Chef node using a Chef workstation Accomplish Continuous Delivery in Microsoft Azure VM and Microsoft Azure App Services (Azure Web Apps) using Jenkins Perform Load Testing using Apache JMeter Build and Release Automation using Visual Studio Team Services Monitor Cloud-based resources In Detail DevOps Bootcamp delivers practical learning modules in manageable chunks. Each chunk is delivered in a day, and each day is a productive one. Each day builds your competency in DevOps. You will be able to take the task you learn every day and apply it to cultivate the DevOps culture. Each chapter presents core concepts and key takeaways about a topic in DevOps and provides a series of hands-on exercises. You will not only learn the importance of basic concepts or practices of DevOps but also how to use different tools to automate application lifecycle management. We will start off by building the foundation of the DevOps concepts. On day two, we will perform Continuous Integration using Jenkins and VSTS both by configuring Maven-based JEE Web Application?. We will also integrate Jenkins and Sonar qube for Static Code Analysis. Further, on day three, we will focus on Docker containers where we will install and configure Docker and also create a Tomcat Container to deploy our Java based web application. On day four, we will create and configure the environment for application deployment in AWS and Microsoft Azure Cloud for which we will use Infrastructure as a Service and Open Source Configuration Management tool Chef. For day five, our focus would be on Continuous Delivery. We will automate application deployment in Docker container using Jenkins Plugin, AWS EC2 using Script, AWS Elastic Beanstalk using Jenkins Plugin, Microsoft Azure VM using script, and Microsoft Azure App Services Using Jenkins. We will also configure Continuous Delivery using VSTS. We will then learn the concept of Automated Testing on day six using Apache JMeter and URL-based tests in VSTS. Further, on day seven, we will explore various ways to automate application lifecycle management using orchestration. We will see how Pipeline can be created in Jenkins and VSTS, so the moment Continuous? Integration is completed successfully, Continuous Delivery will start and application will be deployed. On the final day, our focus would be on Security access to Jenkins and Monitoring of CI resources, and cloud-based resources in AWS and Microsoft Azure Platform as a Service. Style and Approach This book is all about fast and intensive learning. This means we don't waste time in helping readers get started. The new content is basically about filling in with highly-effective examples to build new things, solving problems in newer and unseen ways, and solving real-world examples.
Achieve the Continuous Integration and Continuous Delivery of your web applications with ease About This Book Overcome the challenges of implementing DevOps for web applications, familiarize yourself with diverse third-party modules, and learn how to integrate them with bespoke code to efficiently complete tasks Understand how to deploy web applications for a variety of Cloud platforms such as Amazon EC2, AWS Elastic Beanstalk, Microsoft Azure, Azure Web Apps, and Docker Container Understand how to monitor applications deployed in Amazon EC2, AWS Elastic Beanstalk, Microsoft Azure, Azure Web Apps using Nagios, New Relic, Microsoft Azure, and AWS default monitoring features Who This Book Is For If you are a system admin or application and web application developer with a basic knowledge of programming and want to get hands-on with tools such as Jenkins 2 and Chef, and Cloud platforms such as AWS and Microsoft Azure, Docker, New Relic, Nagios, and their modules to host, deploy, monitor, and manage their web applications, then this book is for you. What You Will Learn Grasp Continuous Integration for a JEE application—create and configure a build job for a Java application with Maven and with Jenkins 2.0 Create built-in delivery pipelines of Jenkins 2 and build a pipeline configuration for end-to-end automation to manage the lifecycle of Continuous Integration Get to know all about configuration management using Chef to create a runtime environment Perform instance provisioning in AWS and Microsoft Azure and manage virtual machines on different cloud platforms—install Knife plugins for Amazon EC2 and Microsoft Azure Deploy an application in Amazon EC2, AWS Elastic Beanstalk, Microsoft Azure Web Apps, and a Docker container Monitor infrastructure, application servers, web servers, and applications with the use of open source monitoring solutions and New Relic Orchestrate multiple build jobs to achieve application deployment automation—create parameterized build jobs for end-to-end automation In Detail The DevOps culture is growing at a massive rate, as many organizations are adopting it. However, implementing it for web applications is one of the biggest challenges experienced by many developers and admins, which this book will help you overcome using various tools, such as Chef, Docker, and Jenkins. On the basis of the functionality of these tools, the book is divided into three parts. The first part shows you how to use Jenkins 2.0 for Continuous Integration of a sample JEE application. The second part explains the Chef configuration management tool, and provides an overview of Docker containers, resource provisioning in cloud environments using Chef, and Configuration Management in a cloud environment. The third part explores Continuous Delivery and Continuous Deployment in AWS, Microsoft Azure, and Docker, all using Jenkins 2.0. This book combines the skills of both web application deployment and system configuration as each chapter contains one or more practical hands-on projects. You will be exposed to real-world project scenarios that are progressively presented from easy to complex solutions. We will teach you concepts such as hosting web applications, configuring a runtime environment, monitoring and hosting on various cloud platforms, and managing them. This book will show you how to essentially host and manage web applications along with Continuous Integration, Cloud Computing, Configuration Management, Continuous Monitoring, Continuous Delivery, and Deployment. Style and approach This is a learning guide for those who have a basic knowledge of application deployment, configuration management tools, and Cloud computing, and are eager to leverage it to implement DevOps for web applications using end-to-end automation and orchestration.
If you are a system administrator, Linux administrator, cloud developer, cloud administrator, or someone who just wants to learn and apply Chef automation to your existing or new infrastructure, this book is for you. Some real-time understanding of IT processes and familiarity with Linux systems, Ruby, and JSON is essential.
Take advantage of Chef’s highly customizable design to tackle specific automation issues that you can’t solve by simply using Chef’s tools, resources, and services out of the box. With this practical guide, you’ll examine the internal structure of this configuration management technology and learn where, how, and why to add custom code. Author Jon Cowie not only provides code snippets and practical advice for customizing Chef, but also helps you determine case by case whether it’s in your best interests to customize at all. If you have intermediate-to-advanced Chef experience, this book is indispensable. Explore Chef’s typical setups and why you’d want to customize them Learn the Ruby concepts needed to write customizations Customize the Chef run process and explore Chef’s internal classes Gain more insight into your Chef runs through handlers and Chef’s event stream Level up your Chef recipes by writing your own resources and providers Create and extend plugins for Knife—Chef’s command-line tool Interact with the Chef API to write scripts and reports Learn how to contribute customizations to the Chef community
If you are a developer who wants to have your development environment accurately reflect your live servers to tackle the ever-increasing complexity of web and software projects, this book is most certainly intended for you! It's assumed that you know the basics of Linux systems in the context of web-based projects.
This book is your hands-on guide to infrastructure provisioning and configuration management in the cloud using Chef’s open source, cross-platform toolset. With over 10,000 customers joining the Microsoft Azure cloud platform each week and steadily increasing usage, the need for automation approaches has never been greater. This book provides both practical examples and a much needed strategic overview of how these two technologies can be combined. Using Chef with Microsoft Azure takes you through the process of writing ‘recipes’ in Chef to describe your infrastructure as code, and simplify your configuration management processes. You’ll also meet the Chef tools that can be used to provision complete environments within Microsoft Azure. There are now a wide variety of tools and approaches that can be taken to provision resources such as virtual machines within Microsoft Azure. This book demonstrates them, discusses the benefits and weaknesses of each approach, and shows how a continuous provisioning pipeline can be established as part of a reliable, repeatable, and robust provisioning process. Each chapter has practical exercises that highlight the capabilities of both Chef and Microsoft Azure from an automation perspective and can be executed on Windows, Mac, or Linux platforms. In this book, you’ll learn: The purpose and principles behind automated provisioning Microsoft Azure concepts and management options How to deploy Chef Azure Virtual Machine Extensions using PowerShell, Azure command-line tools, and Chef Provisioning Chef Provisioning techniques, including provisioning PaaS resources such as KeyVault How to integrate quality tooling into the Chef development lifecycle, including Test Kitchen and InSpec with Azure compute resources How to set up a pipeline for continuous provisioning with Chef and Azure Who This Book Is For This book is for infrastructure platform and operations engineers and DevOps specialists/practitioners working with infrastructure and platform provisioning on Microsoft's public cloud, Azure. An understanding of programming in any language would be beneficial, but not necessary as the examples are designed to be easily readable by anyone with general IT experience. While it is expected most users picking up this book will be on the Windows platform, a good proportion of compute workload on the Azure platform is Linux based. As a result the book includes examples that are relevant to both Windows and Linux platforms.
Leverage the power of Python, Ansible and other network automation tools to make your network robust and more secure Key Features Get introduced to the concept of network automation with relevant use cases Apply Continuous Integration and DevOps to improve your network performance Implement effective automation using tools such as Python, Ansible, and more Book Description Network automation is the use of IT controls to supervise and carry out everyday network management functions. It plays a key role in network virtualization technologies and network functions. The book starts by providing an introduction to network automation, and its applications, which include integrating DevOps tools to automate the network efficiently. It then guides you through different network automation tasks and covers various data digging and performing tasks such as ensuring golden state configurations using templates, interface parsing. This book also focuses on Intelligent Operations using Artificial Intelligence and troubleshooting using chatbots and voice commands. The book then moves on to the use of Python and the management of SSH keys for machine-to-machine (M2M) communication, all followed by practical use cases. The book also covers the importance of Ansible for network automation, including best practices in automation; ways to test automated networks using tools such as Puppet, SaltStack, and Chef; and other important techniques. Through practical use-cases and examples, this book will acquaint you with the various aspects of network automation. It will give you the solid foundation you need to automate your own network without any hassle. What you will learn Get started with the fundamental concepts of network automation Perform intelligent data mining and remediation based on triggers Understand how AIOps works in operations Trigger automation through data factors Improve your data center's robustness and security through data digging Get access infrastructure through API Framework for chatbot and voice interactive troubleshootings Set up communication with SSH-based devices using Netmiko Who this book is for If you are a network engineer or a DevOps professional looking for an extensive guide to help you automate and manage your network efficiently, then this book is for you. No prior experience with network automation is required to get started, however you will need some exposure to Python programming to get the most out of this book.