万本电子书0元读

万本电子书0元读

顶部广告

Learn OpenShift电子书

售       价:¥

6人正在读 | 0人评论 9.8

作       者:Denis Zuev,Aleksey Usov,Artemii Kropachev

出  版  社:Packt Publishing

出版时间:2018-07-30

字       数:53.1万

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

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

为你推荐

  • 读书简介
  • 目录
  • 累计评论(0条)
  • 读书简介
  • 目录
  • 累计评论(0条)
Take advantage of Kotlin's concurrency primitives to write efficient multithreaded applications Key Features *Learn Kotlin’s unique approach to multithreading *Work through practical examples that will help you write concurrent non-blocking code *Improve the overall execution speed in multiprocessor and multicore systems Book Description The primary requirements of modern-day applications are scalability, speed, and making the most use of hardware. Kotlin meets these requirements with its immense support for concurrency. Many concurrent primitives of Kotlin, such as channels and suspending functions, are designed to be non-blocking and efficient. This allows for new approaches to concurrency and creates unique challenges for the design and implementation of concurrent code. Learning Concurrency in Kotlin addresses those challenges with real-life examples and exercises that take advantage of Kotlin's primitives. Beginning with an introduction to Kotlin's coroutines, you will learn how to write concurrent code and understand the fundamental concepts needed to be able to write multithreaded software in Kotlin. You'll explore how to communicate between and synchronize your threads and coroutines to write asynchronous applications that are collaborative. You'll also learn how to handle errors and exceptions, as well as how to leverage multi-core processing. In addition to this, you’ll delve into how coroutines work internally, allowing you to see the bigger picture. Throughout the book you'll build an Android application – an RSS reader – designed and implemented according to the different topics covered in the book What you will learn *Understand Kotlin’s approach to concurrency *Implement sequential and asynchronous suspending functions *Create suspending data sources that are resumed on demand *Explore the best practices for error handling *Use channels to communicate between coroutines *Uncover how coroutines work under the hood Who this book is for If you’re a Kotlin or Android developer interested in learning how to program concurrently to enhance the performance of your applications, this is the book for you.
目录展开

Title Page

Copyright and Credits

Learn OpenShift

Packt Upsell

Why subscribe?

PacktPub.com

Contributors

About the authors

Acknowledgments

About the reviewers

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

Containers and Docker Overview

Technical requirements

Containers overview

Container features and advantages

Efficient hardware resource consumption

Application and service isolation

Faster deployment

Microservices architecture

The stateless nature of containers

Docker container architecture

Docker architecture

Docker's main components

Linux containers

Understanding Docker images and layers

Container filesystem

Docker storage drivers

Container image layers

Docker registries

Public registry

Private registry

Accessing registries

Docker Hub overview

Docker installation and configuration

Docker installation

Docker configuration

Using the Docker command line

Using Docker man, help, info

Managing images using Docker CLI

Working with images

Saving and loading images

Uploading images to the Docker registry

Managing containers using Docker CLI

Docker ps and logs

Executing commands inside a container

Starting and stopping containers

Docker port mapping

Inspecting the Docker container

Removing containers

Using environment variables

Passing environment variables to a container

Linking containers

Using persistent storage

Creating a custom Docker image

Customizing images using docker commit

Using Dockerfile build

Using Docker history

Dockerfile instructions

Summary

Questions

Further reading

Kubernetes Overview

Technical requirements

Container management systems overview

Kubernetes versus Docker Swarm

Kubernetes key concepts

Kubernetes installation and configuration

Working with kubectl

Getting help

Using the kubectl get command

Running Kubernetes pods

Describing Kubernetes resources

Editing Kubernetes resources

Exposing Kubernetes services

Using Kubernetes labels

Deleting Kubernetes resources

Kubernetes advanced resources

Creating kubernetes services using YAML and JSON files

Clearing the virtual environment

Kubernetes limitations

Summary

Questions

Further reading

CRI-O Overview

Technical requirements

Container Runtime and Container Runtime Interface

CRI-O and Open Container Initiative

How CRI-O works with Kubernetes

Installing and working with CRI-O

Stopping your virtual environment

Summary

Questions

Further reading

OpenShift Overview

Cloud technology landscape and the role of PaaS

OpenShift as an extension of Kubernetes

Understanding OpenShift's business value

OpenShift flavors

OpenShift architecture

Summary

Questions

Further reading

Building an OpenShift Lab

Technical requirements

Why use a development environment?

Deployment variants

Working with oc cluster up

System requirements and prerequisites

CentOS 7

macOS

Windows

Accessing OpenShift through a web browser

Working with Minishift

Working with Vagrant

Vagrant installation

Installing OpenShift with an all-in-one Vagrant box

Summary

Questions

Further reading

OpenShift Installation

Technical requirements

Prerequisites

Hardware requirements

Overview of OpenShift installation methods

RPM installation

Containerized installation

Deployment scenarios

Environment preparation

Docker

SELinux

Ansible installation

SSH access

Advanced installation

OpenShift Ansible inventory

OpenShift Ansible playbooks

Installation

Validation

Summary

Questions

Further reading

Managing Persistent Storage

Technical requirements

Persistent versus ephemeral storage

The OpenShift persistent storage concept

Persistent Volumes

Persistent Volume Claims

The storage life cycle in OpenShift

Storage backends comparison

Storage infrastructure setup

Setting up NFS

Installing NFS packages on the server and clients

Configuring NFS exports on the server

Starting and enabling the NFS service

Verification

