k8s
K8S,就是基于容器的集群管理平台,它的全称,是kubernetes,是由Google创造容器编排系统。
Kubernetes 这个单词来自于希腊语,含义是舵手或领航员,K8S是它的缩写,用“8”字替代了“ubernete”这8个字符。
Kubernetes不仅是一个容器编排系统,还是一个微服务或者云原生的平台。
- 服务注册与发现;
- 负载均衡;
- 服务自愈;
- 横向扩展;
- 日志监控;
- 集群自愈和容错;
- 弹性伸缩等功能
docker
Docker是一个开源项目,诞生于 2013 年初,最初是 dotCloud 公司内部的一个业余项目,它基于 Google 公司推出的 Go 语言实现。
Docker容器:容器就是将软件打包成标准化单元,以用于开发、交付和部署。
1. 作为云主机使用
相比虚拟机来说,容器使用的是一系列非常轻量级的虚拟化技术,使得其启动、部署、升级跟管理进程一样迅速,用起来灵活又感觉跟虚拟机一样没什么区别,所以有些人直接使用Docker的Ubuntu等镜像创建容器,当作轻量的虚拟机来使用。
2. 作为服务使用
Docker容器最重要价值在于提供一整套平台无关的标准化技术,简化服务的部署、升级、维护。
只要把需要运维的各种服务打包成标准的集装箱,就可以在任何能运行Docker的环境下跑起来,达到开箱即用的效果,这个特点才是Docker容器风靡全球的根本原因。
3. 微服务架构使用
微服务架构将传统分布式服务继续拆分解耦,形成一些更小服务模块,服务模块之间独立部署升级,这些特性与容器的轻量、高效部署不谋而合。
k8s和docker区别
k8s和Docker区别如下:
1.Docker是容器化技术,K8S是一套自动化部署工具,可管理Docker容器。
2.K8S是Google开发的,Docker是基于Google公司推出的 Go 语言实现。
3.Docker即容器引擎解决方案,它的容器编排解决方案Docker Compose,以及Docker Swarm,Kubernetes 是另一种集群容器解决方案,将其与 Docker Swarm 进行比较。
4.Docker是应用最广泛的容器技术,它通过打包镜像、启动容器来创建服务,然而随着应用的日益复杂,容器的数量也不断增加,由此衍生出管理运维容器这一重要问题。
随着云计算的发展,容器的漂移也是云端最大的挑战,k8s正是在这种业务的驱动下,提出了一套全新的基于容器技术的分布式架构领先方案,这是容器技术领域中一个重大突破和创新。
陈睿mikechen
10年+大厂架构经验,资深技术专家,就职于阿里巴巴、淘宝、百度等一线互联网大厂。
关注「mikechen」公众号,获取更多技术干货!
后台回复【面试】即可获取《史上最全阿里Java面试题总结》,后台回复【架构】,即可获取《阿里架构师进阶专题全部合集》