本课程的关键知识点总结:
- 容器编排是指自动化容器的部署、管理、扩展和联网。通过容器编排,可以构建跨多个容器的应用服务、跨集群调度容器、扩展这些容器,并持续管理它们的健康状况。
- Kubernetes是一个开源的容器编排引擎,它支持自动化部署、大规模可伸缩、应用容器化管理。Kubernetes由负责管理和控制的一个或多个Master节点,及多个负责工作负载的Worker节点构成。Kubernetes的原子调度单位是Pod,Pod是一个逻辑概念,是一组紧密关联的容器的集合,也叫容器组。Kubernetes就像一个操作系统,Pod就像一个进程组,容器就像一个进程。
- Kubernetes有如下基本概念:
- Pod(容器组): Pod是一个逻辑概念,是一组紧密关联的容器的集合。
- Controller(控制器):控制器通过控制循环监控集群状态,将当前状态转变为期望状态。控制器包含节点控制器、命名空间控制器、工作负载控制器等多种。
- Workload(工作负载):工作负载是在 Kubernetes 上运行的应用程序,分为无状态、有状态、任务、定时任务等多种类型。
- Service(服务):将运行在一个或一组Pod上的应用程序公开为网络服务的方法,是真实应用服务的抽象。
- PV、PVC(存储卷及存储声明):PV是存储卷,是集群内的存储资源,PV独立于Pod的生命周期。PVC是存储卷声明,是资源的使用者。Pod挂载PVC,PVC消耗PV资源。
- Namespace(命名空间):命名空间为容器集群提供虚拟的隔离作用。
- etcd:etcd是一个分布式、一致且高可用的键值存储系统,用作Kubernetes所有集群数据的后台数据库。
- ACK是阿里云推出的容器服务,是全球首批通过Kubernetes一致性认证的服务平台,提供高性能的容器应用管理服务,支持企业级Kubernetes容器化应用的生命周期管理,让用户轻松高效地在云端运行Kubernetes容器化应用。ACK包含专有版、托管版和Serverless版(ACK Serverless)三种形态。
- ACK Serverless是阿里云容器服务Serverless版。用户无需购买节点即可直接部署容器应用,无需对集群进行节点维护和容量规划,根据应用配置的CPU和内存资源量按需付费。
- 基于ACK Serverless搭建企业网站,包含三个主要步骤:
- 创建ACK Serverless集群:创建ACK Serverless集群,不配置额外组件。
- 部署应用:基于镜像创建无状态工作负载,配置存储,通过负载均衡提供服务。
- 查看和管理集群:查看集群、容器组等信息、配置监控并管理集群。
通过本课程,我们基于ACK Serverless构建了公司网站的容器集群,完成了网站应用的上线。但如果要进一步运营好公司网站,仍然面临网站应用升级等一系列实际使用的问题,比如:
- 如何实现网站应用的版本更新
- 在应用更新和发布过程中需要关注哪些问题
- 基于容器的应用更新发布最佳实践
在后续课程中,我们将继续介绍这些方面的内容,欢迎持续关注和学习。
练习实验:通过ASK搭建企业级网站应用
https://developer.aliyun.com/adc/scenario/ace330daa1d7428cacf3225bea3207e2