Configuring GlusterFS shares

Installing packages

Configuring a brick and volume

Configuring iSCSI

Client-side verification

NFS verification

GlusterFS verification

iSCSI verification

Configuring Physical Volumes (PV)

Creating PVs for NFS shares

Creating a PV for the GlusterFS volume

PV for iSCSI

Using persistent storage in pods

Requesting persistent volume

Binding a PVC to a particular PV

Using claims as volumes in pod definition

Managing volumes through oc volume

Persistent data for a database container

Summary

Questions

Further reading

Core OpenShift Concepts

Managing projects in OpenShift

Managing users in OpenShift

Creating new applications in OpenShift

Managing pods in OpenShift

Managing services in OpenShift

Managing routes in OpenShift

Summary

Questions

Further reading

Advanced OpenShift Concepts

Technical requirements

Tracking the version history of images using ImageStreams

Importing images

Creating applications directly from Docker images

Manually pushing images into the internal registry

Separating configuration from application code using ConfigMaps

Controlling resource consumption using ResourceQuotas

Controlling resource consumption using LimitRanges

Creating complex stacks of applications with templates

Autoscaling your application depending on CPU and RAM utilization

CPU-based autoscaling

Memory-based autoscaling

Summary

Questions

Further reading

Security in OpenShift

Technical requirements

Authentication

Users and identities

Service accounts

Identity providers

AllowAll

DenyAll

HTPasswd

LDAP

Authorization and role-based access control

Using built-in roles

Creating custom roles

Admission controllers

Security context constraints

Storing sensitive data in OpenShift

What data is considered sensitive?

Secrets

Summary

Questions

Further reading

Managing OpenShift Networking

Technical requirements

Network topology in OpenShift

Tracing connectivity

SDN plugins

ovs-subnet plugin

ovs-multitenant plugin

ovs-networkpolicy plugin

Egress routers

Static IPs for external project traffic

Egress network policies

DNS

Summary

Questions

Further reading

Deploying Simple Applications in OpenShift

Technical requirements

Manual application deployment

Creating a pod

Creating a service

Creating a service using oc expose

Creating a service from a YAML definition

Creating a route

Creating a route by using oc expose

Creating a route from a YAML definition

Using oc new-app

The oc new-app command

Using oc new-app with default options

Advanced deployment

Deploying MariaDB

Summary

Questions

Further reading

Deploying Multi-Tier Applications Using Templates

Technical requirements

OpenShift template overview

Template syntax

Adding templates

Displaying template parameters

Processing a template

Creating a custom template

Developing YAML/JSON template definitions

Exporting existing resources as templates

Using the oc new-app -o command

Using templates to deploy a multi-tier application

The Gogs application template

Creating the Gogs application

Summary

Questions

Further reading

Building Application Images from Dockerfile

Technical requirements

Dockerfile development for OpenShift

Building an application from Dockerfile

A simple Dockerfile build

Dockerfile build customization

Summary

Questions

Further reading

Building PHP Applications from Source Code

Technical requirements

PHP S2I

Building a simple PHP application

Understanding the PHP build process

Starting a new build

Summary

Questions

Further reading

Building a Multi-Tier Application from Source Code

Technical requirements

Building a multi-tier application

WordPress template

Building a WordPress application

Summary

Questions

CI/CD Pipelines in OpenShift

Technical requirements

CI/CD and CI/CD pipelines

Jenkins as CI/CD

Jenkins in OpenShift

Creating Jenkins pipelines in OpenShift

Starting a Jenkins pipeline

Editing Jenkinsfile

Managing pipeline execution

Summary

Questions

Further reading

OpenShift HA Architecture Overview

What is high availability?

HA in OpenShift

Virtual IPs

IP failover

OpenShift infrastructure nodes

OpenShift masters

OpenShift etcd

OpenShift nodes

External storage for OpenShift persistent data

OpenShift backup and restore

Etcd key-value store backup

OpenShift masters

OpenShift nodes

Persistent storage

Summary

Questions

Further reading

OpenShift HA Design for Single and Multiple DCs

OpenShift single-DC HA design

OpenShift infrastructure nodes

OpenShift masters

OpenShift nodes

Etcd key-value store

Persistent storage

Physical placement consideration

Design considerations

OpenShift multi-DC HA design

One OpenShift cluster across all data centers

One OpenShift cluster per data center

Networking

Storage

Application deployment

Summary

Questions

Further reading

Network Design for OpenShift HA

Common network topologies for OpenShift deployments

Data center networks

Access layer switches

Core layer switches

Edge firewalls

Load balancers

Border routers

Cloud networks

SDN

Security groups

Load balancers

Network Address Translation (NAT) gateways

Commonly made mistakes while designing networks for OpenShift

General network requirements and design guidelines for OpenShift deployments

Summary

Questions

Further reading

What is New in OpenShift 3.9?

Major changes in OpenShift 3.9

What to expect from the following OpenShift releases

Summary

Questions

Further reading

Assessments

Chapter 1

Chapter 2

Chapter 3

Chapter 4

Chapter 5

Chapter 6

Chapter 7

Chapter 8

Chapter 9

Chapter 10

Chapter 11

Chapter 12

Chapter 13

Chapter 14

Chapter 15

Chapter 16

Chapter 17

Chapter 18

Chapter 19

Chapter 20

Chapter 21

Other Books You May Enjoy

Leave a review - let other readers know what you think

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

发表评论

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

买过这本书的人还买过

读了这本书的人还在读

回顶部