【K8s 精选】Kubernetes 简介
2020-12-19 本文已影响0人
熊本极客
1 什么是 Kubernetes
Kubernetes 是一个开源的、用于管理多主机上的容器化应用,使得容器化应用的部署变得简单和高效。它提供了应用部署、规划、更新、扩缩容、监控等功能。
什么是Kubernetes.JPGKubernetes 是一个开源容器管理工具,负责容器部署、容器扩缩容以及负载均衡。
2 容器编排的价值
以微服务架构为例,微服务是解决软件长期演进的一种方案,适用快速迭代和小团队解决大问题。
容器编排有如下具体好处:
① 部署大规模容器,实现容器部署、扩缩容和升级的自动化,同时具备较高的可定义性(自定义插件);
② 运维自动化,实现容器自动运行和监控。例如,如果微服务某节点挂了,Kubernetes 可以自动拉起来;
③ 小团队解决大问题,例如微服务可以通过定义的 API 解耦大型系统,一方面模块的团队保持较小规模,另一方面易于扩展模块和团队;
3 容器和主机部署应用的区别
(1)主机部署应用程序
如下左图所示,所有应用程序共享依赖、操作系统内核。例如,Java 应用程序 A 可以访问 Python 依赖,而 Python 应用程序 B 可以访问 Java 依赖。
(2)容器部署应用程序
如下右图所示,应用程序各自有自己的依赖,共享操作系统内核。例如,Java 应用程序 A 只可以访问 Java 依赖,而 Python 应用程序 B 只可以访问 Python 依赖。
主机和容器部署应用的区别.JPG说明:虽然应用程序共享操作系统,但是资源是隔离的和限制的。例如,应用程序 A 只能看到自己,看不到应用程序 B 及其容器。