概述
这是一篇长文。真的很长。文章包含大量超链接,图也很多。PC 端浏览可能体验会好一点。
下文包含个人理解与主观情感,并未包含所有 Session。图片来自会议 PPT、付费书籍、网络媒体。
会议议程及 PPT 下载:https://kccncosschn21.sched.com/
第一个主题演讲还提了一下 Dan Kohn。
突然有些唏嘘,如果没有 Dan Kohn,应该不会有 KubeCon China 吧。
Build an Open Source Distributed Cloud Native World
华为云提到的分布式云原生概念。
![1cd8e6621341e9f2e5a561e393bbecfa.png](https://file2.kaopuke.com:8081/files_image/2023060823/1cd8e6621341e9f2e5a561e393bbecfa.png)
主要是围绕 KubeEdge、Volcano、Karmada 做相关讲解和介绍。
How You Can Create a CNCF Project
张磊的 Session 非常有意思。
![bd24b91c44c53b62820c9ebaac64f87d.png](https://file2.kaopuke.com:8081/files_image/2023060823/bd24b91c44c53b62820c9ebaac64f87d.png)
选择把项目交给 CNCF 的原因:
中立、可信赖
CNCF 中的项目具有同样的价值观,大家的想法类似,更容易合作、互操作、互相借力
世界级的推广策略
完善的开源治理方法
通过兴趣小组,可以获得相关的建议
CPU Burst Getting Rid of Unnecessary Throttling, Achieving High CPU Utilization and Application Performance at the Same Time
该 Session 重点全在 PPT 上,直接看 PPT 即可。
该功能已合入 Linux Kernel 5.14。
CPU Burst 的特性可允许平均 CPU 利用率低于 CPU 限制情况下可能的突发使用。
应用 CPU Burst 后,用户可以同时获得高 CPU 利用率和高应用程序性能。
CPU Burst 在之前有过介绍(也是该 Speaker 的文章):
让容器跑得更快:CPU Burst 技术实践 https://www.infoq.cn/article/y2semvajjgxj9mbg9p00
一张图解释什么是 CPU Burst。
![044c28002093949c74207f8e8f3f4b44.png](https://file2.kaopuke.com:8081/files_image/2023060823/044c28002093949c74207f8e8f3f4b44.png)
图片来自上述 InfoQ 链接。
![399573fb02f3a05372499a2d3ebab762.png](https://file2.kaopuke.com:8081/files_image/2023060823/399573fb02f3a05372499a2d3ebab762.png)
![bffe8f400aeb0147878603d197beb329.png](https://file2.kaopuke.com:8081/files_image/2023060823/bffe8f400aeb0147878603d197beb329.png)
![86f6822f061c6d3b37b9224659f9e8d9.png](https://file2.kaopuke.com:8081/files_image/2023060823/86f6822f061c6d3b37b9224659f9e8d9.png)
![dda124439f964ed56dc5f0b673bcf451.png](https://file2.kaopuke.com:8081/files_image/2023060823/dda124439f964ed56dc5f0b673bcf451.png)
![e7a74fc70002c00ca50e6a1ec7ea6ccd.png](https://file2.kaopuke.com:8081/files_image/2023060823/e7a74fc70002c00ca50e6a1ec7ea6ccd.png)
![7a680618690140fc782977d668a0cd41.png](https://file2.kaopuke.com:8081/files_image/2023060823/7a680618690140fc782977d668a0cd41.png)
![dd286915029dbf15d7b5fb051c16a920.png](https://file2.kaopuke.com:8081/files_image/2023060823/dd286915029dbf15d7b5fb051c16a920.png)
![6e578efc86313787950130a00d717cc2.png](https://file2.kaopuke.com:8081/files_image/2023060823/6e578efc86313787950130a00d717cc2.png)
![af24ff57021ec5e52b10c1e132da9822.png](https://file2.kaopuke.com:8081/files_image/2023060823/af24ff57021ec5e52b10c1e132da9822.png)
![0c38954f3afaba662b33a705ede75b4f.png](https://file2.kaopuke.com:8081/files_image/2023060823/0c38954f3afaba662b33a705ede75b4f.png)
![5d7dfc5a3da1cc790b83f20a74446c85.png](https://file2.kaopuke.com:8081/files_image/2023060823/5d7dfc5a3da1cc790b83f20a74446c85.png)
![94ed801517a64501b43f666fe7de5d1c.png](https://file2.kaopuke.com:8081/files_image/2023060823/94ed801517a64501b43f666fe7de5d1c.png)
![6d2710e8147d655b1f2a51622902ce2b.png](https://file2.kaopuke.com:8081/files_image/2023060823/6d2710e8147d655b1f2a51622902ce2b.png)
![d8103c2e9117567f7f16be340c91f553.png](https://file2.kaopuke.com:8081/files_image/2023060823/d8103c2e9117567f7f16be340c91f553.png)
How CPU Burst affects other pods
![0aa2712ede596271d9240a030c95a06e.png](https://file2.kaopuke.com:8081/files_image/2023060823/0aa2712ede596271d9240a030c95a06e.png)
![5cee7c8cd6e76127332cf7952c325987.png](https://file2.kaopuke.com:8081/files_image/2023060823/5cee7c8cd6e76127332cf7952c325987.png)
![826fe8a5aea534536c708c793d451b52.png](https://file2.kaopuke.com:8081/files_image/2023060823/826fe8a5aea534536c708c793d451b52.png)
![6f929e1f051801ae9d394320e8095d8b.png](https://file2.kaopuke.com:8081/files_image/2023060823/6f929e1f051801ae9d394320e8095d8b.png)
![49f91a3c02ad3cac0829c6cb0ee1a05b.png](https://file2.kaopuke.com:8081/files_image/2023060823/49f91a3c02ad3cac0829c6cb0ee1a05b.png)
CPU Burst 不是银弹。需要合理配置 CPU Burst buffer。
Beyond CUDA GPU Accelerated Computing on Cross-Vendor Graphics Cards with Vulkan Kompute
直接看如下链接的文章就好:https://towardsdatascience.com/machine-learning-and-data-processing-in-the-gpu-with-vulkan-kompute-c9350e5e5d3a
Apiserver Builder Extending Kubernetes via Aggregated Apiserver
Apiserver Aggregation 整体流程的介绍、与 CRD 的对比、如何不依赖 Etcd、以 OCM 举例等。
![12878fa9cb483a88a3d60fdbfea3feee.png](https://file2.kaopuke.com:8081/files_image/2023060823/12878fa9cb483a88a3d60fdbfea3feee.png)
![f2b5ef7ee84e62ef71bdaf2aa5855e18.png](https://file2.kaopuke.com:8081/files_image/2023060823/f2b5ef7ee84e62ef71bdaf2aa5855e18.png)
![14268b10d0ecafed517586f093d67042.png](https://file2.kaopuke.com:8081/files_image/2023060823/14268b10d0ecafed517586f093d67042.png)
![8e2776b20897fd7040c01f3553913adb.png](https://file2.kaopuke.com:8081/files_image/2023060823/8e2776b20897fd7040c01f3553913adb.png)
![e47382f8cad1bc279b941bc41e423861.png](https://file2.kaopuke.com:8081/files_image/2023060823/e47382f8cad1bc279b941bc41e423861.png)
![6df3e1e5205a2a01b9a65de306a8e2e1.png](https://file2.kaopuke.com:8081/files_image/2023060823/6df3e1e5205a2a01b9a65de306a8e2e1.png)
![ebad87115b2be441c8cf2d04b0123681.png](https://file2.kaopuke.com:8081/files_image/2023060823/ebad87115b2be441c8cf2d04b0123681.png)
代码参考:https://github.com/kubernetes-sigs/apiserver-builder-alpha/blob/63a62eda7b302fcba08cdcfc5f01cc5ad5751a5a/example/non-etcd/cmd/apiserver/main.go
Apiserver Aggregation 的相关资料似乎并不多,但其实 CRD 数量多到一定程度或者在某些特定场景下,Apiserver Aggregation 还是非常好用的。Programming Kubernetes 一书中也有一些介绍,可以作为入门资料。
Zero Trust Network Turnkey Solution to Support Zero Trust Service Mesh
在混合网络场景(办公网 + 私有云 + 多个公有云 + 外部用户)下会很有落地场景。
![20f5fb86ad84aaf85b5d75f69f125128.png](https://file2.kaopuke.com:8081/files_image/2023060823/20f5fb86ad84aaf85b5d75f69f125128.png)
![dd3eaef30e4a0079a9ef4cbb437cb476.png](https://file2.kaopuke.com:8081/files_image/2023060823/dd3eaef30e4a0079a9ef4cbb437cb476.png)
![afa8e4596679e237515d1b2255b138f6.png](https://file2.kaopuke.com:8081/files_image/2023060823/afa8e4596679e237515d1b2255b138f6.png)
具体可参考 Zero Trust Networks 一书,有中文版。
![f15eb15bec8bdad4b9230bc16156c354.png](https://file2.kaopuke.com:8081/files_image/2023060823/f15eb15bec8bdad4b9230bc16156c354.png)
![89ec012ee841af0cdd1289ef79c1fd70.png](https://file2.kaopuke.com:8081/files_image/2023060823/89ec012ee841af0cdd1289ef79c1fd70.png)
引用 Zero Trust Networks 书中的一张图可能更具有指导意义吧。
![2bc54a3fcfecb6d6c91b42e0a58fae5a.png](https://file2.kaopuke.com:8081/files_image/2023060823/2bc54a3fcfecb6d6c91b42e0a58fae5a.png)
Secure Gateway 架构
![986b0b1291344963530b8c67413b7cda.png](https://file2.kaopuke.com:8081/files_image/2023060823/986b0b1291344963530b8c67413b7cda.png)
![8d15a1c4f0c04a35f05ec01b34db62f7.png](https://file2.kaopuke.com:8081/files_image/2023060823/8d15a1c4f0c04a35f05ec01b34db62f7.png)
看起来整套架构也是软硬结合了,没有一个团队做支撑,想要快速落地类似架构可以说是没太大可能了。
Ingress Load Balancer 架构
![da202ceba7e5ddfcff3bfc6a11556452.png](https://file2.kaopuke.com:8081/files_image/2023060823/da202ceba7e5ddfcff3bfc6a11556452.png)
主流的几个 Ingress Controller 应该还都不支持 WireGuard。
![6820ab4d7f9d071d9b971ae542bf87b7.png](https://file2.kaopuke.com:8081/files_image/2023060823/6820ab4d7f9d071d9b971ae542bf87b7.png)
也未见有相关的通用方案?在 LB、Gateway 中集成 WireGuard 是否是最佳实践?
不过把 WireGuard 和 DPDK 做到一块倒是一个新思路,包括结合 QAT 卡、宽指令集等,充分利用硬件做 offload 了属于是。
How to Efficiently Manage Tens of Thousands of etcd Clusters
![5f1f3236b465331bd4a5487ceb7c1513.png](https://file2.kaopuke.com:8081/files_image/2023060823/5f1f3236b465331bd4a5487ceb7c1513.png)
![a194adbeb75d29df4c3e0474a05ffb70.png](https://file2.kaopuke.com:8081/files_image/2023060823/a194adbeb75d29df4c3e0474a05ffb70.png)
![ef65b1212be71bd5bbe121f7613cf591.png](https://file2.kaopuke.com:8081/files_image/2023060823/ef65b1212be71bd5bbe121f7613cf591.png)
kstone
无巧不成书,腾讯 Etcd 管控工具也是基于 Apiserver Aggregation。
![73ec6f05c7d217e78bdf5fc912ade52c.png](https://file2.kaopuke.com:8081/files_image/2023060823/73ec6f05c7d217e78bdf5fc912ade52c.png)
![7547eea192de3c450da637143e9f4651.png](https://file2.kaopuke.com:8081/files_image/2023060823/7547eea192de3c450da637143e9f4651.png)
迁移过程中这种版本依赖路径还是很有意义的。
腾讯这个项目已经开源了:https://github.com/tkestack/kstone。
kstone-etcd-operator
![4bd690e1ed8a90038e7caacfd1f260f5.png](https://file2.kaopuke.com:8081/files_image/2023060823/4bd690e1ed8a90038e7caacfd1f260f5.png)
![6bd8d110bf0dcfa53e703eb173100fab.png](https://file2.kaopuke.com:8081/files_image/2023060823/6bd8d110bf0dcfa53e703eb173100fab.png)
![b028304dc3e86cffb26f9e7d2e99dfd2.png](https://file2.kaopuke.com:8081/files_image/2023060823/b028304dc3e86cffb26f9e7d2e99dfd2.png)
正在做 Operator 都是抛弃 StatefulSet,自己造轮子。
![82410489e634786c8d282634634a0001.png](https://file2.kaopuke.com:8081/files_image/2023060823/82410489e634786c8d282634634a0001.png)
这个 Operator 用的是 TAPP:https://github.com/tkestack/tapp
没有使用裸 Pod 主要是基于存储易用性上的考量。但我感觉没差多少。
![1c3708dbe2a33adc3fca1251ed671cc1.png](https://file2.kaopuke.com:8081/files_image/2023060823/1c3708dbe2a33adc3fca1251ed671cc1.png)
![ba02feddb217b4864fcc9a76ec8c10d9.png](https://file2.kaopuke.com:8081/files_image/2023060823/ba02feddb217b4864fcc9a76ec8c10d9.png)
![9009fc9868ccdf277d21e5152d86cd55.png](https://file2.kaopuke.com:8081/files_image/2023060823/9009fc9868ccdf277d21e5152d86cd55.png)
支持备份到不同类型的存储介质中还是比较有价值的。
![22c64be3ea3fcc4177e9ae60995a21cc.png](https://file2.kaopuke.com:8081/files_image/2023060823/22c64be3ea3fcc4177e9ae60995a21cc.png)
![8115ad63de2e09b8fe1fa4303a496480.png](https://file2.kaopuke.com:8081/files_image/2023060823/8115ad63de2e09b8fe1fa4303a496480.png)
![933262e152f0d59b50d0ffe53d8bbb05.png](https://file2.kaopuke.com:8081/files_image/2023060823/933262e152f0d59b50d0ffe53d8bbb05.png)
![d6b86192b9fe507c7d5b25391feaaf2c.png](https://file2.kaopuke.com:8081/files_image/2023060823/d6b86192b9fe507c7d5b25391feaaf2c.png)
![ae7c7ec3e60764089be4f20b1dc0e9fb.png](https://file2.kaopuke.com:8081/files_image/2023060823/ae7c7ec3e60764089be4f20b1dc0e9fb.png)
Cross-city hot backup and QoS feature practice
该部分非常落地。
![c5e498d59f46d108eb006044aabf7fbc.png](https://file2.kaopuke.com:8081/files_image/2023060823/c5e498d59f46d108eb006044aabf7fbc.png)
方案 1 的问题主要是跨城读延迟较高。
![816b822775177007627a06e74e834777.png](https://file2.kaopuke.com:8081/files_image/2023060823/816b822775177007627a06e74e834777.png)
方案 2 的问题主要是就近读有旧数据、无法快速 failover。
![d1d868bdc53fd7ab26f26a44b8a74151.png](https://file2.kaopuke.com:8081/files_image/2023060823/d1d868bdc53fd7ab26f26a44b8a74151.png)
方案 3 的问题主要是性能差、写量大会造成读到脏数据。
![ac14babdf035ee8c594d977b713b8a76.png](https://file2.kaopuke.com:8081/files_image/2023060823/ac14babdf035ee8c594d977b713b8a76.png)
方案 4,腾讯基于方案 3 做的加强版。
![878d380cfff6b03c8c5ed74fbe341ba0.png](https://file2.kaopuke.com:8081/files_image/2023060823/878d380cfff6b03c8c5ed74fbe341ba0.png)
方案 5,将 syncer 节点伪装成 learner 加入集群。
该方案很像字节跳动一次分享上讲的 Kafka 跨地域同步:https://files.alicdn.com/tpsservice/cd9626b87ca646a05f05eb1d1c962126.pdf
InnerSource & DevOps They Are Soul Mates
谭老师讲的关于 InnerSource 的 Session。非常推荐观看。
![8912013c34da945b04bf52c47e192b56.png](https://file2.kaopuke.com:8081/files_image/2023060823/8912013c34da945b04bf52c47e192b56.png)
![e78bddb50a359a3147da49af166c0d4a.png](https://file2.kaopuke.com:8081/files_image/2023060823/e78bddb50a359a3147da49af166c0d4a.png)
写代码很重要,而写代码之前知道自己要写什么更重要,这句话真是太棒了。
![a1fb3924ac680bdce58c22232746c441.png](https://file2.kaopuke.com:8081/files_image/2023060823/a1fb3924ac680bdce58c22232746c441.png)
![0106943d1d5b28e624ef0c1e6d61363e.png](https://file2.kaopuke.com:8081/files_image/2023060823/0106943d1d5b28e624ef0c1e6d61363e.png)
Deep Dive Into Profilers How CPU Profilers Measure Your Application's Performance
CPU Profile 是可以获取当前函数消耗了多少 CPU 比例的工具。
![7999c0cd6b423fc338cd6b2c71b5ea90.png](https://file2.kaopuke.com:8081/files_image/2023060823/7999c0cd6b423fc338cd6b2c71b5ea90.png)
![6b2a65c885a71906ea2d1177e5b639cd.png](https://file2.kaopuke.com:8081/files_image/2023060823/6b2a65c885a71906ea2d1177e5b639cd.png)
![10b91107c1d666cafb113f5f426f8b96.png](https://file2.kaopuke.com:8081/files_image/2023060823/10b91107c1d666cafb113f5f426f8b96.png)
CPU Profile 工具适合对代码做性能调优、线上出现故障的时候。
CPU Profile 工具容易漏掉执行速度快且执行次数少的函数,比如对 CPU 负载并不高但 CPU hang 住在等待网络或者磁盘 I/O 的程序。
![4e1e5d9910ac2b782f3e5e4ea4a6eef8.png](https://file2.kaopuke.com:8081/files_image/2023060823/4e1e5d9910ac2b782f3e5e4ea4a6eef8.png)
![10a685a56182e27b432585aa0914586a.png](https://file2.kaopuke.com:8081/files_image/2023060823/10a685a56182e27b432585aa0914586a.png)
为什么不在函数开始执行和结束执行的时候记录时间戳,然后相减?
函数执行流程并不都在使用 CPU,比如陷入中断等待 I/O 等。(请求处理时间不等于 CPU 消耗时间)
没有办法保证实时性。
![9e0ba29d501a253f20ef5294898580b2.png](https://file2.kaopuke.com:8081/files_image/2023060823/9e0ba29d501a253f20ef5294898580b2.png)
事后做 CPU Profile 会有点晚,需要持续采集 CPU Profile。
![da0d05b6405cf2f41356876e5c71ad64.png](https://file2.kaopuke.com:8081/files_image/2023060823/da0d05b6405cf2f41356876e5c71ad64.png)
通过 Tag 来做分布式 CPU Profile。
Redteam Views Security Practice of K8s Cluster Administrator
通过攻击流程,阐述了 K8s 各个环节应该注意的安全问题。
![9ed6d982e100edb262cdeaefad5f16b8.png](https://file2.kaopuke.com:8081/files_image/2023060823/9ed6d982e100edb262cdeaefad5f16b8.png)
![9bf2356053877e04ab5aee2613efe405.png](https://file2.kaopuke.com:8081/files_image/2023060823/9bf2356053877e04ab5aee2613efe405.png)
![200225e756286dc14c0faad03ba662d9.png](https://file2.kaopuke.com:8081/files_image/2023060823/200225e756286dc14c0faad03ba662d9.png)
![7f915fe862af18e0c31583401de2b769.png](https://file2.kaopuke.com:8081/files_image/2023060823/7f915fe862af18e0c31583401de2b769.png)
![d540d334db6da2b28d98fc76c7c5b43e.png](https://file2.kaopuke.com:8081/files_image/2023060823/d540d334db6da2b28d98fc76c7c5b43e.png)
![350420af49da241fd36ab489b6539fdd.png](https://file2.kaopuke.com:8081/files_image/2023060823/350420af49da241fd36ab489b6539fdd.png)
![b89afff36ef05898257c521ab9e8605a.png](https://file2.kaopuke.com:8081/files_image/2023060823/b89afff36ef05898257c521ab9e8605a.png)
![74f9d83fdb680a3894347fa4deb6bb6d.png](https://file2.kaopuke.com:8081/files_image/2023060823/74f9d83fdb680a3894347fa4deb6bb6d.png)
![abc14a5fcd726f91656762bb60f3c98f.png](https://file2.kaopuke.com:8081/files_image/2023060823/abc14a5fcd726f91656762bb60f3c98f.png)
![adc753e146342e4efefefd57a211ec84.png](https://file2.kaopuke.com:8081/files_image/2023060823/adc753e146342e4efefefd57a211ec84.png)
![77f63e48520c70e16bfe4014f62e5413.png](https://file2.kaopuke.com:8081/files_image/2023060823/77f63e48520c70e16bfe4014f62e5413.png)
推荐同时阅读乐枕的这篇文章:https://developer.aliyun.com/article/765449
Build and Manage Multi-cluster Application with Consistent Experience
KubeVela
![fe46de276e7c5d0e3029237502220224.png](https://file2.kaopuke.com:8081/files_image/2023060823/fe46de276e7c5d0e3029237502220224.png)
![e68cfa8cb6f9b7241a33111456c2f034.png](https://file2.kaopuke.com:8081/files_image/2023060823/e68cfa8cb6f9b7241a33111456c2f034.png)
OCM
![e97b4e382d2a23fdbc890bca97ab9be2.png](https://file2.kaopuke.com:8081/files_image/2023060823/e97b4e382d2a23fdbc890bca97ab9be2.png)
![0ec7c4fe1c86db3aadaa7d2f8140f503.png](https://file2.kaopuke.com:8081/files_image/2023060823/0ec7c4fe1c86db3aadaa7d2f8140f503.png)
A full-scenario colocation of workloads based on Kubernetes
![432bea08eaaaa60c673e0b1e2007318f.png](https://file2.kaopuke.com:8081/files_image/2023060823/432bea08eaaaa60c673e0b1e2007318f.png)
![c3adb4ebd9ea4578f3ad9c5bf2c1b5e3.png](https://file2.kaopuke.com:8081/files_image/2023060823/c3adb4ebd9ea4578f3ad9c5bf2c1b5e3.png)
![d0caf016dd95a3047a63d49216369178.png](https://file2.kaopuke.com:8081/files_image/2023060823/d0caf016dd95a3047a63d49216369178.png)
需要优先保证在线资源的可用性。
![a89cf497943ed7c372780663ad3a04e6.png](https://file2.kaopuke.com:8081/files_image/2023060823/a89cf497943ed7c372780663ad3a04e6.png)
Resource Prediction
为在线资源做画像,预测在线资源使用,动态做隔离。
![f1790e61bfbb9a1b457901956393f2d9.png](https://file2.kaopuke.com:8081/files_image/2023060823/f1790e61bfbb9a1b457901956393f2d9.png)
![ce930f75c92071e6bb4d5db4685739fd.png](https://file2.kaopuke.com:8081/files_image/2023060823/ce930f75c92071e6bb4d5db4685739fd.png)
K8s BestEffort 容易在可用的资源范围内,调度大量的离线资源作业,造成资源阻塞。
通过修改 cgroup 层级结构来扩大混部资源池。离线资源统一管理,而不受 K8s 管理。
![eedc56dd1134e425b53ca8b60cba91ec.png](https://file2.kaopuke.com:8081/files_image/2023060823/eedc56dd1134e425b53ca8b60cba91ec.png)
Resource Isolation
![5dfd9188e1d10baa5622a1c98647beef.png](https://file2.kaopuke.com:8081/files_image/2023060823/5dfd9188e1d10baa5622a1c98647beef.png)
这块感觉有点魔改了。
Interference Detection
![c2c7a95b57f16c218bfdd33114dac431.png](https://file2.kaopuke.com:8081/files_image/2023060823/c2c7a95b57f16c218bfdd33114dac431.png)
![0ab6ae2d06e52c862e3cb8906ea95405.png](https://file2.kaopuke.com:8081/files_image/2023060823/0ab6ae2d06e52c862e3cb8906ea95405.png)
![04f4b9245b1f087d8ccddbb7d43ad08e.png](https://file2.kaopuke.com:8081/files_image/2023060823/04f4b9245b1f087d8ccddbb7d43ad08e.png)
![567b29a732f5578860f0fa0a7eac7aa3.png](https://file2.kaopuke.com:8081/files_image/2023060823/567b29a732f5578860f0fa0a7eac7aa3.png)
![046a29fbf3a07232295480cd1c087167.png](https://file2.kaopuke.com:8081/files_image/2023060823/046a29fbf3a07232295480cd1c087167.png)
腾讯这个项目也开源了:https://github.com/Tencent/Caelus
How We Discover and Locate k8s Cluster Problems Before Users at Alibaba
加强版集群巡检,直接看 PPT 就好。
![734910653077aa9a832bd4ce7c48baf4.png](https://file2.kaopuke.com:8081/files_image/2023060823/734910653077aa9a832bd4ce7c48baf4.png)
![1967ab67bdaca5ea8da4a8189b604dda.png](https://file2.kaopuke.com:8081/files_image/2023060823/1967ab67bdaca5ea8da4a8189b604dda.png)
![1fa8a3ddc76ce6469f6d46de0b9521c9.png](https://file2.kaopuke.com:8081/files_image/2023060823/1fa8a3ddc76ce6469f6d46de0b9521c9.png)
![99a09ed6c1ff3e0a8ff442e566bb9afd.png](https://file2.kaopuke.com:8081/files_image/2023060823/99a09ed6c1ff3e0a8ff442e566bb9afd.png)
![f5854720cc0278974fa1eaf24d1dac92.png](https://file2.kaopuke.com:8081/files_image/2023060823/f5854720cc0278974fa1eaf24d1dac92.png)
![62934891440a608c732e8d8255117be2.png](https://file2.kaopuke.com:8081/files_image/2023060823/62934891440a608c732e8d8255117be2.png)
EROFS What Are We Doing Now For Containers
感觉通篇都很硬核。
在镜像存储方面打开了一扇新的大门。
![ab1da48025daade3611b62cee99e2222.png](https://file2.kaopuke.com:8081/files_image/2023060823/ab1da48025daade3611b62cee99e2222.png)
![6fa6d9fb67143566938972bf0fde2318.png](https://file2.kaopuke.com:8081/files_image/2023060823/6fa6d9fb67143566938972bf0fde2318.png)
![fee07850f41a3ce2e67f5f76fd821786.png](https://file2.kaopuke.com:8081/files_image/2023060823/fee07850f41a3ce2e67f5f76fd821786.png)
![531c218351a6be22dcbb609bdd3bec27.png](https://file2.kaopuke.com:8081/files_image/2023060823/531c218351a6be22dcbb609bdd3bec27.png)
Kubernetes Multi-Cluster and Multi-Tenancy With RBAC and KubeFed
基于 KubeFed 的多租户方案。
![833373bb25524bede8de23ce6a399edf.png](https://file2.kaopuke.com:8081/files_image/2023060823/833373bb25524bede8de23ce6a399edf.png)
![b3a81146586eeff4108a6791c72438e3.png](https://file2.kaopuke.com:8081/files_image/2023060823/b3a81146586eeff4108a6791c72438e3.png)
![9eb628996eee270635bad815ae50432d.png](https://file2.kaopuke.com:8081/files_image/2023060823/9eb628996eee270635bad815ae50432d.png)
![b654c194287f628ee591cbbda824ac3c.png](https://file2.kaopuke.com:8081/files_image/2023060823/b654c194287f628ee591cbbda824ac3c.png)
![83263047c42286c8bf7f4b8ebc9e04f0.png](https://file2.kaopuke.com:8081/files_image/2023060823/83263047c42286c8bf7f4b8ebc9e04f0.png)
![acc3edb2c7f04237cf9e673713ad6669.png](https://file2.kaopuke.com:8081/files_image/2023060823/acc3edb2c7f04237cf9e673713ad6669.png)
A story of managing kubernetes cluster with 15k nodes and various workloads
细节非常多。不过一般公司也没这么大规模。
![e486bdaad14da3036f5d7b0b01ac558d.png](https://file2.kaopuke.com:8081/files_image/2023060823/e486bdaad14da3036f5d7b0b01ac558d.png)
需要做集群请求流量分析与模拟。
![1728e7c47634b8a44f27822234937aec.png](https://file2.kaopuke.com:8081/files_image/2023060823/1728e7c47634b8a44f27822234937aec.png)
![6ad84ab103a06dedb9b1db2bb0287d08.png](https://file2.kaopuke.com:8081/files_image/2023060823/6ad84ab103a06dedb9b1db2bb0287d08.png)
![5b74af15bf8e4489230c609d61179540.png](https://file2.kaopuke.com:8081/files_image/2023060823/5b74af15bf8e4489230c609d61179540.png)
![02003333f088d0de0dce3fab65a7ee17.png](https://file2.kaopuke.com:8081/files_image/2023060823/02003333f088d0de0dce3fab65a7ee17.png)
![2baef0714147ef27ee93c20db324db86.png](https://file2.kaopuke.com:8081/files_image/2023060823/2baef0714147ef27ee93c20db324db86.png)
![7fd9b59ac364171f3844a319dd6f025a.png](https://file2.kaopuke.com:8081/files_image/2023060823/7fd9b59ac364171f3844a319dd6f025a.png)
![6c543f546645e1698e49832860776e4e.png](https://file2.kaopuke.com:8081/files_image/2023060823/6c543f546645e1698e49832860776e4e.png)
![5e9307444bb3c8c11cc80db1ea606c7d.png](https://file2.kaopuke.com:8081/files_image/2023060823/5e9307444bb3c8c11cc80db1ea606c7d.png)
![274745a3438c8b1d5916fa6e916c9e2b.png](https://file2.kaopuke.com:8081/files_image/2023060823/274745a3438c8b1d5916fa6e916c9e2b.png)
Service Mesh Acceleration From Iptables to Fully BPF
这两天朋友圈都在转发的网红 Session。
具体可以直接看腾讯云原生公众号:https://mp.weixin.qq.com/s/U6-wcBsBC-Khffb7kTBtjA。
Introduction to WasmEdge A Cloud-native WebAssembly Runtime
项目挺有趣的。
主要解决了 WebAssembly 的使用成本问题。
Panel Discussion How to Attract Developers to Join Your Community
非常有意思的 Session。
简单做了一下摘录:
做一个好的项目,能实际解决开发者和用户的问题
直接的价值交换
组织驱动
找到定位,区分用户群体
上手门槛低,有成长路径
消除参与社区的阻力
运营者的积极的参与
社区流程结构化
需要主动站出来做一些事情
Managing Large-Scale Edge Cluster Over Unstable Network with KubeEdge
![7ae2893fc2a308ee7655a98cdafe2f44.png](https://file2.kaopuke.com:8081/files_image/2023060823/7ae2893fc2a308ee7655a98cdafe2f44.png)
通过 WS + QUIC 替代 List & Watch,在不稳定的网络环境下避免大量重复传输造成的带宽浪费。
增量传输。
每次传输做响应,避免传输失败。
![ac3f9ec9925638f3f8654183c9f0139f.png](https://file2.kaopuke.com:8081/files_image/2023060823/ac3f9ec9925638f3f8654183c9f0139f.png)
通过 CloudCore 支撑更多的节点。
How to Build Your Cybersecurity Toolkits with Open Source Tools
来自 Aqua 的 Session。
基于边界保护在云原生场景下不是很适用。
![31f8c40a774efb8fba59ab34261049b5.png](https://file2.kaopuke.com:8081/files_image/2023060823/31f8c40a774efb8fba59ab34261049b5.png)
左移翻译成“前置”是不是好一些,感觉“事前”也有点牵强。
下面这张图作为补充更合适:
![f46635d0497343913d4021d3fa52ebd2.png](https://file2.kaopuke.com:8081/files_image/2023060823/f46635d0497343913d4021d3fa52ebd2.png)
![2d1d36487b112505bf9567322e4e7ca7.png](https://file2.kaopuke.com:8081/files_image/2023060823/2d1d36487b112505bf9567322e4e7ca7.png)
![e79f40b1003998991ca828cfa994b936.png](https://file2.kaopuke.com:8081/files_image/2023060823/e79f40b1003998991ca828cfa994b936.png)
供应链攻击是重中之重,感觉云原生场景下供应链攻击的相关资料真不多。
![5b2a08e43929ecc690b1fc0f6fbe5508.png](https://file2.kaopuke.com:8081/files_image/2023060823/5b2a08e43929ecc690b1fc0f6fbe5508.png)
![950664e772098046133d5462c5359819.png](https://file2.kaopuke.com:8081/files_image/2023060823/950664e772098046133d5462c5359819.png)
上述两个图来自:https://gotc.oschina.net/uploads/files/15%20%E5%BC%A0%E6%99%8B%E6%B6%9B%20%E7%94%9F%E4%BA%A7%E7%8E%AF%E5%A2%83%E4%B8%8B%E7%9A%84k8s%E5%AE%89%E5%85%A8%E5%9B%B0%E5%A2%83%E5%8F%8A%E5%BA%94%E5%AF%B9%E6%8E%AA%E6%96%BD-%E5%BC%A0%E6%99%8B%E6%B6%9B.pdf
Aqua 全家桶。
![7736851db18d5597004a787771663ae8.png](https://file2.kaopuke.com:8081/files_image/2023060823/7736851db18d5597004a787771663ae8.png)
![5dd1d9b92f08d79cbb1aa3be751102e5.png](https://file2.kaopuke.com:8081/files_image/2023060823/5dd1d9b92f08d79cbb1aa3be751102e5.png)
![98037eed37ea462d95b2e8eac59c01ec.png](https://file2.kaopuke.com:8081/files_image/2023060823/98037eed37ea462d95b2e8eac59c01ec.png)
![5a26cc8445eb181e115d617f78ecf15e.png](https://file2.kaopuke.com:8081/files_image/2023060823/5a26cc8445eb181e115d617f78ecf15e.png)
How To Migrate Kubernetes Cluster With Zero Downtime
![b22b9bc49e586698ef1287c7085eb415.png](https://file2.kaopuke.com:8081/files_image/2023060823/b22b9bc49e586698ef1287c7085eb415.png)
![cf0ca907a246ac1bb299b0c09ad83f32.png](https://file2.kaopuke.com:8081/files_image/2023060823/cf0ca907a246ac1bb299b0c09ad83f32.png)
![99cceaa0f46697bb19e131312c9e37ee.png](https://file2.kaopuke.com:8081/files_image/2023060823/99cceaa0f46697bb19e131312c9e37ee.png)
Stateful Application 的迁移还是要靠应用自身的能力来完成啊。
![6e6226ad2ec29b9e4df3e8b2db52037d.png](https://file2.kaopuke.com:8081/files_image/2023060823/6e6226ad2ec29b9e4df3e8b2db52037d.png)
![1c06ed5cbc5c2a9d30cdcf80afc5c24d.png](https://file2.kaopuke.com:8081/files_image/2023060823/1c06ed5cbc5c2a9d30cdcf80afc5c24d.png)
![bc72e12900ec5d9637803eb7e47b9f5c.png](https://file2.kaopuke.com:8081/files_image/2023060823/bc72e12900ec5d9637803eb7e47b9f5c.png)
流量迁移主要还是 LB + Cloud Controller Manager。
![84b0c5bfc39b75452e47efa947270ce8.png](https://file2.kaopuke.com:8081/files_image/2023060823/84b0c5bfc39b75452e47efa947270ce8.png)
![5aa2c69705f58d6feaed6cfd478fc13c.png](https://file2.kaopuke.com:8081/files_image/2023060823/5aa2c69705f58d6feaed6cfd478fc13c.png)
![803c169ca6deda6fc58978307b3ba721.png](https://file2.kaopuke.com:8081/files_image/2023060823/803c169ca6deda6fc58978307b3ba721.png)
可以说非常值得网关产品借鉴。
![bb302ed22366c744b4904f23ce44dff1.png](https://file2.kaopuke.com:8081/files_image/2023060823/bb302ed22366c744b4904f23ce44dff1.png)
依赖健康检查的正确配置、容器的优雅退出。
![28a5a24963ad43d5464b6ed486cbacb9.png](https://file2.kaopuke.com:8081/files_image/2023060823/28a5a24963ad43d5464b6ed486cbacb9.png)
![efcf575827dfd5e17c6bef04d5a51b52.png](https://file2.kaopuke.com:8081/files_image/2023060823/efcf575827dfd5e17c6bef04d5a51b52.png)
![546213f9f190688497ecb8da4498f6fc.png](https://file2.kaopuke.com:8081/files_image/2023060823/546213f9f190688497ecb8da4498f6fc.png)
kube-proxy 最靠谱的使用方式就是不用 kube-proxy。
Bagua Lightweight Distributed Learning on Kubernetes
可以说是非常期待的 Session。
Bagua 刚开源的时候就在关注:
https://github.com/BaguaSys/bagua
https://www.infoq.cn/article/bqwk3vdvm3tlcz7blcrq
又回到了 100 张卡训个 Bert 的场景。多机多卡并行训练,好多公司既没能力,也玩不起。Bagua 看起来比 DDP 靠谱多了。
![98ec63064b20499140b02b463e0d169c.png](https://file2.kaopuke.com:8081/files_image/2023060823/98ec63064b20499140b02b463e0d169c.png)
![7fdec624078903ee1b0e70898107e15f.png](https://file2.kaopuke.com:8081/files_image/2023060823/7fdec624078903ee1b0e70898107e15f.png)
![28bcd924784d45de2266de2bc6c0013d.png](https://file2.kaopuke.com:8081/files_image/2023060823/28bcd924784d45de2266de2bc6c0013d.png)
![ffe0db7ff0e69bb79fb39a4a96fdc8cb.png](https://file2.kaopuke.com:8081/files_image/2023060823/ffe0db7ff0e69bb79fb39a4a96fdc8cb.png)
![25fb35137c1a26cac5dff7e6614dedb8.png](https://file2.kaopuke.com:8081/files_image/2023060823/25fb35137c1a26cac5dff7e6614dedb8.png)
这块细节比较多,还是直接看代码比较好。
![984503c6ec650140f74e2031fa3a044c.png](https://file2.kaopuke.com:8081/files_image/2023060823/984503c6ec650140f74e2031fa3a044c.png)
![cbf9c702b8acd0811b0d233082c2c1a8.png](https://file2.kaopuke.com:8081/files_image/2023060823/cbf9c702b8acd0811b0d233082c2c1a8.png)
直接重写 NCCL 可还行。
![bd4b927e3d267679bc668565fe6405fb.png](https://file2.kaopuke.com:8081/files_image/2023060823/bd4b927e3d267679bc668565fe6405fb.png)
![ac2004497df248a40713de68d35eb91c.png](https://file2.kaopuke.com:8081/files_image/2023060823/ac2004497df248a40713de68d35eb91c.png)
Bagua 命名的由来非常有趣。
Exploration About Mixing Technology of Online Services and Offline Jobs Based on Volcano
感觉 Volcano 的设计比 Kubernetes Scheduling-Framework 好一点。
![14cdc0ce6aacc325deb429adcd16352e.png](https://file2.kaopuke.com:8081/files_image/2023060823/14cdc0ce6aacc325deb429adcd16352e.png)
![9ca8e775c5efad8d133f43a1102bccbe.png](https://file2.kaopuke.com:8081/files_image/2023060823/9ca8e775c5efad8d133f43a1102bccbe.png)
![68738e2d616711b4fec14dca628cc249.png](https://file2.kaopuke.com:8081/files_image/2023060823/68738e2d616711b4fec14dca628cc249.png)
细节不是很多,L3 Cache 隔离怎么实现的没展开讲。
![a3c67f400511fb95692ba4d542d3987e.png](https://file2.kaopuke.com:8081/files_image/2023060823/a3c67f400511fb95692ba4d542d3987e.png)
![051b67a162f1e07b0f6b5cb30509dfa4.png](https://file2.kaopuke.com:8081/files_image/2023060823/051b67a162f1e07b0f6b5cb30509dfa4.png)
也要魔改 kubelet。kubelet 应该提供一个插件机制。
![d18d3dd889b74ee7de9b1fd7279c4ad4.png](https://file2.kaopuke.com:8081/files_image/2023060823/d18d3dd889b74ee7de9b1fd7279c4ad4.png)
![4d523b6c564ea99a9cb3e8c97bed91cb.png](https://file2.kaopuke.com:8081/files_image/2023060823/4d523b6c564ea99a9cb3e8c97bed91cb.png)
![0618a56f66d91e8b9220411d8eed04a5.png](https://file2.kaopuke.com:8081/files_image/2023060823/0618a56f66d91e8b9220411d8eed04a5.png)
![573746a05c348824c909be3e5eb1f355.png](https://file2.kaopuke.com:8081/files_image/2023060823/573746a05c348824c909be3e5eb1f355.png)
![700b35c5007fb80438c718685d0690f4.png](https://file2.kaopuke.com:8081/files_image/2023060823/700b35c5007fb80438c718685d0690f4.png)
如何做干扰检测没有展开讲。
小总结
混部和 eBPF 相关的主题明显变多了。
云原生安全的主题也变多了。
边缘计算场景有了新的花样 WASM。
除了 Operator 之外,也有一些新的 K8s 开发的相关 Session,比如 Apiserver Aggregation。
最后
以上就是斯文乌冬面为你收集整理的KubeCon China 2021 回顾(上)小总结的全部内容,希望文章能够帮你解决KubeCon China 2021 回顾(上)小总结所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
发表评论 取消回复