膜拜!阿里内部都在强推的K8S(kubernetes)学习指南,不能再详细了

Posted Java_Pluto

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了膜拜!阿里内部都在强推的K8S(kubernetes)学习指南,不能再详细了相关的知识,希望对你有一定的参考价值。

为什么要有Kubernetes(K8S)?

有了Docker、Docker-Compose,且Docker、Docker-Compose操作起来也不复杂,为什么还要来一个Kubernetes?

的确,有了Docker、Docker-Compose的确是方便了运维的部署,直接几条命令就可以启动起来一个环境了,在加个Volume修改对应的配置文件,就可以实现大部分的环境部署需求。

问题在于,如果此时服务器的性能不够用了,怎么办?

加硬件,在学过分布式思想时,都知道到了某种程度,加机器比在一台机器上堆硬件还要便宜,且堆硬件的问题还在于服务器的硬件接口够不够,如果插槽不够就更悲催了。
所以现在的主流方案都是采用加机器,横向扩展,在加了机器的情况下,这个时候要把应用的环境全部拷贝一份过去就算了,问题在于怎么去管理整个集群,或者说怎么去管理整个已经进行了容器化的集群,性能怎么去平衡?

有的可能会想既然拷贝过去了,那就前置一个nginx,修改Nginx的配置文件,在加一台机器的配置信息就好了,流量就会平衡过去了。那么又有个问题,如果出现了资源倾斜了怎么办?

在以上的种种问题下,我们需要一个能够帮助我们去管理这个集群的工具,而且这个工具能够帮助我们去协调好各个机器的。

目前业界最火的就是Kubernetes。

在这里分享我偶然间得到的一份文档,该文档将K8S分为理论和实践两个部分进行讲解,双管齐下,事半功倍,让我们来看看文档内容

理论篇

理解集群控制器
统一入口
控制器管理器
控制器管理器
SharedInformer
ListWatcher
服务控制器
路由控制器

集群网络详解

集群网络搭建:初始阶段 集群阶段 节点阶段 Pod阶段
通信

在这里插入图片描述

集群伸缩原理

节点增加原理
手动添加已有节点
自动添加已有节点
!/bin/bash
集群扩容
自动伸缩
节点减少原理

认证与调度

在这节中,我们以一个简单的容器化web程序为例,着重分析了客户端怎么样通过Kubernetes集群API Server认证,以及容器应用怎么样被分派到合适节点这两件事情。

“关在笼子里”的程序
双向数字证书验证
KubeConfig文件
Pod配置

集群服务的三个要点和一种实现

以我的经验来讲,理解K8S集群服务的概念,是比较不容易的一件事情。尤其是当我们基于似是而非的理解,去排查服务相关问题的时候,会非常不顺利。

这体现在,对于新手来说,ping不通服务的IP地址这样基础的问题,都很难理解;而就算对经验很丰富的工程师来说,看懂服务相关的iptables配置,也是相当的挑战。

K8S集群服务的本质是什么
自带通信员
把服务照进现实
一种实现
用自定义链实现服务的反向代理

镜像拉取这件小事

导读:相比 K8s 集群的其他功能,私有镜像的自动拉取,看起来可能是比较简单的。而镜像拉取失败,大多数情况下都和权限有关。所以,在处理相关问题的时候,我们往往会轻松的说:这问题很简单,肯定是权限问题。但实际的情况是,我们经常为一个问题,花了多个人的时间却找不到原因。这主要还是我们对镜像拉取,特别是私有镜像自动拉取的原理理解不深。这篇文章,作者将带领大家讨论下相关原理。

顺序上来说,私有镜像自动拉取会首先通过阿里云 Acr credential helper 组件,再经过 K8s 集群的 API Server 和 kubelet 组件,最后到 docker 容器运行时。但是我的叙述,会从后往前,从最基本的 docker 镜像拉取说起。

镜像拉取这件小事
理解 OAuth 2.0 协议
Docker 扮演的角色
K8s 实现的私有镜像自动拉取
阿里云实现的 Acr credential helper

实践

读懂这一篇,集群节点不下线

需要知道的Kubernetes知识
什么是PLEG
容器runtime
Docker Daemon调用栈分析
Containerd调用栈分析
什么是Dbus
RunC请求Dbus
Systemd
Live Debugging
问题修复


节点下线姊妹篇

问题现象
大逻辑
就绪三分钟
止步不前的 PLEG
无响应的 Terwayd

我们为什么会删除不了集群的命名空间?

Controller在做什么?
从集群入口开始
再次回到集群入口
节点与Pod之间的通信

Route Controller为什么不工作?
集群节点访问云资源
问题大图

阿里云ACK产品安全组配置管理

安全组在ACK产品中扮演的角色
安全组与ACK集群网络
怎么样管理ACK集群的安全组规则
IDC与集群互访
使用多个安全组管理集群节点
使用新的安全组管理节点
典型问题与解决方案
限制集群访问公网或者运营级NAT保留地址
容器组跨节点通信异常

二分之一活的微服务

二分之一活的微服务
绕不过去的大图
代理与代理的生命周期管理
就绪检查的实现
控制面和数据面
简单的原因

半夜两点Ca证书过期问题处理惨况总结

不断重启的Citadel
一般意义上的证书验证
Citadel证书体系

以上就是这份文档的概况,一次搞懂6个核心原理吃透基础理论,学会6个典型问题的华丽操作,不管是架构师还是开发者,又或是运维,都能够从中学到不少。

以上的文档已整理成册

最后:

我们身为技术人员,最怕的就是安于现状,一直在原地踏步,那么你可能在30岁就会迎来自己的职业危机,因为你工作这么久提升的只有自己的年龄,技术还是万年不变!

我知道,对于一些学历没有优势的人来说,外包是别无选择,但是未来的路究竟要怎么走,取决你的步子迈多开。每个人都有自己的选择,如果你喜欢稳定,那按部就班适合你,但你有想法,不甘平庸,那就别让外包埋没了你。

如果你想在未来能够自我突破,圆梦大厂,那或许以上这份学习资料,你需要阅读阅读,希望能够对你的职业发展有所帮助。

最后,希望未来的我发展顺利,早日拿下p7!同样,也祝愿你实现自己的人生理想,愿我们都越来越好,共勉!

获取方式: 只需你**点赞+关注后,Java进阶交流群:714827309** 哦-!


获取方式: 只需你点赞+关注后,Java进阶交流群:714827309 进群拿资料哦-!

以上是关于膜拜!阿里内部都在强推的K8S(kubernetes)学习指南,不能再详细了的主要内容,如果未能解决你的问题,请参考以下文章

膜拜-华为内部都在强推的 783 页大数据处理系统:Hadoop 源代码 pdf

膜拜!华为内部都在强推的783页大数据处理系统:Hadoop源代码pdf

Github限时开放!阿里内部强推微服务容器化参考指南我粉了

V587!阿里内部强推2021最新并发编程笔记(全彩版)全网开源

阿里内部强推:10大自动化软件测试工具(附网址)收藏起来偷偷卷死他们

真香!阿里内部强推 GC 小册 Github 一夜爆火,JVM 垃圾回收算法 + 实战一键搞定!