万本电子书0元读

万本电子书0元读

顶部广告

Practical DevOps电子书

售       价:¥

7人正在读 | 0人评论 9.8

作       者:Joakim Verona

出  版  社:Packt Publishing

出版时间:2016-02-16

字       数:59.6万

所属分类: 进口书 > 外文原版书 > 电脑/网络

温馨提示:数字商品不支持退换货,不提供源文件,不支持导出打印

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Harness the power of DevOps to boost your skill set and make your IT organization perform betterAbout This BookGet to know the background of DevOps so you understand the collaboration between different aspects of an IT organization and a software developerImprove your organization's performance to ensure smooth production of software and servicesDeploy top-quality software and ensure software maintenance and release management with this practical guideWho This Book Is ForThis 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 LearnAppreciate the merits of DevOps and continuous delivery and see how DevOps supports the agile processUnderstand how all the systems fit together to form a larger wholeSet up and familiarize yourself with all the tools you need to be efficient with DevOpsDesign an application that is suitable for continuous deployment systems with Devops in mindStore and manage your code effectively using different options such as Git, Gerrit, and GitlabConfigure a job to build a sample CRUD applicationTest the code using automated regression testing with Jenkins SeleniumDeploy your code using tools such as Puppet, Ansible, Palletops, Chef, and VagrantMonitor the health of your code with Nagios, Munin, and GraphiteExplore the workings of Trac—a tool used for issue trackingIn DetailDevOps 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 processesStyle and approachThis 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.
目录展开

Practical DevOps

Table of Contents

Practical DevOps

Credits

About the Author

About the Reviewers

www.PacktPub.com

Support files, eBooks, discount offers, and more

Why subscribe?

Free access for Packt account holders

Preface

What this book covers

What you need for this book

Who this book is for

Conventions

Reader feedback

Customer support

Downloading the example code

Errata

Piracy

Questions

1. Introduction to DevOps and Continuous Delivery

Introducing DevOps

How fast is fast?

The Agile wheel of wheels

Beware the cargo cult Agile fallacy

DevOps and ITIL

Summary

2. A View from Orbit

The DevOps process and Continuous Delivery – an overview

The developers

The revision control system

The build server

The artifact repository

Package managers

Test environments

Staging/production

Release management

Scrum, Kanban, and the delivery pipeline

Wrapping up – a complete example

Identifying bottlenecks

Summary

3. How DevOps Affects Architecture

Introducing software architecture

The monolithic scenario

Architecture rules of thumb

The separation of concerns

The principle of cohesion

Coupling

Back to the monolithic scenario

A practical example

Three-tier systems

The presentation tier

The logic tier

The data tier

Handling database migrations

Rolling upgrades

Hello world in Liquibase

The changelog file

The pom.xml file

Manual installation

Microservices

Interlude – Conway's Law

How to keep service interfaces forward compatible

Microservices and the data tier

DevOps, architecture, and resilience

Summary

4. Everything is Code

The need for source code control

The history of source code management

Roles and code

Which source code management system?

A word about source code management system migrations

Choosing a branching strategy

Branching problem areas

Artifact version naming

Choosing a client

Setting up a basic Git server

Shared authentication

Hosted Git servers

Large binary files

Trying out different Git server implementations

Docker intermission

Gerrit

Installing the git-review package

The value of history revisionism

The pull request model

GitLab

Summary

5. Building the Code

Why do we build code?

The many faces of build systems

The Jenkins build server

Managing build dependencies

The final artifact

Cheating with FPM

Continuous Integration

Continuous Delivery

Jenkins plugins

The host server

Build slaves

Software on the host

Triggers

Job chaining and build pipelines

A look at the Jenkins filesystem layout

Build servers and infrastructure as code

Building by dependency order

Build phases

Alternative build servers

Collating quality measures

About build status visualization

Taking build errors seriously

Robustness

Summary

6. Testing the Code

Manual testing

Pros and cons with test automation

Unit testing

JUnit in general and JUnit in particular

A JUnit example

Mocking

Test Coverage

Automated integration testing

Docker in automated testing

Arquillian

Performance testing

Automated acceptance testing

Automated GUI testing

Integrating Selenium tests in Jenkins

JavaScript testing

Testing backend integration points

Test-driven development

REPL-driven development

A complete test automation scenario

Manually testing our web application

Running the automated test

Finding a bug

Test walkthrough

Handling tricky dependencies with Docker

Summary

7. Deploying the Code

Why are there so many deployment systems?

Configuring the base OS

Describing clusters

Delivering packages to a system

Virtualization stacks

Executing code on the client

A note about the exercises

The Puppet master and Puppet agents

Ansible

PalletOps

Deploying with Chef

Deploying with SaltStack

Salt versus Ansible versus Puppet versus PalletOps execution models

Vagrant

Deploying with Docker

Comparison tables

Cloud solutions

AWS

Azure

Summary

8. Monitoring the Code

Nagios

Munin

Ganglia

Graphite

Log handling

Client-side logging libraries

The ELK stack

Summary

9. Issue Tracking

What are issue trackers used for?

Some examples of workflows and issues

What do we need from an issue tracker?

Problems with issue tracker proliferation

All the trackers

Bugzilla

Trac

Redmine

The GitLab issue tracker

Jira

Summary

10. The Internet of Things and DevOps

Introducing the IoT and DevOps

The future of the IoT according to the market

Machine-to-machine communication

IoT deployment affects software architecture

IoT deployment security

Okay, but what about DevOps and the IoT again?

A hands-on lab with an IoT device for DevOps

Summary

Index

累计评论(0条) 0个书友正在讨论这本书 发表评论

发表评论

发表评论,分享你的想法吧!

买过这本书的人还买过

读了这本书的人还在读

回顶部