万本电子书0元读

万本电子书0元读

顶部广告

DevOps with Kubernetes电子书

售       价:¥

8人正在读 | 0人评论 6.2

作       者:Hideto Saito

出  版  社:Packt Publishing

出版时间:2019-01-31

字       数:57.7万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Leverage the power of Kubernetes to build an efficient software delivery pipeline. Key Features * Learn about DevOps, containers, and Kubernetes all within one handy book * A practical guide to container management and orchestration * Learn how to monitor, log, and troubleshoot your Kubernetes applications Book Description Kubernetes has been widely adopted across public clouds and on-premise data centers. As we're living in an era of microservices, knowing how to use and manage Kubernetes is an essential skill for everyone in the IT industry. This book is a guide to everything you need to know about Kubernetes—from simply deploying a container to administrating Kubernetes clusters wisely. You'll learn about DevOps fundamentals, as well as deploying a monolithic application as microservices and using Kubernetes to orchestrate them. You will then gain an insight into the Kubernetes network, extensions, authentication and authorization. With the DevOps spirit in mind, you'll learn how to allocate resources to your application and prepare to scale them efficiently. Knowing the status and activity of the application and clusters is crucial, so we’ll learn about monitoring and logging in Kubernetes. Having an improved ability to observe your services means that you will be able to build a continuous delivery pipeline with confidence. At the end of the book, you'll learn how to run managed Kubernetes services on three top cloud providers: Google Cloud Platform, Amazon Web Services, and Microsoft Azure. What you will learn * Learn fundamental and advanced DevOps skills and tools * Get a comprehensive understanding of containers * Dockerize an application * Administrate and manage Kubernetes cluster * Extend the cluster functionality with custom resources * Understand Kubernetes network and service mesh * Implement Kubernetes logging and monitoring * Manage Kubernetes services in Amazon Web Services, Google Cloud Platform,and Microsoft Azure Who this book is for This book is for anyone who wants to learn containerization and clustering in a practical way using Kubernetes. No prerequisite skills are required, however, essential DevOps skill and public/private Cloud knowledge will accelerate the reading speed. If you're advanced, you can get a deeper understanding of all the tools and technique described in the book.
目录展开

Title Page

Copyright and Credits

DevOps with Kubernetes Second Edition

About Packt

Why subscribe?

Packt.com

Contributors

About the authors

About the reviewer

Packt is searching for authors like you

Preface

Who this book is for

What this book covers

To get the most out of this book

Download the example code files

Download the color images

Conventions used

Get in touch

Reviews

Introduction to DevOps

Software delivery challenges

Waterfall and static delivery

Agile and digital delivery

Software delivery on the cloud

Continuous integration

Continuous delivery

Configuration management

Infrastructure as code

Orchestration

The microservices trend

Modular programming

Package management

The MVC design pattern

Monolithic applications

Remote procedure call

RESTful design

Microservices

Automation and tools

Continuous integration tools

Configuration management tools

Monitoring and logging tools

Communication tools

The public cloud

Summary

DevOps with Containers

Understanding containers

Resource isolation

Linux containers

Containerized delivery

Getting started with containers

Installing Docker for Ubuntu

Installing Docker for CentOS

Installing Docker for macOS

The life cycle of a container

The basics of Docker

Layers, images, containers, and volumes

Distributing images

Connecting containers

Working with a Dockerfile

Writing your first Dockerfile

The syntax of a Dockerfile

Organizing a Dockerfile

Multi-stage builds

Multi-container orchestration

Piling up containers

An overview of Docker compose

Composing containers

Summary

Getting Started with Kubernetes

Understanding Kubernetes

Kubernetes components

Master components

API server (kube-apiserver)

Controller manager (kube-controller-manager)

etcd

Scheduler (kube-scheduler)

Node components

Kubelet

Proxy (kube-proxy)

Docker

The interaction between the Kubernetes master and nodes

Getting started with Kubernetes

Preparing the environment

kubectl

Kubernetes resources

Kubernetes objects

Namespaces

Name

Label and selector

Annotation

Pods

ReplicaSet

Deployments

Services

ClusterIP

NodePort

LoadBalancer

ExternalName (kube-dns version >= 1.7)

Service without selectors

Volumes

Secrets

Retrieving secrets via files

Retrieving secrets via environment variables

ConfigMap

Using ConfigMap via volume

Using ConfigMap via environment variables

Multi-container orchestration

Summary

Managing Stateful Workloads

Kubernetes volume management

Container volume life cycle

Sharing volume between containers within a pod

Stateless and stateful applications

Kubernetes' persistent volume and dynamic provisioning

Abstracting the volume layer with a persistent volume claim

Dynamic provisioning and StorageClass

Problems with ephemeral and persistent volume settings

