新書推薦:
《
失败:1891—1900 清王朝的变革、战争与排外
》
售價:HK$
85.8
《
送你一匹马(“我不求深刻,只求简单。”看三毛如何拒绝内耗,为自己而活)
》
售價:HK$
64.9
《
秦汉史讲义
》
售價:HK$
151.8
《
万千心理·我的精神分析之道:复杂的俄狄浦斯及其他议题
》
售價:HK$
104.5
《
荷马:伊利亚特(英文)-西方人文经典影印21
》
售價:HK$
107.8
《
我的心理医生是只猫
》
售價:HK$
49.5
《
巴拉吉预言
》
售價:HK$
74.8
《
股权控制战略:如何实现公司控制和有效激励(第2版)
》
售價:HK$
98.8
|
編輯推薦: |
本书带领你开启DevOps、容器和Kubernetes基本概念和实用技能的学习之旅。 第1章,DevOps简介。 第2章,DevOps和容器。 第3章,Kubernetes入门。 第4章,存储与资源管理。 第5章,网络与安全。 第6章,监控与日志。 第7章,持续交付。 第8章,集群管理。 第9章,AWS上的Kubernetes。 第10章,GCP上的Kubernetes。 第11章,未来探究。
|
內容簡介: |
容器化被认为是实现DevOps的*方式。谷歌开发了Kubernetes,它有效地协调容器,被认为是容器编排的领跑者。Kubernetes是一个协调器,可以在服务集群上创建和管理容器。本书将指导管理 Kubernetes集群,然后学习如何在DevOps中监控、记录日志和持续部署。本书将介绍DevOps和容器的基本概念,部署和将应用程序容器化,并介绍Kubernetes中的网络和存储。然后,使用先进的DevOps技能,如通过基于属性的访问控制和基于角色的访问控制,监控、记录和连续引入Kubernetes资源的权限控制。本书还涵盖部署和管理Amazon Web Services和Google Cloud Platform相关内容。*后,讨论了其他编排框架,如Docker Swarm模式、Amazon ECS和Apache Mesos。
|
關於作者: |
Hideto Saito在计算机行业拥有约20年的经验。1998年,在SUN工作期间,对Solaris OS、OPENSTEP和Sun UltraEnterprise1000(AKA StraFire)有研究。UNIX和MacOS X操作系统拥护者。2006年,开发在Linux和MacOS X上运行的相关产品,以快速的Objective-C编码而闻名。
中联润通运维总监,云技术社区创始人.曾在盛大游戏 金山西山居负责系统运维工作。维护有微信订阅号:"云技术实践著有《深度实践KVM》一书 《Ceph手册》中文版译者之一 《运维前线》系列图书策划人。
|
目錄:
|
1 DevOps简介001
软件交付的挑战001
瀑布模型和实物交付001
敏捷模型和电子交付002
云端的软件交付002
持续集成003
持续交付003
配置管理004
基础设施即代码004
编排005
微服务趋势005
模块化编程006
包管理006
MVC设计模型008
单体架构应用程序009
远程过程调用009
RESTful设计010
微服务011
自动化工具012
持续集成工具012
持续交付工具013
监控和日志工具016
沟通工具018
公有云019
总结021
2 DevOps与容器022
了解容器022
资源隔离022
Linux 容器概念023
容器交付027
容器入门027
在Ubuntu上安装Docker028
在CentOS上安装Docker028
在macOS上安装Docker029
容器生命周期029
Docker基础029
层、镜像、容器和卷031
分发镜像033
连接容器035
使用Dockerfile037
编写第一个Dockerfile037
Dockerfile语法039
组织Dockerfile043
多容器编排045
容器堆积045
Docker Compose概述046
组合容器047
总结050
3 Kubernetes入门051
理解Kubernetes051
Kubernetes组件052
Master组件052
节点组件053
Master与节点通信054
开始使用Kubernetes054
准备环境055
kubectl057
Kubernetes资源058
Kubernetes对象058
容器编排095
总结103
4 存储与资源管理104
Kubernetes卷管理104
容器卷生命周期104
Pod内共享卷106
无状态和有状态应用程序106
Kubernetes持久卷和动态配置108
持久卷抽象层声明109
动态配置和存储类型111
临时存储和永久存储配置案例113
使用状态集(StatefulSet)管理具有持久卷的Pod116
持久卷示例118
Elasticsearch集群118
Kubernetes资源管理122
资源服务质量(QoS)122
配置BestEffort Pod125
配置Guaranteed Pod127
配置Burstable Pod128
资源使用监控130
总结132
5 网络与安全133
Kubernetes网络133
Docker网络133
容器间通信136
Pod间通信138
同一节点内Pod间通信138
跨节点Pod间通信139
Pod与服务间通信141
外部与服务通信144
Ingress145
网络策略150
总结153
6 监控与日志154
容器检查154
Kubernetes仪表盘155
监控Kubernetes156
应用程序156
主机157
外部资源157
容器158
Kubernetes 158
Kubernetes监控要点159
监控实践161
Prometheus介绍161
部署Prometheus162
使用PromQL162
Kubernetes目标发现163
从Kubernetes收集数据165
使用Grafana查看指标166
日志167
日志聚合模式168
节点代理方式收集日志168
Sidecar容器方式转发日志169
获取Kubernetes事件170
Fluentd和Elasticsearch日志171
从日志中提取指标172
总结173
7 持续交付174
资源更新174
触发更新174
管理滚动更新176
更新DaemonSet和StatefulSet178
DaemonSet178
StatefulSet179
构建交付管道180
工具选择180
过程解析181
深入解析Pod185
启动Pod186
Liveness和Readiness探针186
初始化容器188
终止Pod189
处理SIGTERM189
容器生命周期钩子192
放置Pod193
总结194
8 集群管理196
Kubernetes命名空间196
默认命名空间 197
创建命名空间197
上下文198
资源配额199
创建资源配额200
请求具有默认计算资源限制的Pod202
删除命名空间203
Kubeconfig204
服务账户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
总结217
9 AWS上的Kubernetes218
AWS简介218
公有云219
API和基础设施即代码219
AWS组件220
VPC和子网220
互联网网关和NAT-GW222
安全组226
EC2和EBS227
Route 53232
ELB234
S3236
在AWS上安装和配置Kubernetes237
安装kops238
运行kops238
Kubernetes云提供商240
L4 负载均衡240
L7 负载均衡(Ingress)242
存储类型(StorageClass)245
通过kops维护Kubernetes集群246
总结248
10 GCP上的Kubernetes249
GCP简介249
GCP组件250
VPC250
子网251
防火墙规则252
VM实例253
负载均衡257
持久化磁盘262
Google容器引擎(GKE)264
在GKE上设置第一个Kubernetes集群265
节点池267
多区域集群270
集群升级271
Kubernetes云提供商273
存储类型(StorageClass)273
L4负载均衡275
L7负载均衡(Ingress)276
总结280
11 未来探究281
探索Kubernetes的可能性281
掌握Kubernetes281
Job和CronJob282
Pod和节点之间的亲和性与反亲和性282
Pod的自动伸缩282
防止和缓解Pod中断282
Kubernetes集群联邦(federation)283
集群附加组件283
Kubernetes和社区284
Kubernetes孵化器284
Helm和chart285
未来基础设施287
Docker Swarm模式287
Amazon Elastic Container Sercia288
Apache Mesos289
总结290
读者调查表291
电子工业出版社编著书籍推荐表293
反侵权盗版声明294
|
內容試閱:
|
随着技术的不断进步,软件交付方式经过三个阶段。第一阶段是以光盘为代表的实物交付方式,第二阶段是基于互联网的电子交付方式,第三阶段是以云计算为基础的在线交付。软件交付的周期也越来越短,同时应用程序的规模越来越大,随着DevOps解决方案应运而生,DevOps以持续快速发布为目标,致力于通过发布流水线支持持续的软件构建和交付。
容器的出现,巧妙地解决了应用程序隔离的问题,Kubernetes进一步释放了容器的能力。DevOps的理念已经深入人心,Kubernetes更是热度不减,并且走向成熟。容器的出现加速了DevOps的落地,Kubernetes让容器管理更便捷。随着技术的发展,在Kubernetes之上构建DevOps无疑是正确甚至是最佳选择之一。
本书主要介绍在Kubernetes之上构建DevOps的最佳实践,先介绍了DevOps和Kubernetes的基本知识,然后介绍了在Kubernetes之上构建DevOps常见场景的最佳实践,包括存储、网络和安全、监控和日志记录、持续交付、集群管理,以及AWS和GCP上的Kubernetes使用。通过阅读本书,有助于提高软件交付自动化,缩短软件交付时间。
本书注重实践,是不可多得的在Kubernetes之上构建DevOps的参考手册。相信通过阅读本书,可以带给读者不少启发,节省不少实际中摸索的时间。另外,由于译者水平有限,虽然经过了反复核对,仍然难免有错误的地方,恳请各位读者指正。
|
|