欢迎来到 博文网 官方网站!
基于KUBERNETES的DEVOPS实践:容器加速软件交付+2

基于KUBERNETES的DEVOPS实践:容器加速软件交付+2

内容简介容器化被认为是实现DevO

联系电话: 13983470003
产品详情

内容简介

容器化被认为是实现DevOps的*方式。谷歌开发了Kuberes,它有效地协调容器,被认为是容器编排的者。Kuberes是一个协调器,可以在服务集群上创建和管理容器。本书将指导管理 Kuberes集群,然后学在DevOps中监控、记录日志和持续部署。本书将介绍DevOps和容器的基本概念,部署和将应用程序容器化,并介绍Kuberes中的网络和存储。然后,使用的DevOps技能,如通过基于属的访问控制和基于角色的访问控制,监控、记录和连续引入Kuberes资源的权限控制。本书还涵盖部署和管理Amazon Web Services和Google Cloud Platform相关内容。*后,讨论了其他编排框架,如Docker Swarm模式、Amazon ECS和Apache Mesos。

目录

1 DevOps简介 001

软件交付的挑战 001

瀑布模型和实物交付 001

敏捷模型和电子交付 002

云端的软件交付 002

持续集成 003

持续交付 003

配置管理 004

基础设施即代码 004

编排 005

微服务趋势 005

模块化编程 006


MVC设计模型 008

单体架构应用程序 009

远程过程调用 009

RESTful设计 010

微服务 011

自动化工具 012

持续集成工具 012

持续交付工具 013

监控和日志工具 016

沟通工具 018

公有云 019


2 DevOps与容器 022

了解容器 022

资源隔离 022

Linux 容器概念 023

容器交付 027

容器入门 027

在Ubuntu上安装Docker 028

在CentOS上安装Docker 028

在macOS上安装Docker 029

容器生命周期 029

Docker基础 029

层、镜像、容器和卷 031

分发镜像 033

连接容器 035

使用Dockerfile 037

编写个Dockerfile 037

Dockerfile语法 039

组织Dockerfile 043

多容器编排 045

容器堆积 045

Docker Compose概述 046

组合容器 047


3 Kuberes入门 051

理解Kuberes 051

Kuberes组件 052

Master组件 052

节点组件 053

Master与节点通信 054

开始使用Kuberes 054

准备环境 055

kubectl 057

Kuberes资源 058

Kuberes对象 058

容器编排 095


4 存储与资源管理 104

Kuberes卷管理 104

容器卷生命周期 104

Pod内共享卷 106

无状态和有状态应用程序 106

Kuberes持久卷和动态配置 108

持久卷抽象层声明 109

动态配置和存储类型 111

临时存储和存储配置案例 113

使用状态集(StatefulSet)管理具有持久卷的Pod 116

持久卷示例 118

Elasticsearch集群 118

Kuberes资源管理 122

资源服务质量(QoS) 122

配置BestEffort Pod 125

配置Guaranteed Pod 127

配置Burle Pod 128

资源使用监控 130


5 网络与 133

Kuberes网络 133

Docker网络 133

容器间通信 136

Pod间通信 138

同一节点内Pod间通信 138

跨节点Pod间通信 139

Pod与服务间通信 141

外部与服务通信 144

Ingress 145

网络策略 150


6 监控与日志 154

容器检查 154

Kuberes仪表盘 155

监控Kuberes 156

应用程序 156

主机 157

外部资源 157

容器 158

Kuberes 158

Kuberes监控要点 159

监控实践 161

Prometheus介绍 161

部署Prometheus 162

使用PromQL 162

Kuberes目标发现 163

从Kuberes收集数据 165

使用Grafana查看指标 166

日志 167

日志聚合模式 168

节点代理方式收集日志 168

Sidecar容器方式转发日志 169

获取Kuberes事件 170

Fluentd和Elasticsearch日志 171

从日志中提取指标 172


7 持续交付 174

资源更新 174

触发更新 174

管理滚动更新 176

更新DaemonSet和StatefulSet 178

DaemonSet 178

StatefulSet 179

构建交付管道 180

工具选择 180

过程解析 181

深入解析Pod 185

启动Pod 186

Liveness和Readiness探针 186

初始化容器 188

终止Pod 189

处理SIGTERM 189

容器生命周期钩子 192

放置Pod 193


8 集群管理 196

Kuberes命名空间 196

默认命名空间 197

创建命名空间 197

上下文 198

资源配额 199

创建资源配额 200

请求具有默认计算资源限制的Pod 202

删除命名空间 203

Kubeconfig 204

服务账户 205

认证与授权 206

认证 207

服务账户认证 207

用户账户认证 207

授权 209

基于属的访问控制(ABAC) 209

基于角色的访问控制(RBAC) 210

角色和集群角色 210

角色绑定和集群角色绑定 212

准入控制 213

命名空间生命周期(NamespaceLifecycle) 214

范围限制(LimitRanger) 214

服务账户(Service account) 214

持久卷标签(PersistentVolumeLabel) 214

默认存储类型(DefaultStorageClass) 214

资源配额(ResourceQuota) 214

默认容忍时间(DefaultTolerationSeconds) 215

污点(taint)和容忍(toleration) 215

Pod节点选择器(PodNodeSelector) 216

始终准许(AlwaysAdmit) 216

始终拉取镜像(AlwaysPullImages) 217

始终拒绝(AlwaysDeny) 217

拒绝升级执行(DenyEscalatingExec) 217

其他准入插件 217


9 AWS上的Kuberes 218

AWS简介 218

公有云 219

API和基础设施即代码 219

AWS组件 220

VPC和子网 220

互联网网关和NAT-GW 222

组 226

EC2和EBS 227

Route 53 232

ELB 234

S3 236

在AWS上安装和配置Kuberes 237

安装kops 238

运行kops 238

Kuberes云提供商 240

L4 负载均衡 240

L7 负载均衡(Ingress) 242

存储类型(StorageClass) 245

通过kops维护Kuberes集群 246


10 GCP上的Kuberes 249

GCP简介 249

GCP组件 250

VPC 250

子网 251

防火墙规则 252

VM实例 253

负载均衡 257

持久化磁盘 262

Google容器引擎(GKE) 264

在GKE上设置个Kuberes集群 265

节点池 267

多区域集群 270

集群升级 271

Kuberes云提供商 273

存储类型(StorageClass) 273

L4负载均衡 275

L7负载均衡(Ingress) 276


11 未来探究 281

探索Kuberes的可能 281

掌握Kuberes 281

Job和CronJob 282

Pod和节点之间的亲和与反亲和 282

Pod的自动伸缩 282

防止和缓解Pod中断 282

Kuberes集群联邦(federation) 283

集群附加组件 283

Kuberes和社区 284

Kuberes孵化器 284

Helm和chart 285

未来基础设施 287

Docker Swarm模式 287

Amazon Elastic Container Sercia 288

Apache Mesos 289


读者调查表 291

电子工业出版社编著书籍表 293

反侵权盗版声明 294

在线客服
微信联系
客服
扫码加微信(手机同号)
电话咨询
返回顶部