My Account Log in

3 options

Kubernetes cookbook : practical solutions to container orchestration / Hideto Saito, Hui-Chuan Chloe Lee, Ke-Jou Carol Hsu.

EBSCOhost Academic eBook Collection (North America) Available online

View online

Ebook Central Academic Complete Available online

View online

O'Reilly Online Learning: Academic/Public Library Edition Available online

View online
Format:
Book
Author/Creator:
Saito, Hideto, author.
Lee, Hui-Chuan Chloe, author.
Hsu, Ke-Jou Carol, author.
Language:
English
Subjects (All):
Linux.
Application software--Development.
Application software.
Virtual computer systems.
Physical Description:
1 online resource (554 pages)
Edition:
Second edition.
Place of Publication:
Birmingham ; Mumbai : Packt, [2018]
System Details:
text file
Summary:
Learn how to automate and manage your containers and reduce the overall operation burden on your system. About This Book Use containers to manage, scale and orchestrate apps in your organization Transform the latest concept of Kubernetes 1.10 into examples Expert techniques for orchestrating containers effectively Who This Book Is For This book is for system administrators, developers, DevOps engineers, or any stakeholder who wants to understand how Kubernetes works using a recipe-based approach. Basic knowledge of Kubernetes and Containers is required. What You Will Learn Build your own container cluster Deploy and manage highly scalable, containerized applications with Kubernetes Build high-availability Kubernetes clusters Build a continuous delivery pipeline for your application Track metrics and logs for every container running in your cluster Streamline the way you deploy and manage your applications with large-scale container orchestration In Detail Kubernetes is an open source orchestration platform to manage containers in a cluster environment. With Kubernetes, you can configure and deploy containerized applications easily. This book gives you a quick brush up on how Kubernetes works with containers, and an overview of main Kubernetes concepts, such as Pods, Deployments, Services and etc. This book explains how to create Kubernetes clusters and run applications with proper authentication and authorization configurations. With real-world recipes, you'll learn how to create high availability Kubernetes clusters on AWS, GCP and in on-premise datacenters with proper logging and monitoring setup. You'll also learn some useful tips about how to build a continuous delivery pipeline for your application. Upon completion of this book, you will be able to use Kubernetes in production and will have a better understanding of how to manage containers using Kubernetes. Style and approach This recipe-based book will teach you how to use Kubernetes in production and will help you discover various steps involved in managing your containers using Kubernetes Downloading the example code for this book You can download the example code files for all Packt books you have purchased from your account at http://www.PacktPub.com. If you purchased this book elsewhere, you can visit http://www.PacktPub.com/support and register to have the files e-mailed directly to you.
Contents:
Cover
Title Page
Copyright and Credits
Packt Upsell
Contributors
Table of Contents
Preface
Chapter 1: Building Your Own Kubernetes Cluster
Introduction
Exploring the Kubernetes architecture
Getting ready
How to do it...
Kubernetes master
API server (kube-apiserver)
Scheduler (kube-scheduler)
Controller manager (kube-controller-manager)
Command-line interface (kubectl)
Kubernetes node
kubelet
Proxy (kube-proxy)
How it works...
etcd
Kubernetes network
See also
Setting up the Kubernetes cluster on macOS by minikube
Setting up the Kubernetes cluster on Windows by minikube
Setting up the Kubernetes cluster on Linux via kubeadm
Package installation
Ubuntu
CentOS
System configuration prerequisites
CentOS system settings
Booting up the service
Network configurations for containers
Getting a node involved
Setting up the Kubernetes cluster on Linux via Ansible (kubespray)
Installing pip
Installing Ansible
Installing python-netaddr
Setting up ssh public key authentication
Maintaining the Ansible inventory
Running the Ansible ad hoc command to test your environment
Ansible troubleshooting
Need to specify a sudo password
Need to specify different ssh logon user
Need to change ssh port
Common ansible issue
Running your first container in Kubernetes
Running a HTTP server (nginx)
Exposing the port for external access
Stopping the application
How it works…
See also.
Chapter 2: Walking through Kubernetes Concepts
An overview of Kubernetes
Linking Pods and containers
Managing Pods with ReplicaSets
Creating a ReplicaSet
Getting the details of a ReplicaSet
Changing the configuration of a ReplicaSet
Deleting a ReplicaSet
There's more...
Deployment API
Using kubectl set to update the container image
Updating the YAML and using kubectl apply
Working with Services
Creating a Service for different resources
Creating a Service for a Pod
Creating a Service for a Deployment with an external IP
Creating a Service for an Endpoint without a selector
Creating a Service for another Service with session affinity
Deleting a Service
Working with volumes
emptyDir
hostPath
NFS
glusterfs
downwardAPI
gitRepo
PersistentVolumes
Using storage classes
gcePersistentDisk
awsElasticBlockStore
Working with Secrets
Creating a Secret
Working with kubectl create command line
From a file
From a directory
From a literal value
Via configuration file
Using Secrets in Pods
By environment variables
By volumes
Deleting a Secret
Using ConfigMaps
Mounting Secrets and ConfigMap in the same volume
Working with names
Working with Namespaces
Creating a Namespace.
Changing the default Namespace
Deleting a Namespace
Creating a LimitRange
Deleting a LimitRange
Working with labels and selectors
Equality-based label selector
Set-based label selector
Linking Service to Pods or ReplicaSets using label selectors
Linking Deployment to ReplicaSet using the set-based selector
Chapter 3: Playing with Containers
Scaling your containers
Scale up and down manually with the kubectl scale command
Horizontal Pod Autoscaler (HPA)
There is more…
Updating live containers
Deployment update strategy - rolling-update
Rollback the update
Deployment update strategy - recreate
Forwarding container ports
Container-to-container communication
Pod-to-Pod communication
Working with NetworkPolicy
Pod-to-Service communication
External-to-internal communication
Working with Ingress
Ensuring flexible usage of your containers
Pod as DaemonSets
Running a stateful Pod
Pod recovery by DaemonSets
Pod recovery by StatefulSet
Submitting Jobs on Kubernetes
Pod as a single Job
Create a repeatable Job
Create a parallel Job
Schedule to run Job using CronJob
Working with configuration files
YAML
JSON
Pod
Deployment
Service
Chapter 4: Building High-Availability Clusters
Clustering etcd
Static mechanism
Discovery mechanism
kubeadm
kubespray
Kops
Building multiple masters
Setting up the first master
Setting up the other master with existing certifications
Adding nodes in a HA cluster
Chapter 5: Building Continuous Delivery Pipelines
Moving monolithic to microservices
Microservices
Frontend WebUI
Working with the private Docker registry
Using Kubernetes to run a Docker registry server
Using Amazon elastic container registry
Using Google cloud registry
Launching a private registry server using Kubernetes
Creating a self-signed SSL certificate
Creating HTTP secret
Creating the HTTP basic authentication file
Creating a Kubernetes secret to store security files
Configuring a private registry to load a Kubernetes secret
Create a repository on the AWS elastic container registry
Determining your repository URL on Google container registry
Push and pull an image from your private registry
Push and pull an image from Amazon ECR
Push and pull an image from Google cloud registry
Using gcloud to wrap the Docker command
Using the GCP service account to grant a long-lived credential
Integrating with Jenkins
Setting up a custom Jenkins image
Setting up Kubernetes service account and ClusterRole
Launching the Jenkins server via Kubernetes deployment
Using Jenkins to build a Docker image
Deploying the latest container image to Kubernetes.
Chapter 6: Building Kubernetes on AWS
Playing with Amazon Web Services
Creating an IAM user
Installing AWS CLI on macOS
Installing AWS CLI on Windows
Creating VPC and Subnets
Internet gateway
NAT-GW
Security group
EC2
Setting up Kubernetes with kops
Working with kops-built AWS cluster
Deleting kops-built AWS cluster
Using AWS as Kubernetes Cloud Provider
Elastic load balancer as LoadBalancer service
Elastic Block Store as StorageClass
Managing Kubernetes cluster on AWS by kops
Modifying and resizing instance groups
Updating nodes
Updating masters
Upgrading a cluster
Chapter 7: Building Kubernetes on GCP
Playing with GCP
Creating a GCP project
Installing Cloud SDK
Installing Cloud SDK on Windows
Installing Cloud SDK on Linux and macOS
Configuring Cloud SDK
Creating a VPC
Creating subnets
Creating firewall rules
Adding your ssh public key to GCP
Launching VM instances
Playing with Google Kubernetes Engine
How to do it…
Exploring CloudProvider on GKE
StorageClass
Service (LoadBalancer)
Ingress
There's more…
Managing Kubernetes clusters on GKE
Node pool
Multi-zone and regional clusters
Multi-zone clusters
Regional clusters
Cluster upgrades
Chapter 8: Advanced Cluster Administration
Advanced settings in kubeconfig
How to do it.
Setting new credentials.
Notes:
Previous edition published: 2016.
Description based on print version record.
OCLC:
1039687219

The Penn Libraries is committed to describing library materials using current, accurate, and responsible language. If you discover outdated or inaccurate language, please fill out this feedback form to report it and suggest alternative language.

Find

Home Release notes

My Account

Shelf Request an item Bookmarks Fines and fees Settings

Guides

Using the Find catalog Using Articles+ Using your account