本文仅作为小白理解Okteto,K8s,docker 技术栈的简要概念,及其之前的相互联系。不作深入的展开。

概念理解

1. docker是什么?

Docker是一个开源的应用容器引擎,开发者可以打包他们的应用及依赖到一个可移植的容器中,发布到流行的Linux机器上,也可实现虚拟化。
特点:

  • 使应用的打包与部署自动化
  • 创建轻量、私密的PAAS环境(PaaS是Platform as a Service的缩写,是指平台即服务)
  • 实现自动化测试和持续的集成/部署
  • 部署与扩展webapp、数据库和后台服务

2. k8s是什么?

kubernetes,简称K8s,是一个开源的容器集群管理系统。可以实现容器集群的自动化部署、自动扩缩容、维护等功能。
特点:

  • 可移植: 支持公有云,私有云,混合云,多重云(multi-cloud)
  • 可扩展: 模块化,插件化,可挂载,可组合
  • 自动化: 自动部署,自动重启,自动复制,自动伸缩/扩展

3. Okteto是什么?

Okteto 是一个通过在 Kubernetes 中来开发和测试代码的应用程序开发工具。可以通过Okteto在 Kubernetes 中一键为我们启动一个开发环境,非常简单方便。

docker与k8s的联系

一句话结论:
我们用kubernetes去管理Docker集群,即可以将Docker看成Kubernetes内部使用的低级别组件。Docker 可以被视作 K8s 的一个核心组成元素,而 K8s 是由于 Docker 容器技术的飞速发展而应运而生的编排系统。

传统方式是将所有应用直接部署在同一个物理机器节点上,这样每个App的依赖都是完全相同的,无法做到App之间隔离,当然,为了隔离,我们也可以通过创建虚拟机的方式来将App部署到其中,但这样太过繁重。
现在我们通过容器技术来部署应用,全部运行在容器引擎Docker上即可。
既然嫌弃虚拟机繁重,想用Docker,那好,你用吧,怎么用呢?手动一个一个创建?当然不,以kubernetes为代表的容器集群管理系统,由此而生。

Logo

K8S/Kubernetes社区为您提供最前沿的新闻资讯和知识内容

更多推荐