上QQ阅读APP看书,第一时间看更新
第2章 Kubernetes快速入门
Kubernetes集群将所有节点上的资源都整合到一个大的虚拟资源池里,以代替一个个单独的服务器,而后开放诸如CPU、内存和I/O这些基本资源用于运行其基本单元——Pod资源对象。Pod的容器中运行着隔离的任务单元,它们以Pod为原子单位,并根据其资源需求从虚拟资源池中为其动态分配资源。若可以将整个集群类比为一台传统的服务器,那么Kubernetes(Master)就好比是操作系统内核,其主要职责在于抽象资源并调度任务,而Pod资源对象就是那些运行于用户空间中的进程。于是,传统意义上的向单节点或集群直接部署、配置应用的模型日渐式微,取而代之的是向Kubernetes的API Server提交运行Pod对象。
API Server是负责接收并响应客户端提交任务的接口,用户可使用诸如CLI工具(如kubectl)、UI工具(如Dashboard)或程序代码(客户端开发库)发起请求,其中,kubectl是最为常用的交互式命令行工具。快速了解Kubernetes的办法之一就是部署一个测试集群,并尝试测试使用它的各项基本功能。本章在简单介绍核心资源对象后将尝试使用kubectl创建Deployment和Service资源部署并暴露一个Web应用,以便读者快速了解如何在Kubernetes系统上运行应用程序的核心任务。