Practical DevOps


Book Description

Harness the power of DevOps to boost your skill set and make your IT organization perform better About This Book Get to know the background of DevOps so you understand the collaboration between different aspects of an IT organization and a software developer Improve your organization's performance to ensure smooth production of software and services Deploy top-quality software and ensure software maintenance and release management with this practical guide Who This Book Is For This book is aimed at developers and system administrators who wish to take on larger responsibilities and understand how the infrastructure that builds today's enterprises works. This book is also great for operations personnel who would like to better support developers. You do not need to have any previous knowledge of DevOps. What You Will Learn Appreciate the merits of DevOps and continuous delivery and see how DevOps supports the agile process Understand how all the systems fit together to form a larger whole Set up and familiarize yourself with all the tools you need to be efficient with DevOps Design an application that is suitable for continuous deployment systems with Devops in mind Store and manage your code effectively using different options such as Git, Gerrit, and Gitlab Configure a job to build a sample CRUD application Test the code using automated regression testing with Jenkins Selenium Deploy your code using tools such as Puppet, Ansible, Palletops, Chef, and Vagrant Monitor the health of your code with Nagios, Munin, and Graphite Explore the workings of Trac—a tool used for issue tracking In Detail DevOps is a practical field that focuses on delivering business value as efficiently as possible. DevOps encompasses all the flows from code through testing environments to production environments. It stresses the cooperation between different roles, and how they can work together more closely, as the roots of the word imply—Development and Operations. After a quick refresher to DevOps and continuous delivery, we quickly move on to looking at how DevOps affects architecture. You'll create a sample enterprise Java application that you'll continue to work with through the remaining chapters. Following this, we explore various code storage and build server options. You will then learn how to perform code testing with a few tools and deploy your test successfully. Next, you will learn how to monitor code for any anomalies and make sure it's running properly. Finally, you will discover how to handle logs and keep track of the issues that affect processes Style and approach This book is primarily a technical guide to DevOps with practical examples suitable for people who like to learn by implementing concrete working code. It starts out with background information and gradually delves deeper into technical subjects.




Devops in Practice


Book Description

DevOps is a cultural and professional movement that's trying to break these walls. Focused on automation, collaboration, tool sharing and knowledge sharing, DevOps has been revealing that developers and system engineers have a lot to learn from one another. In this book, Danilo Sato will show you how to implement DevOps and Continuous Delivery practices so as to raise your system's deployment frequency at the same time as increasing the production application's stability and robustness. You will learn how to automate a web application's build and deploy phases and the infrastructure management, how to monitor the system deployed to production, how to evolve and migrate an architecture to the cloud and still get to know several other tools that you can use on your company




Practical DevOps, Second Edition


Book Description

Understand the benefits of DevOps and continuous delivery and see how they support the agile software development process Key Features Learn how DevOps can accelerate your entire software development life cycle Improve your organization's performance to ensure the smooth production of software and services Get hands-on experience in using efficient DevOps tools to better effect Book Description DevOps is a practical field that focuses on delivering business value as efficiently as possible. DevOps encompasses all code workflows from testing environments to production environments. It stresses cooperation between different roles, and how they can work together more closely, as the roots of the word imply—Development and Operations. Practical DevOps begins with a quick refresher on DevOps and continuous delivery and quickly moves on to show you how DevOps affects software architectures. You'll create a sample enterprise Java application that you’'ll continue to work with through the remaining chapters. Following this, you will explore various code storage and build server options. You will then learn how to test your code with a few tools and deploy your test successfully. In addition to this, you will also see how to monitor code for any anomalies and make sure that it runs as expected. Finally, you will discover how to handle logs and keep track of the issues that affect different processes. By the end of the book, you will be familiar with all the tools needed to deploy, integrate, and deliver efficiently with DevOps. What you will learn Understand how all deployment systems fit together to form a larger system Set up and familiarize yourself with all the tools you need to be efficient with DevOps Design an application suitable for continuous deployment systems with DevOps in mind Store and manage your code effectively using Git, Gerrit, Gitlab, and more Configure a job to build a sample CRUD application Test your code using automated regression testing with Jenkins Selenium Deploy your code using tools such as Puppet, Ansible, Palletops, Chef, and Vagrant Who this book is for If you're a developer or system administrator looking to take on larger responsibilities and understand how the infrastructure that builds today's enterprises works, this is the book for you. This book will also help you greatly if you're an operations worker who would like to better support developers. You do not need any previous knowledge of DevOps to understand the concepts in this book.




DevOps Culture and Practice with OpenShift


Book Description

