新書推薦:
《
怪谈:一本详知日本怪谈文学发展脉络史!
》
售價:HK$
57.2
《
韩江黑夜的狂欢:2024年诺贝尔文学奖得主韩江出道作品
》
售價:HK$
63.8
《
销售的力量
》
售價:HK$
97.9
《
我活下来了(直木奖作者西加奈子,纪实性长篇散文佳作 上市不到一年,日本畅销二十九万册)
》
售價:HK$
63.8
《
数学分析原理(第二卷)(第9版)
》
售價:HK$
86.9
《
陈寅恪四书
》
售價:HK$
316.8
《
汉密尔顿关于制造业的报告
》
售價:HK$
74.8
《
开放科学:人工智能时代的呼唤
》
售價:HK$
108.9
編輯推薦:
编辑推荐
如今,大多数的系统管理员、网络管理员和集群管理员在日常工作都会用到 Kubernetes。但是,为了在生产级的Kubernetes系统上有效协作,管理员需要能够用同一种语言来沟通。本书抽丝剥茧,层层分析了运行Kubernetes网络的复杂性和抽象性。
专家推荐
“James和Vallery的杰作通过简单易学的操作示例,让复杂的Kubernetes网络概念更加通俗易懂。”
——Brad Topol
IBM高级工程师
开放技术和开发人员倡导者
內容簡介:
本书介绍了 Kubernetes 部署大规模容器的复杂流程。只有精通每个网络层的抽象工具,才能在生产集群中高效地排查故障并维护集群。本书涵盖如下内容:Kubernetes网络模型。如何从CNCF CNI项目中选择最Z适合集群的接口。Kubernetes 背后的网络基础和Linux基础。如何快速排除网络问题并防止停机。AWS、Google Cloud和Microsoft Azure的云网络和Kubernetes服务。各种网络工具的利弊以及如何为你的技术栈选择最Z合适的工具。
關於作者:
James Strong目前在Contino担任云原生总监,负责带领众多大型企业和金融机构完成上云和DevOps旅程。此前曾在代顿大学和通用电器公司担任网络工程师。Vallery Lancey目前在一家全球领L先的技术公司担任分布式系统工程师。曾在Lyft公司担任软件工程师,负责维护多集群Kubernete平台,还曾在加拿大的 Checkfront公司担任DevOps总监。
目錄 :
目录
前言 1
第1 章 网络简介 7
1.1 网络历史7
1.2 OSI 模型 10
1.3 TCP/IP 14
1.3.1 应用层 16
1.3.2 传输层 19
1.3.3 网络层 35
1.3.4 互联网协议 35
1.3.5 链路层 46
1.3.6 回到Web 服务器 .52
1.4 本章小结54
第2 章 Linux 网络 55
2.1 基础 .55
2.2 网络接口59
2.3 网桥接口61
2.4 内核中的数据包处理 63
2.4.1 Netfilter 63
2.4.2 Conntrack 66
2.4.3 路由 69
2.5 高级路由70
2.5.1 IPtables .70
2.5.2 IPVS 82
2.5.3 eBPF 84
2.6 网络故障排查工具 87
2.6.1 安全告警 .88
2.6.2 ping 88
2.6.3 traceroute .89
2.6.4 dig 91
2.6.5 telnet .92
2.6.6 nmap 93
2.6.7 netstat 94
2.6.8 netcat .95
2.6.9 OpenSSL .96
2.6.10 cURL 98
2.7 本章小结.100
第3 章 容器网络基础 101
3.1 容器简介.101
3.1.1 应用程序 101
3.1.2 Hypervisor 102
3.1.3 容器 .103
3.2 容器基础. 111
3.2.1 控制组 112
3.2.2 命名空间 112
3.2.3 设置命名空间 . 114
3.3 容器网络基础 122
3.3.1 Docker 网络模型 132
3.3.2 Overlay 网络 133
3.3.3 容器网络插件 135
3.4 容器连通性 137
3.4.1 容器到容器同主机通信 .142
3.4.2 容器到容器跨主机通信 .144
3.5 本章小结.146
第4 章 Kubernetes 网络简介 147
4.1 Kubernetes 网络模型 148
4.2 节点和Pod 网络布局 151
4.2.1 隔离网络 151
4.2.2 扁平网络 152
4.2.3 岛屿网络 154
4.2.4 kube-controller-manager 配置 154
4.3 Kubelet 156
4.4 Pod 就绪和探针 157
4.5 CNI 规范.163
4.6 CNI 插件.164
4.6.1 IPAM 接口 165
4.6.2 热门CNI 插件 166
4.7 kube-proxy .172
4.7.1 userspace 模式 173
4.7.2 IPtables 模式 173
4.7.3 IPVS 模式 175
4.7.4 kernelspace 模式175
4.8 NetworkPolicy .176
4.8.1 基于Cilium 的NetworkPolicy 示例 179
4.8.2 选择Pod 185
4.8.3 规则 .188
4.9 DNS 192
4.10 IPv4/IPv6 双栈 198
4.11 本章小结 200
第5 章 Kubernetes 网络抽象 201
5.1 StatefulSet .203
5.2 Endpoint .205
5.3 Endpoint Slice 209
5.4 Kubernetes Service 213
5.4.1 NodePort 215
5.4.2 ClusterIP 218
5.4.3 Headless 225
5.4.4 ExternalName Service 227
5.4.5 LoadBalancer 229
5.4.6 服务小结 236
5.5 Ingress .237
5.6 Ingress 控制器和规则 237
5.7 服务网格.245
5.8 本章小结.258
第6 章 Kubernetes 与云网络 259
6.1 Amazon Web Services 259
6.1.1 AWS 网络服务 260
6.1.2 Amazon EKS 272
6.1.3 在AWS EKS 集群上部署应用程序 .283
6.2 谷歌云平台 293
6.2.1 GCP 网络服务 293
6.2.2 GKE .297
6.3 Azure 300
6.3.1 Azure 网络服务 301
6.3.2 AKS 310
6.3.3 将应用程序部署到AKS .315
6.4 本章小结.327
內容試閱 :
前言新的篇章自从两台电脑通过一根电缆直连到一起,联网就成为数字基础设施中的关键一环。如今的网络层为了支撑海量用例变得日趋复杂,就算Mesosphere 和Kubernetes 这类容器项目的出现也未能改变这一点。Kubernetes 的众多贡献者们尝试为开发人员以抽象的方式简化复杂的联网机制,而计算机科学的本质就是抽象再抽象。Kubernetes 及其网络API 也是另一种抽象,它能够简化和加快消费端的应用部署。那么Kubernetes管理员要如何应对?本书将为你揭开Kubernetes 抽象概念的神秘面纱,引领管理员了解复杂的网络层,帮助你认识到Kubernetes 如何开创了一个新的篇章。本书的目标读者451 Research 调研数据表明,全球应用容器市场预计将从2019 年的21 亿美金增长到2022 年的42 亿美金。容器市场的这种爆发性增长迫使IT 从业人员努力学习容器部署、管理和故障排查方面的知识。初级的网络管理员、Linux 管理员或集群管理员请从头到尾通读本书,而经验丰富的DevOps 工程师可以跳到定的章节,查阅对自己技能有所提升的内容。网络管理员、Linux 管理员和集群管理员需要熟悉如何操作Kubernetes 大规模集群。在这本书中,读者能够找到运行Kubernetes 网络时伴随的诸多问题。本书抽丝剥茧地讲述了Kubernetes 网络相关的抽象概念,让开发人员能够获得跨企业内网、云环境,以及使用托管服务的类似部署体验。对于负责生产集群运营和确保网络正常运行的工程师,可以用本书查漏补缺,弥补在抽象知识方面的不足。您将学到的知识读完本书后,您将学会以下内容:? Kubernetes 网络模型。? 容器网络接口(CNI)项目及如何为集群选择CNI 项目。? Kubernetes 网络和Linux 基础概念。? Kubernetes 网络抽象概念之间的关系。另外,你将学会执行以下操作:? 为Kubernetes 集群部署和管理生产规模的网络。? 在Kubernetes 集群内排查基础网络有关的应用问题。排版约定本书采用以下排版约定。斜体(Italic)表示新术语、URL、电子邮件地址、文件名和文件扩展名。等宽字体(Constant width)表示程序清单,在段落内表示程序元素,例如变量、函数名称、数据库、数据类型、环境变量、语句和关键字。粗体等宽字体(Constant width bold)表示应由用户原封不动输入的命令或其他文本。斜体等宽字体(Constant width italic)表示应该替换成用户提供值的文本,或者由上下文决定的值。使用代码示例下载补充材料(代码示例、练习等)的网址为https://github.com/strongjz/Networkingand-Kubernetes。若您遇到技术问题,或使用代码示例有困难,请发送电子邮件到bookquestions@oreilly.com。本书是要帮你完成工作的。一般来说,如果本书提供了示例代码,你可以把它用在你的程序或文档中。除非你使用了很大一部分代码,否则无需联系我们获得许可。比如,用本书的几个代码片段写一个程序就无需获得许可,销售或分发O’Reilly 图书的示例集则需要获得许可;引用本书中的示例代码回答问题无需获得许可,将书中大量的代码放到你的产品文档中则需要获得许可。我们很希望但并不强制要求你在引用本书内容时加上引用说明。引用说明一般包括书名、作者、出版社和ISBN,例如:“Networking and Kubernetes by James Strong and Vallery Lancey (O’Reilly). Copyright 2021 Strongjz tech and Vallery Lancey, 978-1-492-08165-4”。如果你觉得自己对示例代码的使用超出了上述许可范围,请通过permissions@oreilly.com 与我们联系。O’Reilly 在线学习平台(O’Reilly Online Learning)近40 年来,O’Reilly Media 致力于提供技术和商业培训、知识和卓越见解,来帮助众多公司取得成功。公司独有的专家和改革创新者网络通过O’Reilly 书籍、文章以及在线学习平台,分享他们的专业知识和实践经验。O’Reilly 在线学习平台按照您的需要提供实时培训课程、深入学习渠道、交互式编程环境以及来自O’Reilly 和其他200 多家出版商的大量书籍与视频资料。更多信息,请访问网站:https://www.oreilly.com/。联系我们任何有关本书的意见或疑问,请按照以下地址联系出版社。美国:O’Reilly Media, Inc.1005 Gravenstein Highway NorthSebastopol, CA 95472中国:北京市西城区西直门南大街2 号成铭大厦C 座807 室(100035)奥莱利技术咨询(北京)有限公司勘误、示例和其他信息可访问https://oreil.ly/NetKubernetes 获取。对本书的评论或技术疑问,可以发电子邮件到errata@oreilly.com.cn。欲了解本社图书和课程的新闻和信息,请访问我们的网站http://oreilly.com。我们的Facebook:http://facebook.com/oreilly。我们的Twitter:http://twitter.com/oreillymedia。我们的Youtube:http://youtube.com/oreillymedia。致谢作者谨此衷心感谢O’Reilly 公司团队帮助完成这本书的编撰工作。Melissa Potter 在最终定稿发挥了重要作用。我们还要感谢Thomas Behnken 以他掌握的Azure 专业知识对我们的帮助。James: Karen,感谢你对我的所有信任,感谢你在我处于低谷期依然支持我。Wink,你是我进入这个领域的动力,我永远感激你。Ann,自从学习英语以来,你给了我最大的帮助。我还要感谢生命中所有支持过我的老师和教练。Vallery: 我要感谢SIG-Network 小组帮助我成为Kubernetes 的一名合格的贡献者。最后,作者要感谢Kubernetes 社区;没有社区就没有这本书。我们希望这本书能为渴求Kubernetes 知识的工程师们带来些许帮助。