美文网首页
Kubernetes学习笔记--Kubernetes 是什么?

Kubernetes学习笔记--Kubernetes 是什么?

作者: 木子一酱 | 来源:发表于2020-10-17 10:56 被阅读0次

        前段时间刚好在公司学习产品的安装,由于是ToB的Cloud Native产品,根据文档执行完整的安装步骤,期间接触到不少类似VNFM,Helm,Kubernets(后面使用简称k8s),Docker等相关平台工具,遇到较多的理解不深刻的名词以及没有系统性的认识,在这里记录下来学习笔记以供参考。

一、Kubernetes 是什么?

        参考官网的描述:Kubernetes 是一个可移植的、可扩展的开源平台,用于管理容器化的工作负载和服务,可促进声明式配置和自动化。可以简单理解为就是管理容器的一个平台.

        回顾部署演进,从传统的物理机部署,到虚拟化(VM)部署,再到容器部署,从业经验不久只是刚好经历了公司从VM部署到容器部署的阶段,作为team里的Tester比较深刻的感受到容器部署带来的好处. 比如:

1. 开发与运维更好的分离:能够在构建发布时创建应用程序容器镜像而无需等到部署时,从而将应用程序与基础架构分离。

2.跨开发、测试和生产的环境一致性:虽然测试环境跟线上还是会有些资源配置值不一样,但是大部分情况下都可以避免配置不一样的一样了。

3.持续开发、集成和部署:通过快速简单的回滚(由于镜像不可变性),提供可靠且频繁的容器镜像构建和部署。

4.松散耦合、分布式、弹性、解放的微服务:应用程序被分解成较小的独立部分,并且可以动态部署和管理 - 而不是在一台大型单机上整体运行。

二、Kubernetes 的作用

        容器是打包和运行应用程序的好方式,在生产环境中,我们需要管理运行应用程序的容器,并确保不会停机。这就延伸出管理这些容器时,如何满足扩展要求、故障转移、部署模式等问题。K8s就提供了:

1. 服务发现和负载均衡:如果容器流量很大,Kubernetes 可以负载均衡并分配网络流量。

2. 存储编排:可自动挂载选择的存储系统,例如本地存储、提供商公共云等

3. 自动部署和回滚:可以删除现有的容器创建新容器,或者检测容器的状态比如新发布的容器非running状态的时候自动回滚到上一版本。

4. 自动二进制打包:可以指定每个容器所需 CPU 和内存。一般都是指定限制的最大资源以及需要的资源,Kubernetes 可以做出更好的决策来管理容器的资源。

5. 自我修复:能够自动重新启动失败的容器、替换容器、杀死不响应用户定义的运行状况检查的容器。

6. 秘钥与配置管理:k8s可存储和管理敏感信息,如密码、OAuth 令牌和 ssh 密钥。可以在无需重建容器镜像及部署的情况下更新密钥和应用程序配置,也无需在堆栈配置中暴露密钥。

相关文章

网友评论

      本文标题:Kubernetes学习笔记--Kubernetes 是什么?

      本文链接:https://www.haomeiwen.com/subject/dzyxmktx.html