A practical guide to making the best use of the OpenShift container platform based on the real-life experiences, practices, and culture within Red Hat Open Innovation Labs Key FeaturesLearn how modern software companies deliver business outcomes that matter by focusing on DevOps culture and practicesAdapt Open Innovation Labs culture and foundational practices from the Open Practice LibraryImplement a metrics-driven approach to application, platform, and product, understanding what to measure and how to learn and pivotBook Description DevOps Culture and Practice with OpenShift features many different real-world practices - some people-related, some process-related, some technology-related - to facilitate successful DevOps, and in turn OpenShift, adoption within your organization. It introduces many DevOps concepts and tools to connect culture and practice through a continuous loop of discovery, pivots, and delivery underpinned by a foundation of collaboration and software engineering. Containers and container-centric application lifecycle management are now an industry standard, and OpenShift has a leading position in a flourishing market of enterprise Kubernetes-based product offerings. DevOps Culture and Practice with OpenShift provides a roadmap for building empowered product teams within your organization. This guide brings together lean, agile, design thinking, DevOps, culture, facilitation, and hands-on technical enablement all in one book. Through a combination of real-world stories, a practical case study, facilitation guides, and technical implementation details, DevOps Culture and Practice with OpenShift provides tools and techniques to build a DevOps culture within your organization on Red Hat's OpenShift Container Platform. What you will learnImplement successful DevOps practices and in turn OpenShift within your organizationDeal with segregation of duties in a continuous delivery worldUnderstand automation and its significance through an application-centric viewManage continuous deployment strategies, such as A/B, rolling, canary, and blue-greenLeverage OpenShift’s Jenkins capability to execute continuous integration pipelinesManage and separate configuration from static runtime softwareMaster communication and collaboration enabling delivery of superior software products at scale through continuous discovery and continuous deliveryWho this book is for This book is for anyone with an interest in DevOps practices with OpenShift or other Kubernetes platforms. This DevOps book gives software architects, developers, and infra-ops engineers a practical understanding of OpenShift, how to use it efficiently for the effective deployment of application architectures, and how to collaborate with users and stakeholders to deliver business-impacting outcomes.




Mastering Salesforce DevOps


Book Description

This practical guide brings DevOps principles to Salesforce development. It fits together two major movements within the IT world: the movement to Software/Platform as a Service (SaaS/PaaS), and the DevOps movement. While SaaS and PaaS allow companies to invest in their core competencies rather than maintain their own infrastructure, the goal of DevOps is to optimize the process of delivering software innovation and value. The release of Salesforce DX in late 2017 unlocks the possibility of a true DevOps workflow on Salesforce. But DevOps is new to the Salesforce world and there is not a widespread understanding of its goals and methods, and so adoption of Salesforce DX is still in the early stages. Mastering Salesforce DevOps explains how to build a powerful and comprehensive DevOps workflow for Salesforce—allowing you to finally deploy the world's most innovative platform using the world's most effective and efficient techniques. It addresses the need for a comprehensive guide to DevOps for Salesforce, allowing teams to bring proven practices from the IT world to resolve the hardest problems facing Salesforce developers today. What You Will Learn Improve company performance and software delivery performance using Salesforce DX Translate DevOps concepts into the unique language and practices of Salesforce Understand why and how you can implement Salesforce DX to achieve greater productivity and innovation Enable continuous delivery on Salesforce Build packages and architect code so it can be deployed easilyAllow admins to participate in what has traditionally been a developer workflow Know the techniques for reducing the stress and risk of deploymentApply the full range of automated tests that can be used on Salesforce Who This Book Is for Salesforce developers, release managers, and those managing Salesforce development teams who need a guide to DevOps, and DevOps specialists who need to apply familiar concepts to Salesforce




The DevOps Handbook


Book Description

Increase profitability, elevate work culture, and exceed productivity goals through DevOps practices. More than ever, the effective management of technology is critical for business competitiveness. For decades, technology leaders have struggled to balance agility, reliability, and security. The consequences of failure have never been greater―whether it's the healthcare.gov debacle, cardholder data breaches, or missing the boat with Big Data in the cloud. And yet, high performers using DevOps principles, such as Google, Amazon, Facebook, Etsy, and Netflix, are routinely and reliably deploying code into production hundreds, or even thousands, of times per day. Following in the footsteps of The Phoenix Project, The DevOps Handbook shows leaders how to replicate these incredible outcomes, by showing how to integrate Product Management, Development, QA, IT Operations, and Information Security to elevate your company and win in the marketplace.




Practical Security for Agile and DevOps


Book Description

