Automation with Chef • Existing Automation Tools and Comparison with Chef

Total Page:16

File Type:pdf, Size:1020Kb

Automation with Chef • Existing Automation Tools and Comparison with Chef Free Sample In this package, you will find: The authors biography A preview chapter from the book, Chapter 1 'An Overview of Automation and Advent of Chef ' A synopsis of the book’s content More information on Learning Chef About the Authors Rishabh Sharma is currently working as a chief technology officer (CTO) at JOB Forward, Singapore ( ). JOB Forward was the first social recruiting platform in Singapore. Prior to working for JOB Forward, he worked for Wipro Technologies, Bangalore, as a solution delivery analyst. He was involved in the research projects of cloud computing, proof of concepts (PoC), infrastructure automation, big data solutions, and various giant customer projects related to cloud infrastructure and application migration. He completed his master's thesis from Jaypee Institute of Information Technology, Noida, in cloud computing and has in-depth knowledge of distributed systems and cloud computing research issues of the industry. In a short span of time, he has worked on various technologies and tools, such as Java/J2EE, SAP(ABAP), AWS, OpenStack, DevOps, big data, and Hadoop. He has authored four technical textbooks until now. He recently launched Cloud Computing: fundamentals, industry approach and trends, Wiley India publication, which is a comprehensive book on cloud computing and covers academic syllabi of all Indian universities. Before this, he has authored Advance Computing Technology for Gujarat Technical University (GTU) and Software Quality Engineering and Mobile Computing for Uttar Pradesh Technical University (UPTU). He has also authored many research papers in international journals and IEEE on a variety of issues related to cloud computing. He is also an open source enthusiast and writes for the Open Source For You (OSFY) magazine. His other interests are mimicry, fun, horoscope reading, traveling, meditation, spirituality, and yoga. You can get in touch with him at . Mitesh Soni is a technical lead who has 7.5 years of experience in the IT industry. He is a SCJP, SCWCD, and VCP. While he has interest in technology, his real passion is to play with kids and with his camera and capture photographs at Indroda Park. He lives in the capital of Mahatma Gandhi's home state. He loves to spend time alone and loves walking at Punit van. Learning Chef Chef is an open source configuration management tool that helps to transform infrastructure into simple code. It implies that the process of building and rebuilding IT infrastructure, configuration management, and scaling is possible in a short span of time in accordance with the customer's needs in different deployment environments. Businesses can gain huge competitive advantage in the increasingly digital economy by enabling business transformations and by automating the pipeline of building, testing, and deploying new applications. It also provides a way to implement innovative features by utilizing less time and saving costs. Organizations expect quick response in terms of application delivery and industries to gain competitive advantages and hence, DevOps culture is getting popular day by day. The DevOps culture provides effective collaboration, efficient integration, and effectual communication and feedback between software developers and operations teams. In order to fulfill the requirements of DevOps, configuration management tools, such as Chef, are used to fill the gap. DevOps includes a continuous delivery system that is an automated process to accelerate the release of an application. Chef is an automation platform for continuous delivery, as it provides a way to model and manage infrastructure as a code. With Chef, it is possible to achieve faster or lesser time to market and good/high quality application. Chef was built from the very beginning with the cloud concepts in mind. Chef allows you to dynamically provision and deprovision cloud resources to keep up with the demands when the usage is high and when there is a peak in traffic. With Chef, you can take advantage of all the flexibility and cost savings that the cloud offers. Chef is integrated with all the major cloud service providers, such as Amazon EC2, VMware, IBM SmartCloud, HP Cloud, OpenStack, Windows Azure, Joyent Cloud, Rackspace, Google Compute Engine, and so on. This book covers all the basic and architectural concepts of Chef with step-by-step explanations, hands-on exercises, and screenshots. Some best practices and customer's case studies are also included. They provide you with practical understanding to automate your infrastructure into code. What This Book Covers Chapter 1, An Overview of Automation and Advent of Chef, introduces automation and discusses its need in the current market scenario. It also describes the DevOps culture in detail with its benefits in the Agile development. This chapter discusses the importance of cloud computing and how DevOps and cloud computing can bring competitive advantages to businesses. It includes an introduction of Chef, its features, the existing configuration management tools and their comparison. Chapter 2, Different Components of Chef's Anatomy, covers the Chef automation, Chef framework, Chef components and the types of Chef servers. It includes information of popular community cookbooks. This chapter provides a quick, hands-on experience of the Hosted Chef server. Chapter 3, Workstation Setup and Cookbook Creation, delves into VirtualBox, Vagrant, Git, and the Ruby installation. It also covers a step-by-step explanation of the workstation setup and how to create a Chef repository. This chapter also includes details on how to launch a virtual machine with Vagrant and a workstation setup; here, you will the learn steps to create and upload a simple cookbook. Chapter 4, Learning about Cookbooks, focuses on the types of cookbooks and components of a cookbook, such as definitions, fi les, libraries, resources and providers, templates, lightweight resources, and metadata in detail. Chapter 5, Managing the Nodes, covers basic operations, such as adding, deleting nodes and bootstrapping the target nodes. This chapter also introduces a search facility, data bags, and types of handlers. You will also learn different phases of a Bootstrap operation here. Chapter 6, Working with an Open Source Chef Server, focuses on in-depth explanation of how to install the open source Chef server, and how to upgrade it. This chapter also covers details of how to use and upload a community cookbook of Tomcat on an open source Chef server and how to install the Tomcat cookbook on a node registered with the open source Chef server. Chapter 7, Working with the On-premises Chef Server Setup, introduces the Private Chef server and its benefits, types of Private Chef installations, prerequisites and installing procedure for the standalone Private Chef, tiered Private Chef, high-availability Chef and also details of how to manage Private Chef. Chapter 8, Managing Chef on Cloud Infrastructure, covers the basic concepts of cloud computing, details of a Cloud's infrastructure, and why Chef can be used with a Cloud infrastructure. This chapter also describes the AWS EC2 bootstrapping and Rackspace Cloud server bootstrapping using Chef in detail. Chapter 9, Best Practices while Using Chef, introduces Chef's anti-patterns and patterns in a predefined framework. This chapter will give you insight of how to test cookbooks and best practices for usage of Chef. Chapter 10, Case Studies on Different Chef Deployments, focuses on case studies of the Hosted Chef deployment, Private Chef deployment, open source Chef deployment, and Chef-solo deployment. This chapter also describes the advantages of Chef in the current IT scenario across different industries. An Overview of Automation and Advent of Chef "The fi rst rule of any technology used in a business is that automation applied to an effi cient operation will magnify the effi ciency. The second is that automation applied to an ineffi cient operation will magnify the ineffi ciency." - Bill Gates Before moving to the details of different Chef components and other practical things, it is recommended that you know the foundation of automation and some of the existing automation tools. This chapter will provide you with a conceptual understanding of automation, and a comparative analysis of Chef with the existing automation tools. In this chapter, we will cover the following topics: • An overview of automation • The need for automation • A brief introduction of Chef • The salient features of Chef • Automation with Chef • Existing automation tools and comparison with Chef [ 1 ] An Overview of Automation and Advent of Chef Automation Automation is the process of automating operations that control, regulate, and administrate machines, disparate systems, or software with little or no human intervention. In simple English, automation means automatic processing with little or no human involvement. An automated system is expected to perform a function more reliably, effi ciently, and accurately than a human operator. The automated machine performs a function at a lower cost with higher effi ciency than a human operator, thereby, automation is becoming more and more widespread across various service industries as well as in the IT and software industry. Automation basically helps a business in the following ways: • It helps to reduce the complexities of processes and sequential steps • It helps to reduce the possibilities of human error in repeatable tasks • It helps to consistently and predictably improve the performance of a system
Recommended publications
  • Scikit-Hubness Release 0.21.2 Roman Feldbauer
    scikit-hubness Release 0.21.2 Roman Feldbauer Sep 01, 2020 GETTING STARTED 1 Installation 3 2 Quick start example 5 3 User guide 7 4 API Documentation 67 5 History of scikit-hubness 145 6 Contributing 147 7 Changelog 151 8 Getting started 155 9 User Guide 157 10 API Documentation 159 11 History 161 12 Development 163 13 What’s new 165 Bibliography 167 Python Module Index 169 Index 171 i ii scikit-hubness, Release 0.21.2 scikit-hubness is a Python package for analysis of hubness in high-dimensional data. It provides hubness reduction and approximate nearest neighbor search via a drop-in replacement for sklearn.neighbors. GETTING STARTED 1 scikit-hubness, Release 0.21.2 2 GETTING STARTED CHAPTER ONE INSTALLATION 1.1 Installation from PyPI The current release of scikit-hubness can be installed from PyPI: pip install scikit-hubness 1.2 Dependencies All strict dependencies of scikit-hubness are automatically installed by pip. Some optional dependencies (certain ANN libraries) may not yet be available from PyPI. If you require one of these libraries, please refer to the library’s documentation for building instructions. For example, at the time of writing, puffinn was not available on PyPI. Building and installing is straight-forward: git clone https://github.com/puffinn/puffinn.git cd puffinn python3 setup.py build pip install . 1.3 Installation from source You can always grab the latest version of scikit-hubness directly from GitHub: cd install_dir git clone [email protected]:VarIr/scikit-hubness.git cd scikit-hubness pip install -e .
    [Show full text]
  • Dask-Distance Documentation Release 0.2.0+4.G3747e9e.Dirty
    dask-distance Documentation Release 0.2.0+4.g3747e9e.dirty John Kirkham Dec 30, 2017 Contents 1 dask-distance 3 2 Installation 5 3 Usage 7 4 API 9 5 Contributing 17 6 Credits 21 7 Indices and tables 23 Python Module Index 25 i ii dask-distance Documentation, Release 0.2.0+4.g3747e9e.dirty Contents: Contents 1 dask-distance Documentation, Release 0.2.0+4.g3747e9e.dirty 2 Contents CHAPTER 1 dask-distance Distance computations with Dask (akin to scipy.spatial.distance) • Free software: BSD 3-Clause • Documentation: https://dask-distance.readthedocs.io. 1.1 Features • TODO 1.2 Credits This package was created with Cookiecutter and the dask-image/dask-image-cookiecutter project template. 3 dask-distance Documentation, Release 0.2.0+4.g3747e9e.dirty 4 Chapter 1. dask-distance CHAPTER 2 Installation 2.1 Stable release To install dask-distance, run this command in your terminal: $ pip install dask-distance This is the preferred method to install dask-distance, as it will always install the most recent stable release. If you don’t have pip installed, this Python installation guide can guide you through the process. 2.2 From sources The sources for dask-distance can be downloaded from the Github repo. You can either clone the public repository: $ git clone git://github.com/jakirkham/dask-distance Or download the tarball: $ curl -OL https://github.com/jakirkham/dask-distance/tarball/master Once you have a copy of the source, you can install it with: $ python setup.py install 5 dask-distance Documentation, Release 0.2.0+4.g3747e9e.dirty 6 Chapter 2.
    [Show full text]
  • Saltstack for Devops Extremely Fast and Simple IT Automation and Configuration Management
    Saltstack For DevOps Extremely fast and simple IT automation and configuration management Aymen El Amri This book is for sale at http://leanpub.com/saltstackfordevops This version was published on 2015-12-25 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do. This work is licensed under a Creative Commons Attribution-NonCommercial-NoDerivs 3.0 Unported License Tweet This Book! Please help Aymen El Amri by spreading the word about this book on Twitter! The suggested tweet for this book is: I just bought SaltStack For DevOps book. Check it out : https://leanpub.com/saltstackfordevops cc @Salt4DevOps The suggested hashtag for this book is ##Salt4DevOps. Find out what other people are saying about the book by clicking on this link to search for this hashtag on Twitter: https://twitter.com/search?q=##Salt4DevOps Also By Aymen El Amri The Jumpstart Up Contents Preface ............................................... 1 Every Book Has A Story, This Story Has A Book ...................... 1 To whom is this book addressed ? ............................... 2 Conventions used in this book ................................ 2 How to properly enjoy this book ............................... 3 How to contribute to this book ? ............................... 4 About The Author ......................................
    [Show full text]
  • A Study of Configuration Management Systems Solutions for Deployment and Configuration of Software in a Cloud Environment
    TVE 14 013 maj Examensarbete 15 hp Juni 2014 A Study of Configuration Management Systems Solutions for Deployment and Configuration of Software in a Cloud Environment Kim Torberntsson Ylva Rydin Abstract A Study of Configuration Management Systems Kim Torberntsson & Ylva Rydin Teknisk- naturvetenskaplig fakultet UTH-enheten The amount of servers needed in the world is constantly increasing along with the end users Besöksadress: constantly increasing demand for large scale network Ångströmlaboratoriet Lägerhyddsvägen 1 solutions and IT- services. With virtualisation and cloud Hus 4, Plan 0 computing it has become much easier to create and deploy large numbers of virtual servers, but the servers Postadress: still need configuration. This is precisely what Box 536 751 21 Uppsala configuration management systems (CMS) can help with. Cloud providers often want to include built in Telefon: support for these systems to simplify for their 018 – 471 30 03 customers. The purpose of the study was to compare Telefax: the different CMS available and to recommend the 018 – 471 30 00 ones that deserve to be supported by a cloud provider. A general study, based on parameters defined in the Hemsida: report, was made on twenty different CMS. The five top http://www.teknat.uu.se/student solutions were Puppet, Chef, CFEngine, Salt and Ansible, where Salt and Ansible are more lightweight solutions and Puppet, Chef and CFEngine are more advanced. They were included in a comparison study based on opinions and reviews from the Internet. The recommendation for a hypothetical cloud provider is to include support for several CMS if possible. If not, it is recommended to support one of the lightweight ones, preferably Salt, and one of the more advanced, preferably Puppet.
    [Show full text]
  • Saltstack for Devops Extremely Fast and Simple IT Automation and Configuration Management
    Saltstack For DevOps Extremely fast and simple IT automation and configuration management Aymen El Amri This book is for sale at http://leanpub.com/saltstackfordevops This version was published on 2018-04-29 This is a Leanpub book. Leanpub empowers authors and publishers with the Lean Publishing process. Lean Publishing is the act of publishing an in-progress ebook using lightweight tools and many iterations to get reader feedback, pivot until you have the right book and build traction once you do. © 2015 - 2018 Aymen El Amri Tweet This Book! Please help Aymen El Amri by spreading the word about this book on Twitter! The suggested tweet for this book is: I just bought SaltStack For DevOps book. Check it out : https://leanpub.com/saltstackfordevops cc @Salt4DevOps The suggested hashtag for this book is #Salt4DevOps. Find out what other people are saying about the book by clicking on this link to search for this hashtag on Twitter: #Salt4DevOps Also By Aymen El Amri The Jumpstart Up Painless Docker Contents Preface ............................................... 2 Every Book Has A Story, This Story Has A Book ...................... 2 To Whom Is This Book Addressed? .............................. 3 Conventions Used In This Book ................................ 4 How To Properly Enjoy This Book .............................. 4 How To Contribute To This Book? .............................. 5 About The Author ....................................... 6 Introduction ............................................ 7 Configuration Management And Data
    [Show full text]