组件概述
组件简介
组件是组成应用的某个业务特性实现,以代码或者软件包为载体,可独立部署在环境下运行。
组件和应用、环境的关系,如图1所示。
在ServiceStage上创建应用和环境后,您可以根据实际业务需求设置组件技术栈及对应的组件来源(包类型、存储方式),基于界面创建并部署组件。
ServiceStage也提供了通过组件模板自动化创建组件、升级组件的能力。通过已经创建好的组件模板创建组件的同时,可以进行配置创建、Kubernetes资源创建,请参考使用组件模板创建组件。
技术栈简介
技术栈包含组件运行所依赖的操作系统、框架和运行时,由技术栈名称、类型、状态、版本等属性构成。其中,版本遵从语义化版本控制规范。
ServiceStage为您提供并管理技术栈生命周期,您只需聚焦具体业务开发,提升您的应用托管体验。
技术栈各生命周期阶段定义如下:
- Preview:Beta版本技术栈发布。
- GA(General Availability):正式版本技术栈发布。
- EOL(End of Life):技术栈生命周期结束。
技术栈状态定义如下:
- Preview:生命周期处于Preview阶段的技术栈。
- Supported:生命周期处于GA阶段的技术栈。
- Deprecated:生命周期处于GA阶段但是已经发布了EOL公告的技术栈,或者ServiceStage服务不主推的技术栈。
ServiceStage提供了如表1所示的开源技术栈供您使用。开源技术栈使用过程中如果遇到问题,请查看所使用技术栈官方论坛和社区、联系技术支持工程师寻求帮助。
如果ServiceStage提供的开源技术栈不能满足您的业务需求,您也可以使用自定义技术栈版本,请参考添加技术栈自定义版本。
ServiceStage支持部署打包为War包的基于Spring Boot框架开发的Java应用组件。JDK和Spring Boot版本配套关系如下所示:
- OpenJDK8:支持Spring Boot 2.0.x~2.7.x。
- OpenJDK11:支持Spring Boot 2.2.x~2.7.x。
- OpenJDK17:支持Spring Boot 2.5.x及以上版本。
- OpenJDK21:支持Spring Boot 2.7.x及以上版本。
Spring Boot版本详细说明,请参考Spring Boot版本说明。
技术栈名称 |
技术栈类型 |
技术栈状态 |
发布说明 |
包类型和部署方式 |
---|---|---|---|---|
OpenJDK8 |
Java |
Supported |
|
|
OpenJDK11 |
Java |
Supported |
|
|
OpenJDK17 |
Java |
Supported |
|
|
OpenJDK21 |
Java |
Supported |
|
|
Tomcat8/OpenJDK8 |
Tomcat |
Supported |
|
|
Tomcat9/OpenJDK8 |
Tomcat |
Supported |
|
|
Node.js8 |
Node.js |
Supported |
|
|
Node.js14 |
Node.js |
Supported |
|
|
Node.js16 |
Node.js |
Supported |
|
|
Node.js18 |
Node.js |
Supported |
使用虚拟机部署方式基于Node.js18创建并部署的组件,组件运行环境下的主机操作系统GLIBC版本需要大于等于2.25。否则,组件将无法正常启动。
|
|
Docker |
Docker |
- |
CCE提供支持,请参见Kubernetes版本发布说明。 |
包类型为镜像包,支持容器部署,详情请参考组件部署方式说明。 |
Python3 |
Python |
- |
|
包类型为源码或Zip包,支持容器部署,详情请参考组件部署方式说明。 |
Php7 |
Php |
- |
|
包类型为源码或Zip包,支持容器部署,详情请参考组件部署方式说明。 |
组件来源说明
如表1所示,使用ServiceStage创建部署组件时,需要根据选择的不同部署方式选择组件来源。您可以选择的包类型有源码仓库、软件包(Jar包、War包、Zip包、压缩包)或者镜像包,也可以根据实际业务需要选择包的存储方式,详情请参见表2。
包类型 |
存储方式 |
---|---|
源码仓库 |
参考创建仓库授权创建授权,然后设置代码来源。 |
Jar包 |
支持以下上传方式:
|
War包 |
|
Zip包 |
|
压缩包 |
|
镜像包 |
容器应用需要基于镜像创建。支持“我的镜像”(私有镜像)、“开源镜像”、“共享镜像”、“第三方镜像”。
|
组件部署方式说明
ServiceStage支持的组件部署方式,请参考表3。
组件部署方式 |
说明 |
---|---|
容器部署 |
容器部署组件利用容器技术(如Docker、Kubernetes等)来打包应用及其依赖,使之在任何环境中都能一致地运行,能够有效地简化部署流程,提高开发、测试以及生产环境之间的一致性。借助云容器引擎CCE、自定义K8s集群,您可以轻松部署、管理和扩展容器化应用程序。 ServiceStage支持您在“Kubernetes”、“虚拟机+Kubernetes”类型的环境下使用容器部署方式创建部署组件。环境类型说明,请参考环境类型说明。 |
虚拟机部署 |
虚拟机,即弹性云服务器ECS或者自定义服务器,是由CPU、内存、操作系统、云硬盘组成的基础的计算组件。弹性云服务器创建成功后,您就可以像使用自己的本地PC或物理服务器一样,在云上使用弹性云服务器,将组件部署在虚拟机上。 ServiceStage支持您在“虚拟机”、“虚拟机+Kubernetes”类型的环境下使用虚拟机部署方式创建部署组件。环境类型说明,请参考环境类型说明。 |
组件管理操作流程
如图2所示,组件管理操作包括以下操作:
- 在使用组件管理之前,您需要先准备资源:
- 根据组件部署方式说明,创建和部署组件。
- 根据实际业务需求管理已创建组件:
- 升级单个组件,请参考升级单个组件版本配置。
- 批量升级组件,请参考批量升级组件版本配置。
- 以组件的历史版本配置为模板,重新部署该组件,请参考重新部署组件。
- 将已经升级的组件版本配置回滚到升级前,请参考回滚组件版本配置。
- 管理组件运行指标、组件日志,请参考组件运维。
- 管理组件实例伸缩,请参考设置组件实例伸缩策略。