This textbook was written from the perspective of someone who began his software security career in 2005, long before the industry began focusing on it. This is an excellent perspective for students who want to learn about securing application development. After having made all the rookie mistakes, the author realized that software security is a human factors issue rather than a technical or process issue alone. Throwing technology into an environment that expects people to deal with it but failing to prepare them technically and psychologically with the knowledge and skills needed is a certain recipe for bad results. Practical Security for Agile and DevOps is a collection of best practices and effective implementation recommendations that are proven to work. The text leaves the boring details of software security theory out of the discussion as much as possible to concentrate on practical applied software security that is useful to professionals. It is as much a book for students’ own benefit as it is for the benefit of their academic careers and organizations. Professionals who are skilled in secure and resilient software development and related tasks are in tremendous demand. This demand will increase exponentially for the foreseeable future. As students integrate the text’s best practices into their daily duties, their value increases to their companies, management, community, and industry. The textbook was written for the following readers: Students in higher education programs in business or engineering disciplines AppSec architects and program managers in information security organizations Enterprise architecture teams with a focus on application development Scrum Teams including: Scrum Masters Engineers/developers Analysts Architects Testers DevOps teams Product owners and their management Project managers Application security auditors Agile coaches and trainers Instructors and trainers in academia and private organizations




Learning DevOps: Continuously Deliver Better Software


Book Description

Learn to use some of the most exciting and powerful tools to deliver world-class quality software with continuous delivery and DevOps About This Book Get to know the background of DevOps so you understand the collaboration between different aspects of an IT organization and a software developer Deploy top-quality software and ensure software maintenance and release management with this practical guide This course covers some of the most exciting technology available to DevOps engineers, and demonstrates multiple techniques for using them Real-world and realistic examples are provided to help you as you go about the implementation and adoption of continuous delivery and DevOps Who This Book Is For This course is for developers who want to understand how the infrastructure that builds today's enterprises works, and how to painlessly and regularly ship quality software. What You Will Learn Set up and familiarize yourself with all the tools you need to be efficient with DevOps Design an application that is suitable for continuous deployment systems with DevOps in mind Test the code using automated regression testing with Jenkins Selenium Managing the lifecycle of hosts, from creation to ongoing management using Puppet Razor Find out how to manage, use, and work with Code in the Git version management system See what traps, pitfalls, and hurdles to look out for as you implement continuous delivery and DevOps In Detail Harness the power of DevOps to boost your skill set and make your IT organization perform better. If you're keen to employ DevOps techniques to better your software development, this course contains all you need to overcome the day-to-day complications of managing complex infrastructures the DevOps way. Start with your first module – Practical DevOps - that encompasses the entire flow from code from testing to production. Get a solid ground-level knowledge of how to monitor code for any anomalies, perform code testing, and make sure the code is running smoothly through a series of real-world exercise, and develop practical skills by creating a sample enterprise Java application. In the second module, run through a series of tailored mini-tutorials designed to give you a complete understanding of every DevOps automation technique. Create real change in the way you deliver your projects by utilizing some of the most commendable software available today. Go from your first steps of managing code in Git to configuration management in Puppet, monitoring using Sensu, and more. In the final module, get to grips with the continuous delivery techniques that will help you reduce the time and effort that goes into the delivery and support of software. This Learning Path combines some of the best that Packt has to offer in one complete, curated package. It includes content from the following Packt products: Practical DevOps by Joakim Verona DevOps Automation Cookbook by Michael Duffy Continuous Delivery and DevOps : A Quickstart Guide - Second Edition by Paul Swartout Style and approach This course is an easy to follow project based guide for all those with a keen interest in deploying world-class software using some of the most effective and remarkable technologies available.




Continuous Testing for DevOps Professionals


Book Description

Continuous Testing for DevOps Professionals is the definitive guide for DevOps teams and covers the best practices required to excel at Continuous Testing (CT) at each step of the DevOps pipeline. It was developed in collaboration with top industry experts from across the DevOps domain from leading companies such as CloudBees, Tricentis, Testim.io, Test.ai, Perfecto, and many more. The book is aimed at all DevOps practitioners, including software developers, testers, operations managers, and IT/business executives. It consists of 4 sections: 1. Fundamentals of Continuous Testing 2. Continuous Testing for Web Apps 3. Continuous Testing for Mobile Apps 4. Advancing Continuous Testing All profits from Continuous Testing for DevOps Professionals will be donated to code.org, which is a nonprofit dedicated to expanding access to computer science in schools and increasing participation by women and underrepresented minorities.




Practical Docker with Python


Book Description

Learn the key differences between containers and virtual machines. Adopting a project based approach, this book introduces you to a simple Python application to be developed and containerized with Docker. After an introduction to Containers and Docker you'll be guided through Docker installation and configuration. You'll also learn basic functions and commands used in Docker by running a simple container using Docker commands. The book then moves on to developing a Python based Messaging Bot using required libraries and virtual environment where you'll add Docker Volumes to your project, ensuring your container data is safe. You'll create a database container and link your project to it and finally, bring up the Bot-associated database all at once with Docker Compose. What You'll Learn Build, run, and distribute Docker containers Develop a Python App and containerize it Use Dockerfile to run the Python App Define and run multi-container applications with Docker Compose Work with persisting data generated by and used by Docker containers Who This Book Is For Intermediate developers/DevOps practitioners who are looking to improve their build and release workflow by containerizing applications