1. 版本仓库
1.1. 功能截图
1.2. 知识点
说明版本仓库是统一的资源存储仓库,统一管理需要使用到的文件资源,包含应用部署包,应用探针包,代理节点,jdk,静态资源部署包,docker安装包。
版本仓库是分布式文件系统,由于NTC采用集群式部署,在获取资源文件时可能会从任意一台NTC进行获取,所以版本仓库会把用户上传的文件除了本地有存储,同时也会存放到远程中央仓库,这里我们使用MongoDB作为中央仓库,因此在文件资源获取时会优先从本地获取,如果本地不存在,会先从中央仓库下载到本地仓库,然后再返回给用户。
版本仓库为了保证文件的完整性,采用了严格的md5校验机制,另外在大量文件获取的时候采用了文件流的方式,边读边写的方式返回给用户,降低了内存的消耗。
1.3. 功能详情
1.3.1. 上传
上传支持应用部署包,应用探针包,代理节点,静态资源部署包,docker安装包,jdk,在NTC平台其他功能模块比如应用管理,web服务管理等也会上传资源文件,只是在各自的地方上传各自的对应类别的文件,最终从管理上都会到版本仓库进行统一的管理。
点击上传按钮,如下所示截图
应用探针包/代理节点/jdk资源类别
docker安装包
静态资源部署包资源类别
应用部署包资源类别
- 字段说明
- 资源类别:要上传的文件所属的类别,具体为应用部署包通常为我们的应用服务端后台部署包,应用探针包是指的NTC要接入应用依赖的NTC包,代理节点,jdk为部署代理节点需要的资源文件,静态资源部署包通常为部署在web服务器的前端静态页面相关包,docker安装包为docker引擎安装包。
- 描述:要上传文件的描述信息
- 文件上传:选择要上传的文件
- 应用:对于静态资源部署包和应用部署包,需要选择所属的应用
- 包类型:应用部署包支持全量/增量/多系统上传,选择对应的包类型,上传增量文件后NTC会进行合并成全量部署包然后上传至版本仓库
- 上传方式:支持多种上传方式,分别为从本地上传,从服务器(部署NTC的服务器可以作为文件服务器这样比较简单),从SFTP上传,用户根据自己的需要选择对应的上传方式即可。
1.3.2. 查询/下载/批量删除
查询:输入时间,资源类别,资源ID(对于应用部署包和静态资源部署包资源ID为应用),资源版本,点击查询按钮进行查询。
下载:对于要下载的资源文件,点击表格操作列下载按钮进行下载文件资源到本地。
批量删除:对于要删除的资源文件,选中相应的资源文件进行删除。
重置:重置用户录入的查询条件。
1.3.3. 清理规则/清理部署包/SFTP设置/空间回收
清理规则:对于应用部署包和静态资源部署包设置保留天数,版本仓库会进行定期清理。
注意资源文件一旦被删除或者自动定时清理,就无法在进行下载资源了,所以这里需要根据实际的情况进行设置。输入保留的天数即可。
注意保留天数的定义为应用部署包或者静态资源部署包多久没有被使用的天数,我们举个例子:一个部署包假设保留天数为30天,当他到第二十几天又被重新使用了,那么他的保留天数会重新计算。线上正在使用的部署包的生命周期是永久的,这样做的目的主要是为了部署包的安全使用,在需要的时候仍然可以从版本仓库获取到。
SFTP设置:由于应用部署包支持从远程SFTP服务器获取,所以这里可以设置远程服务器的信息,包括IP,用户名,密码。
清理部署包:在NTC服务器磁盘空间不足(一般是开发测试环境)的时候,删除所有不在使用的部署包以释放使用空间。
空间回收:在定时删除或删除版本仓库文件时,并不会直接释放磁盘空间,而是会产生很多碎片供继续利用,此操作会在后台执行一段时间,才会释放磁盘空间。