一文读懂大厂必会的 K8S 技能,yyds!
2022-11-7 12:19:30 Author: Linux学习(查看原文) 阅读量:25 收藏

K8s现在已经成为容器编排的事实标准,除了DevOps外,越来越多的工作负载,包括交易事务、音视频流媒体处理、通信系统、人工智能等等都开始使用K8s。随着云原生逐渐吞噬一切,K8s会容纳越来越多的工作负载。K8s已经成为云环境的“Linux操作系统“

它的很多设计思想都契合了微服务和云原⽣应⽤的设计法则,这其中最著名的就是Heroku PaaS平台的工程师总结的12大因素,这12个因素大致就是按照软件开发到交付的流程顺序来写的:
1.基准代码
每个代码仓库(repo)都⽣成docker image保存到镜像仓库中,并使⽤唯⼀的ID管理,在Jenkins中使⽤编译时的ID。
2.依赖

显式得声明代码中的依赖,使⽤软件包管理⼯具声明,⽐如Go中的Glide。

3.配置

将配置与代码分离,应⽤部署到kubernete中可以使⽤容器的环境变量或ConfigMap挂载到容器中。

4.后端服务

把后端服务当作附加资源,实质上是计算存储分离和降低服务耦合,分解单体应⽤。

5.构建、发布、运⾏

严格分离构建和运⾏,每次修改代码⽣成新的镜像,重新发布,不能直接修改运⾏时的代码和配置。

6.进程

应⽤程序进程应该是⽆状态的,这意味着再次重启后还可以计算出原先的状态。

7.端⼝绑定

在kubernetes中每个Pod都有独⽴的IP,每个运⾏在Pod中的应⽤不必关⼼端⼝是否重复,只需在service中指定端⼝,集群内的service通过配置互相发现。

8.并发

每个容器都是⼀个进程,通过增加容器的副本数实现并发。

9.易处理

快速启动和优雅终⽌可最⼤化健壮性,kuberentes优秀的Pod⽣存周期控制。

10.开发环境与线上环境等价

在kubernetes中可以创建多个namespace,使⽤相同的镜像可以很⽅便的复制⼀套环境出来,镜像的使⽤可以很⽅便的部署⼀个后端服务。

11.⽇志

把⽇志当作事件流,使⽤stdout输出并收集汇聚起来,例如到ES中统⼀查看。

12.管理进程

后台管理任务当作⼀次性进程运⾏, kubectl exec 进⼊容器内部操作。

K8S入门学习推荐

K8S入门首推官方文档(1022P)

组织结构好,浅显易懂,此书将你带入k8s的世界,让你快速熟练使用。

本书从k8s起源说起,然后介绍了核心概念,pod、service、deployment、statefulset,都附带有小实例可以让读者练习,接着介绍暴露服务的ingress,持久化存储volume,以及configmap来接偶配置,secret保存敏感数据,通过这些读者可以搭建自己的应用了;最后研究了集群内部api服务器,计算资源监控,自动伸缩,高级调度等。

初学者可以先粗读一遍,了解基础知识,开始练习,然后再重读一遍会有惊喜。有经验者此书可以帮你理清知识,融会贯通。
Kubernetes 权威指南(518P)
最早的中文k8s书籍,从实例讲起,阐述了基本概念,实践指南,核心原理,开发指导,运维指南,新特性演进,图文并茂,内容丰富。

扫码领取,备注K8S

PS:劳驾您点赞转发~


文章来源: http://mp.weixin.qq.com/s?__biz=MzI4MDEwNzAzNg==&mid=2649459461&idx=1&sn=fafada30dc0a6f2bce8a19876485fc9e&chksm=f3a2aa76c4d52360eaf83fb59088d2e3f8fefcac0affe1eda589fb545ded91d7a4c65e4c9c33#rd
如有侵权请联系:admin#unsafe.sh