聚石塔容器部署平台
创建集群
- 由主账号拥有者创建一个Kubernetes集群,创建步骤如下:
- 集群创建入口 - 运维中心组件
- 第一步:设置集群名称、选择region、专有网络和虚拟交换机;专有网络选择目前ECS集群所在的VPC,需要添加ECS作为work节点。

- 第二步:添加ECS节点进入集群,注意这里ECS不要选择部署服务或者带有数据的服务器,因为将节点添加进k8s集群时会初始化您的服务器,因此请选用空闲的或者新购机器。密钥和密码方式都可以,推荐使用密钥方式。

- 第三步:目前Kubernetes集群默认只提供Terway网络插件,

- 共创阶段如有创建集群失败的情况请反馈平台查明原因,集群初始化和ECS节点添加大概需要10分钟。
- 集群列表页

- 集群信息详情

- 节点列表

- 添加节点/移除节点:目前移除节点操作需要慎重。
创建应用


【注意】店铺二楼的H5应用请选择业务类型为“手淘互动应用”(不是手淘H5业务的不要选择这个),发布方式为“容器部署”。
注意选择部署方式为容器部署

应用发布(容器部署)
- 第一步:应用概览页或者应用列表页点击发布按钮

- 第二步:首次部署的应用,需要生成部署配置,推荐使用一键生成,如果要使用自定义镜像的请在容器镜像服务上传自己的镜像,参考文档
- 一键部署配置说明:实例数量请设置正整数,建议最少保证2个节点,具体由用户自行决定。
- CPU:单位核数,内存单位MiB,请按照自己的需求设置。CPU、内存设置为0表示不预分配资源,争抢模式。建议谨慎使用争抢模式,可能会导致机器上的容器进程被不可预知的kill。
- 注意:CPU和内存的选择不能够超过集群内ECS规格的最大值,且需要有一定余量。比如4核8G的ECS最大能够部署约4核7G的容器总量。

- 高级配置说明:
- 环境类型:目前只支持正式环境类型,如有别的环境类型需求请联系聚石塔。
- 部署根目录:应用程序部署路径,可以自行设置;也可以不设置部署根目录,部署系统会只启动镜像。
容器配置说明:
- 实例数量:指定要部署的容器数量(不是你的机器数量,而是你要部署几个容器)
- CPU&内存:指定的是单个容器的资源使用
- 端口映射:指明容器需要暴露的端口(如tomcat镜像的8080端口),如果后续需要配置“流量接入”,这里必须指定流量接入对应的端口,否则流量接入将不可用。
- 环境变量:如果是选择官方镜像、一键生成配置会默认生成环境变量,比如java启动参数设置,可按照自己的需求进行修改,注意容器内存需要大于JVM堆内存大小,否则会导致启动失败;自定义镜像请根据自己的镜像填写,环境变量会以docker env的形式传入到容器中。
- 文件挂载:所填内容将以文件的形式挂载到容器内的指定目录下。注意:默认只有.sh结尾的文件具有可执行权限,其他文件默认为读写权限。
- 目录挂载:建议将日志,或者容器内的数据目录(如临时文件存储)以目录挂载的形式挂载到宿主机上,保证容器所占用的磁盘空间不会被占满,容器占用磁盘空间过大会导致容器直接挂掉。
- 健康检查配置:目前支持http和shell脚本检测应用健康状态,请一定保证设置正确,否则会导致容器启动失败。SpringBoot2默认设置值为 http://127.0.0.1:8081/actuator/health。

- 发布流程:通过新建发布单、上传代码包进行发布,支持分批发布功能
- 发布管理:显示目前正在进行的发布单
- 程序包管理:记录已经进行发布的程序包,可以快速发布某个程序包,达到回滚的目的
- 发布记录:记录历史发布记录

- 发布批次:比如10个实例分5批,每批就是2个实例
- 暂停模式(每批暂停|第一批暂停):第一批暂停是部署第一批后,该发布单暂停发布,点击了“恢复”之后才会继续,剩下的批次依次发布了;每批暂停是指每部署完一批都暂停,点“恢复”后开始下一批

- 1、【开始下一批】:默认是置灰不能点击的,根据发布单的状态来判断,如果当前发布单的状态是"暂停",则变为可以点击。
- 2、【切换为每批暂停】、【切换为第一批暂停】、【切换为不暂停】:这三个按钮是互斥的,当前发布单正在使用的暂停策略是灰色不可点击的,用户可以点击其他两个按钮来切换暂停策略,点击后选中的暂停策略变为灰色,同理其余两个变为可点击
- 3、【批量失败重试】:会重试发布失败的实例,此按钮可随时点击,没有失败记录时后台会忽略
- 4、【关闭发布单】:发布单处于非"已完成"状态时可点击,点击后会关闭当前发布单,并将发布单职位失败

- 环境管理


- 发布完成后在环境管理页面可以查看已经部署成功的应用实例数,资源管理页面内可以看到具体pod节点的信息。


可以使用“远程登录”功能登录到容器中。
容器配置说明:
- 端口映射:指明容器需要暴露的端口(如tomcat镜像的8080端口),如果后续需要配置“流量接入”,这里必须指定流量接入对应的端口,否则流量接入将不可用。
- 环境变量:如果是选择官方镜像、一键生成配置会默认生成环境变量,比如java启动参数设置,可按照自己的需求进行修改,注意容器内存需要大于JVM堆内存大小,否则会导致启动失败;自定义镜像请根据自己的镜像填写,环境变量会以docker env的形式传入到容器中。
- 文件挂载:所填内容将以文件的形式挂载到容器内的指定目录下。注意:默认只有.sh结尾的文件具有可执行权限,其他文件默认为读写权限。
- 目录挂载:建议将日志,或者容器内的数据目录(如临时文件存储)以目录挂载的形式挂载到宿主机上,保证容器所占用的磁盘空间不会被占满,容器占用磁盘空间过大会导致容器直接挂掉。
- 健康检查配置:目前支持http和shell脚本检测应用健康状态,请一定保证设置正确,否则会导致容器启动失败。SpringBoot2默认设置值为 http://127.0.0.1:8081/actuator/health。


流量接入
流量接入提供了利用负载均衡SLB连接容器节点公网和内网的通道。给应用绑定一个公网SLB后,即可从相应端口访问容器内的服务。

