云帮(ACP)7月升级:重构负载均衡,优化后端组件功能

全面升级控制台UI,提升应用控制的交互体验;规范云帮后端组件名称,方便管理和排错;重新设计的负载均衡组件(acp_entrance)可灵活对接企业级和开源的负载均衡系统;17 个中等级别以上的bug修复、云帮社区版 迎来2017年7月升级版本,本次是今年比较大的版本升级,前端交互体验,和后端的组件功能都进行了全面的升级和优化体验。

云帮(ACP)

以应用为中的无服务器PaaS——云帮ACP基于容器技术研发,社区版针对个人、企业完全免费,您可以自由的下载与传播。借助它您可以实现:

  • 企业级的Docker管理平台
  • 开发、测试环境的CI/CD平台
  • 生产环境的高效运维平台

云帮社区版发布以来,我们得到了不同行业,数百家企业用户在云帮社区版、企业版安装、使用以及优化配置过程中遇到的问题反馈以及对产品的建议。在这个过程中,我们发现了云帮产品的诸多不足,同时也感受到了广大用户对我们产品给予的厚望。

通过这一个月紧张的开发和测试,我们迎来了云帮社区版2017年第7个升级迭代版本。研发团队在这一个月中对前端UI进行了全面的优化,底层组件进行了升级与调整,修复了17个中等级别以上的bug。

下面我们针对本月的一些重点的 新功能 以及Bug进行详细的说明:

产品新特性

1. 控制台UI交互体验优化

本次控制台的交互优化主要针对的是应用相关的控制交互,以及全站的CSS样式代码的调整。下面是7月版本和之前版本的界面,新的界面显得更清爽干净,交互体验也更显专业。

  • 平台总览页面
  • 应用概览页面
  • 优化后的拓扑图

2. 重新设计的“新增应用” 向导页面

新增应用,是平台使用的入口页面,本次我们对该页面进行了全面的改版,分成了从 “镜像”、“源码”、“应用市场”、“云框架” 四种大的类型来创建应用。您甚至可以将 docker run 命令粘贴到从应用创建的向导框中。

  • 直接粘贴 docker run命令创建应用

系统新特性

1. 安装命令支持交互操作

云帮在2017年5月份退出了云帮的快速扩容命令,本月我们再次对安装命令进行升级,支持安装前的系统检查、创建docker 存储分区,修改内核启动参数等,详情参见:快速开始

2. 规范云帮组件名称,并优化所有组件的镜像大小

组件名称

说明

acp_api

云帮区域中心API服务

acp_db

云帮管理服务数据库

acp_dns

云帮dns服务(内部服务及应用自动发现)

acp_event_log

云帮事件日志处理及websocket服务

acp_labor

云帮异步workder服务

acp_lb

云帮负载均衡组件

acp_entrance

云帮负载均衡操作模块(2017.06新增)

acp_mq

云帮消息队列服务

acp_proxy

云帮代理服务(内部服务之间调用)

acp_repo

云帮容器镜像服务(registry)

acp_web

云帮web控制台

acp_webcli

提供web方式进入容器的服务

以下是性能分析组件

cep_hbase

cep存储数据的服务

cep_server

cep处理数据的服务

cep_dalaran

cep中转事件服务

cep_opentsdb

cep opentsdb服务

cep_logtransfer

cep日志转发服务

3. 重构负载均衡设置模块

我们本月对负载均衡设置模块进行了重构,将之前的单点单任务的程序做成了支持高可用,大并发处理需求的组件,可对接多种负载均衡插件化支持(官方支持nginx,F5等主流的商业及开源负载均衡)。保留应用级负载均衡选择功能。

4.kubernetes 升级到1.6.4 内置应用监控

kubernetes 升级到1.6.4 之后,除了kubernetes本身具备的功能外,我们在平台层面支持了应用启动时及运行时的健康检查,以及对依赖的服务进行检查的功能,这样在应用内部因各类问题导致服务不可用的情况可以第一时间感知,同时也可以检查依赖的服务是否正常。

  • 应用端口检查
  • 配置端口检查项

Bug修复列表

  • 解决了cep_hbase 模块在极少的情况下自动退出的问题。
  • 解决了acp_proxy在代理长连接的服务时偶尔中断消息的问题。
  • 解决了容器内存设置变量无法注入的问题。
  • 解决了java(tomcat)运行的程序启动慢问题
  • 优化自动化安装脚本,安装必备组件包
  • 优化拓扑图自适应问题,应用信息弹出窗,在应用信息弹出窗口中可以查看依赖应用的信息。
  • 解决了概览页面操作按钮的交互问题。
  • 云帮除新增应用流程外其他的流程页面css和js代码已优化。
  • acp_event_log组件解决日志量过大造成的死锁问题。
  • 日志内网传输更改为自定义的高效的传输协议。
  • docker 运行参数添加--userland-proxy=false 避免docker-proxy大并发情况下导致的网络阻塞。
  • 优化archiver镜像,避免在离线安装时拉取镜像失败
  • 源码构建的应用容器启动改用挂载方式,避免http下载时网络及代理服务故障。
  • 源码构建包使用aliyun oss存储,并进行cdn加速,减少源码构建出错的可能性。
  • 所有组件增加version cmd,支持查看组件版本。
  • 替换skydns组件,优化内部组件及应用dns解析速度。
  • 解决mysql 5.5.46 版本性能分析抓取不到数据的问题。