一键部署能力及配合摘录

一键部署方案

需求背景

客户能够一键安装整个集群

前提条件

  • 客户所用业务单元全为Docker容器
  • 客户所用关系数据库: Mysql
  • 其他数据存储单元?
    Nfs/Nas/Redis?

大范围隐患

K8s Node节点池隔离?

Master 宕机影响全客户更新及容器飘逸

其他不隔离的情景下产生的问题梳理?

  • ……
  • ……

跨云厂商需求?

是否有阿里云/华为云不同厂商通讯

已购买资源?

决定复用?复用的逻辑要评估资源可用性?


小维度隐患

Rds

备份恢复?

  • 备份是否做?
  • 自动备份失败的容错

资源评估类?

  • 多大的Cpu/内存配额及磁盘
  • maxconnection 最大数据库连接数?
  • Rds慢的卡点?buffer内存设定?细粒度Config配置

参数指标类?

  • 监控指标?
  • 不可用宕机通知?
  • 过期提醒

安全访问类?

  • 安全组配置
  • SSL/Tls证书有效期
  • 访问数据库来源Ip名单设定
  • 机器访问密钥对/密码?
  • sql初始化的审查机制?


Ecs&容器云

节点池加入?

  • 是否划分资源倾向类型(计算报表类/内存业务类)
  • 资源阈值(Master所在地及调度能力统一化的弊端)

资源评估类?

  • 划分多大多小节点资源参考案例
  • 用户以往使用情况评估?
  • 挂多大的数据盘?

安全访问类

  • NAT(DNAT\SNAT)设定
  • 安全组




CloudService服务

模块简介

总体流程


部署配置单流程




RdsService

Rds实现流程时序图

实现方式

华为云

华为云SDK-Rds-操作点

初始化操作

  • CreateConfiguration: 创建参数配置模板
  • ApplyConfigurationAsync: 应用参数模板
  • CreateInstance: 创建数据库实例
  • CreateDbUserInvoker: 创建数据库用户

验证弥补操作

  • ListConfigurations: 列举参数模板
  • ListDbUsers: 列举数据库用户列表
  • ListAuthorizedDatabases: 用户已授权数据库
  • ListDatabases: 查询数据库列表
  • ListInstances: 查询实例列表

阿里云

微软云




EcsService

Ecs流程时序图

实现方式

华为云

华为云SDK-Ecs-操作点

初始化操作

  • CreateServers: 创建服务器
  • AttachServerVolume: 弹性云服务器挂载

验证弥补操作

  • NovaListServersDetailsInvoker: 查询云服务器详情列表
  • NovaShowServerInvoker: 查询云服务器详情
  • ListServerBlockDevices: 查询弹性云服务器磁盘信息
  • ShowServerBlockDevice: 查询弹性云服务器单个磁盘信息

阿里云

微软云




K8sService

K8s流程时序图

实现方式

华为云

华为云SDK-K8s-操作点

操作类Api

  • AddNode: 纳管节点
  • CreateNodePool: 节点池

查询类Api

  • ListClusters: 获取指定项目下的集群
  • ShowCluster: 获取指定集群
  • ListNodePools: 获取集群下的节点池
  • ListNodes: 获取集群下所有节点
  • ShowNodePool: 获取指定的节点池
  • ShowQuotas: 查询CCE服务下的资源配额

问题

  • 华为云不支持纳管节点加入到节点池,会形成孤立节点

阿里云

微软云

问题

  • 微软云不支持virtual-machines加入到Aks(k8s云容器集群)




CustomerService

CustomerService流程时序图

实现方式

华为云

华为云SDK-Ecs-操作点

初始化操作

  • AddNode: 纳管节点
  • CreateNodePool: 节点池

阿里云

微软云




bizDeployService

bizDeploy实现流程时序图




物料准备

华为云

终端节点

认证鉴权

调用接口有如下两种认证方式

  • Token认证:通过Token认证调用请求。Token的有效期为24小时。
  • AK/SK认证:通过AK(Access Key ID)/SK(Secret Access Key)加密调用请求。推荐使用AK/SK认证,其安全性比Token认证要高。

阿里云

微软云