注意:以下文档只适用于TOP接口,请谨慎使用!

文档中心 > 聚石塔

创建云应用

更新时间:2023/01/04 访问次数:3048

“部署类型”如何选择?

聚石塔目前支持以下“部署类型”

  • 容器部署
  • Serverless容器
  • 虚拟机部署(不再升级,保持原有客户
  • 轻容器部署(不再升级,保持原有客户

 

“容器部署”、“Serverless容器”是推荐的接入方式,主要区别及对比如下:

 

容器部署(K8S)与Serverless容器对比

 

容器部署(K8S)

Serverless

适用场景

适用于业务规模较大,业务流量无规律或流量平稳,容器实例需常驻提供服务的应用

适用于业务场景简单,业务流量规律,有明显波峰波谷或有周期性的弹性伸缩业务场景

运维成本方面

1.集群版本更新时,需要手工进行集群版本升级

2.需要管理容器集群内ECS的生命周期。

免运维

易用性方面

1.需要新建集群,管理容器集群节点(ECS)资源

2.需要进行功能扩展安装,如日志采集组件

1.开箱即用,直接创建云应用即可

2.与微服务引擎MSE无缝集成

灵活性方面

1.支持多种应用类型(无状态应用、有状态应用、守护进程集、CronJob等)。

2.根据自身需求灵活安装插件。

目前仅支持无状态应用

成本方面

1.周期性弹性伸缩场景下,Serverless容器拥有更好的性价比

2.日常应用实例无须弹性伸缩情况下,容器部署更具性价比

详情见价格对比:点击查看详情

 

 

 

“应用类型”如何选择?

支持的应用类型

聚石塔应用类型目前支持已下应用类型

  • 无状态应用
  • 有状态应用
  • 守护进程集
  • 定时任务
  • IngressController

 

与K8S概念的对应关系

聚石塔应用类型

对应K8S概念

无状态应用

Deployment

有状态应用

StatefulSet

守护进程集

DaemonSet

定时任务

CronJob

IngressController

IngressController

如何选择应用类型

有状态无状态之间的选择

尽量选择无状态服务,比如日志,打印标准输出到持久化存储,通过SLS日志服务采集处理。数据库有状态服务不建议部署在容器平台,有状态会限制可扩展性、降低可用性并增加成本。

比如web,无状态服务存储的html和日志文件,这些数据,每个pod访问都是一致的,可以用无状态配合分布式存储nas,做数据持久化。

1. 无状态应用

无状态应用是最常用的一种应用类型,它运行的实例不会在本地存储需要持久化的数据,并且多个实例对于同一个请求响应的结果是完全一致的,多个实例可以共享相同的持久化数据,可以轻松实现扩缩容。例如:nginx实例,tomcat实例等。

 

2. 有状态应用

有状态服务可以说是需要数据存储功能的服务、或者指多线程类型的服务,队列等。(mysql数据库、kafka、zookeeper等)。每个实例都需要有自己独立的持久化存储。
YAML配置可参考:点击查看说明文档
使用持久化存储可参考:点击查看说明文档

 

3. 守护进程集

DaemonSet确保全部(或某些)节点上运行一个Pod副本。当有节点加入集群时,也会为他们新增一个Pod。当有节点从集群移除时,这些Pod也会被回收。删除DaemonSet将会删除它创建的所有Pod。

DaemonSet 的典型应用场景有

  1. 在集群的每个节点上运行存储 Daemon,比如 glusterd 或 ceph。
  2. 在每个节点上运行日志收集 Daemon,比如 flunentd 或 logstash。
  1. 在每个节点上运行监控 Daemon,比如 Prometheus Node Exporter 或 collectd。

具体使用文档:点击查看

 

4. 定时任务

一个 CronJob 对象就像Linux系统中的 crontab (cron table) 文件中的一行。它用 Cron 格式进行编写,并周期性地在给定的调度时间执行 Job。

具体使用文档:点击查看

5. IngressController

ingress将来自集群外部的HTTP和HTTPS路由暴露给集群内的服务(k8s Service),流量路由规则由ingress资源来定义。简单的来说,ingress能够将不同域名+ 路径(如 aaa.com/api)映射到集群内的k8s service上。

详细解释及使用文档:点击查看

 

 

FAQ

关于此文档暂时还没有FAQ
返回
顶部