容器编排引擎Kubernetes 01——什么是K8s

174 阅读2分钟

image.png

1 K8S是什么

Kubernetes,简称K8s,是用8代替名字中间的8个字符 “ubernete” 而成的缩写。

是一个开源的,用于管理云平台中多个主机上的容器化的应用,K8s的目标是让部署容器化的应用简单并且高效,K8s提供了应用部署,规划,更新,维护的一种机制。

K8s是Google开源的一个容器编排引擎,使用Google自家的Go语言开发。它支持自动化部署、大规模可伸缩、应用容器化管理。

2 生产部署

  • 传统部署方式

在生产环境中部署一个应用程序时,通常要部署该应用的多个实例以便对应用请求进行负载均衡。

  • 容器化部署方式

在K8s中,我们可以创建多个容器,每个容器里面运行一个应用实例,然后通过内置的负载均衡策略,实现对这一组应用实例的管理、发现、访问,而这些细节都不需要运维人员手工进行复杂的配置和处理。

3 使用K8S的特点

  • 可移植:

支持公有云(比如华为云、阿里云),

私有云(企业内部使用的云),

混合云(提供给外部用户访问的内容到公有云,内部用户访问的内容在私有云),

多重云(multi-cloud)

  • 可扩展:

模块化,插件化,可挂载,可组合

  • 自动化:

自动部署,自动重启,自动复制,自动伸缩/扩展

4 K8s与Docker

Docker是应用最广泛的容器技术,它通过打包镜像、启动容器来创建服务。然而,随着应用的日益复杂,容器的数量也不断增加,由此衍生出管理运维容器这一重要问题。

随着云计算的发展,容器的漂移成为云端最大的挑战。K8s正是在这种业务的驱动下,提出了一套全新的基于容器技术的分布式架构领先方案,这是容器技术领域中一个重大突破和创新。

  • Docker 针对 PAAS,是以应用为中心;
  • K8s 是一个管理各个工作节点中容器应用,通过api server进行控制,通过kubelet进行管理的容器管理引擎;
  • K8s解决了密钥配置管理、自动二进制打包、自动部署和回滚、存储编排、服务发现和负载均衡等问题。