Replicating pods with a persistent volume using StatefulSet

Submitting Jobs to Kubernetes

Submitting a single Job to Kubernetes

Submitting a repeatable Job

Submitting a parallel Job

Scheduling running a Job using CronJob

Summary

Cluster Administration and Extension

Kubernetes namespaces

Context

Creating a context

Switching the current context

Kubeconfig

Service account

Authentication and authorization

Authentication

Service account token authentication

User account authentication

Authorization

Role-based access control (RBAC)

Roles and ClusterRoles

RoleBinding and ClusterRoleBinding

Admission control

NamespaceLifecycle

LimitRanger

ServiceAccount

PersistentVolumeLabel

DefaultStorageClass

ResourceQuota

DefaultTolerationSeconds

PodNodeSelector

AlwaysPullImages

DenyEscalatingExec

Other admission controller plugins

Dynamic admission control

Admission webhook

Custom resources

Custom resources definition

Summary

Kubernetes Network

Kubernetes networking

Docker networking

Container-to-container communications

Pod-to-pod communications

Pod communication within the same node

Pod communication across nodes

Pod-to-service communications

External-to-service communications

Ingress

Network policy

Service mesh

Summary

Monitoring and Logging

Inspecting a container

The Kubernetes dashboard

Monitoring in Kubernetes

Monitoring applications

Monitoring infrastructure

Monitoring external dependencies

Monitoring containers

Monitoring Kubernetes

Getting monitoring essentials for Kubernetes

Hands-on monitoring

Getting to know Prometheus

Deploying Prometheus

Working with PromQL

Discovering targets in Kubernetes

Gathering data from Kubernetes

Visualizing metrics with Grafana

Logging events

Patterns of aggregating logs

Collecting logs with a logging agent per node

Running a sidecar container to forward written logs

Ingesting Kubernetes state events

Logging with Fluent Bit and Elasticsearch

Extracting metrics from logs

Incorporating data from Istio

The Istio adapter model

Configuring Istio for existing infrastructure

Mixer templates

Handler adapters

Rules

Summary

Resource Management and Scaling

Scheduling workloads

Optimizing resource utilization

Resource types and allocations

Quality of Service (QoS) classes

Placing pods with constraints

Node selector

Affinity and anti-affinity

Node affinity

Inter-pod affinity

Prioritizing pods in scheduling

Elastically scaling

Horizontal pod autoscaler

Incorporating custom metrics

Managing cluster resources

Resource quotas of namespaces

Creating a ResourceQuota

Request pods with default compute resource limits

Node administration

Pod eviction

Taints and tolerations

Summary

Continuous Delivery

Updating resources

Triggering updates

Managing rollouts

Updating DaemonSet and StatefulSet

DaemonSet

StatefulSet

Building a delivery pipeline

Choosing tools

End-to-end walk-through of the delivery pipeline

The steps explained

env

script

after_success

deploy

Gaining a deeper understanding of pods

Starting a pod

Liveness and readiness probes

Custom readiness gate

init containers

Terminating a pod

Handling SIGTERM

SIGTERM isn't sent to the application process

SIGTERM doesn't invoke the termination handler

Container life cycle hooks

Tackling pod disruptions

Summary

Kubernetes on AWS

Introduction to AWS

Public cloud

API and infrastructure as code

AWS components

VPC and subnet

Internet gateways and NAT-GW

Security group

EC2 and EBS

ELB

Amazon EKS

Deep dive into AWS EKS

Launching the EKS control plane

Adding worker nodes

Cloud provider on EKS

Storage class

Load balancer

Internal load balancer

Internet-facing load balancer

Updating the Kubernetes version on EKS

Upgrading the Kubernetes master

Upgrading worker nodes

Summary

Kubernetes on GCP

Introduction to GCP

GCP components

VPC

Subnets

Firewall rules

VM instances

Load balancing

Health check

Backend service

Creating a LoadBalancer

Persistent Disk

Google Kubernetes Engine (GKE)

Setting up your first Kubernetes cluster on GKE

Node pool

Multi-zone clusters

Cluster upgrade

Kubernetes cloud provider

StorageClass

L4 LoadBalancer

L7 LoadBalancer (ingress)

Summary

Kubernetes on Azure

Introduction to Azure

Resource groups

Azure virtual network

Network security groups

Application security groups

Subnets

Azure virtual machines

Storage account

Load balancers

Azure disks

Azure Kubernetes service

Setting up your first Kubernetes cluster on AKS

Node pools

Cluster upgrade

Monitoring and logging

Kubernetes cloud provider

Role-based access control

StorageClass

L4 LoadBalancer

Ingress controller

Summary

Other Books You May Enjoy

Leave a review - let other readers know what you think

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部