019 云原生之 Kubernetes 主要功能
Kubernetes 主要提供了以下功能:
● 服务发现和负载均衡。Kubernetes 可以使用 DNS 名称或使用自己的 IP 地址公开容器。如果容器的流量很高,Kubernetes 也支持将这些流量均衡分配,以确保系统稳定。
● 存储编排。Kubernetes 允许用户自动加载自选的存储系统,例如本地存储、NFS 存储等。
● 自动部署和回滚。Kubernetes 可以描述已部署容器的所需状态,并且可以以受控的方式更新现有状态到预期状态。
● 管理资源。Kubernetes 允许用户指定每个容器请求的资源,以便更好地管理容器的资源。
● 自我修复。Kubernetes 可以重新启动失败的容器、替换容器,也可以终止不响应用户自定义的运行状况检查的容器。
● 密钥和配置管理。Kubernetes 允许用户存储和管理敏感信息,例如密码、TLS 证书等。用户可以部署和更新机密信息而无须重建容器,也不会泄露机密信息。
Kubernetes 不是一个传统 PaaS 平台,它提供的功能包括部署、扩展、负载平衡、日志记录和监控,且解决方案都是可选和可插拔的。
Kubernetes 分控制节点(Master Node)和工作节点(Worker Node),在 Kubernetes 中,Master 节点可以是一个,也可以是通过 Keep Alived 技术组建的 Master Cluster,以保证高可用性。
Kubernetes 架构
工作节点(Node)是在 Kubernetes 中承载业务工作的节点。在后面部署 Kubernetes 集群时可以看到,节点可以是一个虚拟机,也可以是一台裸机。每个节点上都运行 Docker、kubelet 和 kube-proxy 等服务,从而保障 Pod 的正常运行。所有工作节点由 Master 组件进行统一管理。
命名空间(Namespace)是 Kubernetes 中的一个重要概念,如同编程语言中的命名空间,它把系统内部的对象归集到不同的逻辑小组中,从而便于分别管理。Kubernetes 默认有一个 default 命名空间,在操作时没有指明命名空间的对象都在 default 下。一般情况下,还会有一个 kube-system 命名空间,Kubernetes 中管理方面的对象基本都在该命名空间下,一般不建议用户放置普通应用对象在该命名空间下。
版权声明: 本文为 InfoQ 作者【穿过生命散发芬芳】的原创文章。
原文链接:【http://xie.infoq.cn/article/96a4028af002da21c84a20693】。文章转载请联系作者。
评论