- ホーム
- > 洋書
- > 英文書
- > Computer / General
Full Description
DevOps for VMware (R) Administrators is the first book focused on using DevOps tools and practices with VMware technologies. The authors introduce high-value tools from third parties and VMware itself, and guide you through using them to improve the performance of all your virtualized systems and applications. You'll walk through automating and optimizing configuration management, provisioning, log management, continuous integration, and more.The authors also offer step-by-step coverage of deploying and managing applications at scale with Docker containers and Google Kubernetes. They conclude with an up-to-the-minute discussion of VMware's newest DevOps initiatives, including VMware vRealize Automation and VMware vRealize Code Stream.Coverage includes* Understanding the challenges that DevOps tools and practices can help VMware administrators to solve* Using Vagrant to quickly deploy Dev and Test environments that match production system specifications* Writing Chef "recipes" that streamline server configuration and maintenance* Simplifying Unix/Linux configuration management and orchestration with Ansible* Implementing Docker containers for faster and easier application management* Automating provisioning across the full lifecycle with Razor * Integrating Microsoft PowerShell Desired State Configuration (DSC) and VMware PowerCLI to automate key Windows Server and vSphere VM admin tasks* Using Puppet to automate infrastructure provisioning, configuration, orchestration, and reporting * Supercharging log management with ELK (Elasticsearch, Logstash, Kibana)* Supporting DevOps source code management with Git and continuous integration practices with Jenkins* Achieving continuous integration, delivery, and deployment with VMware's vRealize Code Stream
Contents
About the Authors xviiAbout the Reviewers xviiiAcknowledgments xixAbout the Contributing Author xxIntroduction xxiiAbout This Book xxiiiYou the Reader xxiiiWhat This Book Covers xxiiiPart 1 Introduction to DevOps1 Introduction to DevOps 1An Overview of DevOps Principles 1Implement Systems Thinking 3Change the Approach to Team Interactions 3Change the Approach to Infrastructure Deployment 5Change the Approach to Software Development and Deployment 6Collect and Respond to Useful Systems Feedback Often and Adjust Accordingly 7Furthering Your DevOps Knowledge and Skills 7Summary 8References 82 DevOps Tools 9Organizing for Success: Kanban 9Server Deployment 13Confi guration Management 14Continuous Integration 14Log Analysis 15Summary 15References 153 Setting Up a DevOps Confi guration Management Test Environment 17Environment Provisioning with AutoLab 17Environment Provisioning with Vagrant 18Creating Images with Packer 23Managing Source Code 24Using Git 24Summary 31References 31Part 2 Puppet4 Introduction to Puppet 33Puppet Architecture 33Standalone Deployment 34Master-Agent Deployment 34Preparing Your Puppet Test Lab 37Puppet Resources 38Puppet Manifests 39Conditional Expressions and Variables 43Puppet Modules 46Puppet Forge 48Creating Your First Puppet Module 48Puppet Module Initialization Manifest (init.pp) 50Templates 51Using a Puppet Module 54Final Step: Version Control Commit 54Summary 55Reference 555 Systems Management Tasks with Puppet 57Optimizing the Web Tier with Data Separation 58Parameters Class (params.pp) 59Hiera 63Node Classifi cation 67Application Tier 68Database Tier 70Implementing a Production Recommended Practice 70Deploying the Application Environment 71Summary 71Reference 716 VMware vSphere Management with Puppet 73Puppet's Cloud Provisioner for VMware vSphere 73Preparing VM Templates 73Preparing Puppet Master 749780133846478_ROBERTS.indb x 3/5/15 4:20 PMContents xiVMware's Management Modules 77Using the vmware/vcenter Module 77Summary 83References 83Part 3 Chef7 Introduction to Chef 85What Is Chef? 85Core Philosophies Behind Chef 86Order of Recipe 86Idempotence 86API-Based Server 87The Client Does All the Legwork 87Test-Driven Infrastructure 87Chef Terminology 87Recipe 88Cookbook 88Attributes 88Role 88Run List 88Resource 88Environments 88The Diff erence Between Hosted Chef and Chef Server 89Hosted Chef 89Chef Server 89Introduction to ChefDK 90What Is ChefDK? 90Installing ChefDK 90Using Knife 92Creating Your First Hello World Chef Recipe 94Summary 988 Systems Management Tasks with Chef 99Signing Up for Hosted Chef 100Setting Up Local Repo with the Starter Kit 102Community Cookbooks 105Setting Up System Management 105Prep/Setup System Management Task 1: Managing Time 105Prep/Setup System Management Task 2: Managing Root Password 1089780133846478_ROBERTS.indb xi 3/5/15 4:20 PMxii ContentsConfi guring Your Virtual Guests 109Installing Chef Client 109Systems Management Tasks 111Running Chef Client 113Managing the Root Password 115Creating Two Environment Files 116Uploading Environment Files to your Hosted Chef Organization 117Assigning Each Server to an Environment 118Modifying Each Server's Run List to Run the Managedroot Cookbook 119Applying Your Changes to Your Nodes 120Validating the Enforced Policy 120Summary 122References 1239 VMware vSphere Management with Chef 125Knife Plugins 126Getting Started with knife-vsphere 128Confi guring the knife.rb File 128Validating the Confi guration 130Putting It All Together 130Chef Provisioning 134Chef Provisioning Architecture 134Getting Started with Chef Provisioning 135Spinning Up Some Nodes 136Summary 138Part 4 Ansible10 Introduction to Ansible 139Ansible Architecture 139Preparing your Ansible Test Lab 141Ansible Groups 142Ansible Ad Hoc Command Execution 142The Ping Module 143The Command Module 144The User Module 144The Setup Module 144Ansible Playbooks 144Conditional Expressions and Variables 146Ansible Roles 151Templates 154Ansible Galaxy 156Summary 157References 15711 Systems Management Tasks with Ansible 159Web Server Deployment 159The Application Tier 160The Database Tier 162Role Structure Optimization 164VMware Resource Management 166Summary 171References 171Part 5 PowerShell 4.012 Introduction to PowerShell Desired State Confi guration (DSC) 173What Is PowerShell DSC? 174PowerShell DSC Requirements 175PowerShell DSC Components 175Native Cmdlets 175Managed Object Format File 176Local Confi guration Manager 176PowerShell DSC Confi gurations 178PowerShell DSC Modes 180Local Push Mode 181Remote Push Mode 181Pull Mode 182PowerShell DSC Resources 184Summary 186References 18713 Implementation Strategies with PowerShell DSC 189Use Cases for PowerShell DSC in VMware Environments 189Scripted Deployments of VMs with PowerCLI 190Incorporating PowerShell DSC in VM Templates 192Challenges Implementing PowerShell DSC Confi gurations to New VMs 193PowerCLI Invoke-VMscript 193PowerCLI Copy-VMGuestFile 195General Lessons Learned 196Future Use Cases for PowerShell DSC in VMware Environments 197Summary 198References 198Part 6 Application Deployment with Containers14 Introduction to Application Containers with Docker 199What Is an Application? 199Hidden Complexity 200Dependency and Confi guration Confl icts 200Linux Containers 200Control Groups 201Namespaces 201Container Management 203Using Docker 203Installing Docker 203Docker Daemon 204Docker Client 204Docker Index 205Running a Docker Container 205Listing Running Containers 206Connecting to Running Containers 206Building and Distributing Docker Containers 208Dockerfi le 209Docker Hub 210Docker Versus Virtual Machines 211Docker Versus Confi guration Management 211Summary 212References 21215 Running Docker Containers at Scale 213Container Orchestration 213Kubernetes 214Kubernetes Workfl ow 214Kubernetes Deployment 215CoreOS and Kubernetes Cluster Management Utilities 216CoreOS Cluster Deployment 217etcd Server Confi guration 222Network Overlays with Flannel 223Kubernetes Cluster Nodes 223Kubernetes Service Deployment 225Kubernetes Workload Deployment 226Platform-as-a-Service with Docker 230Summary 231References 231Part 7 DevOps Tool Chain16 Server Provisioning Using Razor 233How Razor Works 233Using Razor 236Razor Collections and Actions 238Building Razor Collections 245Using Razor APIs 257Razor Components 258Razor Server 258Razor Microkernel 258Razor Client 259Setting Up Razor 259PE Razor 259Puppet Install 259Install from Source 260Manual Release Install 260Other Services 260Summary 263References 26317 Intro to the ELK: Elasticsearch, Logstash, Kibana 265Elasticsearch Overview 265Getting Started 266Understanding the Index 267Working with Data 267Installing Plugins 271Using Clients 274Logstash Overview 275Getting Started 276Confi guring Input to Logstash 276Applying Filters 278Kibana Overview 280Sharing and Saving 285Custom Data Views 286Summary 286References 28718 Continuous Integration with Jenkins 289Continuous Integration Concepts 289Continuous Integration or Continuous Deployment? 290Test Automation 290Jenkins Architecture 292Jenkins Deployment 293Jenkins Workfl ow 296Jenkins Server Confi guration 296Jenkins Build Job 298Git Hooks 302Your First Build 304Quality Assurance Teams? 306Acceptance Testing 306Development Team 306Build/Test Infrastructure 307Summary 307References 307Part 8 VMware DevOps Practices19 VMware vRealize Automation in DevOps Environments 309Emergence of DevOps 309Stable Agility 310People, Process, and Conway's Law 311vRealize Automation 312vRealize Application Services 313Puppet Integration 315Code Stream 321Summary 327References 3279780133846478, TOC, 3/9/15