文章目录
1.1.Kubernetes是什么
Kubernetes是一个完备的分布式系统支撑平台,具有完备的集群管理能力,包括多层次的安全防护和准入机制,多租户的应用支撑能力,透明的服务注册和服务发现机制,内建的智能负载均衡器,强大的故障发现和自我修复能力,服务滚动升级和在线扩容能力,可扩展的资源调度机制,以及多粒度资源配额管理能力,同时,提供了完善的管理工具,这些工具涵盖了包括开发,部署测试,运维监控在内的各个环节。因此,Kubernetes是一个全新的基于容器技术的分布式架构解决方案,并且是一个一站式完备的分布式系统开发和支撑平台
1.2.为什么要用Kubernetes
- 轻松上阵开发复杂的系统,以前需要很多人一起分工协作才能设计,实现和运维的分布式系统,使用Kubenets解决方案后,只需要一个精悍的小团队就能完成任务
- 可以全面拥护微服务架构,微服务的核心就是将一个巨大的单体应用分解为很多小的互相连接的微服务,一个微服务可能由多个实例副本进行支撑,副本的数量可以随着系统的负荷变化进行调整。微服务架构使得每个服务都可以独立开发,升级和扩展,因此系统具备很高的稳定性和快速迭代能力
- 可以随时随地将系统整体搬迁到公有云上
- 内在的服务弹性扩容机制可以让我们轻松的应对突发流量。在服务高峰期我们可以选择在公有云中快速扩容某些service的实例副本提升系统的吞吐量
1.3.Kubernetes基本概念和术语
1.3.1.Master
Kubernetes集群里面都需要一个Master来负责整个集群的管理和控制,Kubernetes所有的控制命令都发给他,它负责具体的执行工程,我们后面执行的所有命令基本都是在master节点上执行的master上面运行以下关键进程
- kube-apiserver:提供了HTTP Rest接口关键的服务进程,是Kubernetes离所有的资源增删改查等操作的唯一入口,也是集群控制的入口进程
- kube-controller-manager:所有资源对象的自动化控制中心
- kube-scheduler:负责pod调度
1.3.2.Node
运行以下关键进程
- kubelet:负责pod对应容器的创建,启停等任务,同时与master密切合作,实现集群管理的基本功能
- kube-proxy:实现Kubernetes Service的通信与负载均衡机制的重要组件