阿里云首页 云原生应用交付平台ADP

快速体验ADP

云原生应用交付平台ADP(Application Delivery Platform)帮助软件产品完成企业级专有环境交付。当您有软件产品交付的需求,可以使用ADP平台,完成软件产品的在线化集成。

欢迎使用云原生应用交付平台ADP(Application Delivery Platform),产品访问地址:https://www.aliyun.com/product/aliware/adp

1. 前言

ADP是一套完整的“软件产品”私有化交付方案。它借助Kubernetes 等云原生技术带来的标准化编排交付和 IaaS 解耦能力,帮助用户解决软件在私有化部署交付时存在的异构环境适配、部署复杂、云服务依赖和自动化运维问题。

通过ADP,你可以很方便地完成:

  1. 基于容器化后的应用,进行产品编排,制作可在离线环境下一键安装的部署包,并进行版本化的管理

  2. 根据业务需要,从服务目录中挑选所需的中间件,快速编排并部署至自己的环境中,并享受运维兜底服务

  3. 通过在线上验证环境中进行模拟故障演练,预估产品在部署后的可靠性,及早发现并排除交付隐患

  4. 利用1台或多台服务器,自动化一键起搭建稳定可靠的Kubernetes集群,并部署运行自己的业务应用

  5. 通过本地运维控制台,对部署完成的产品进行可视化的监控、配置告警通知、故障分析诊断等运维管理

2. 基本概念

2.1 名词释义

名称

说明

组件

标准的Helm Chart包,可在此基础上编排组合,形成完整的产品

产品

包括应用、依赖组件及其编排情况的集合,具备版本管理能力

产品版本

产品的子概念,具备产品在某一阶段的完整定义,相邻版本间存在继承关系

交付参数

将产品在交付阶段中经常需要改动的参数作为变量,方便产品在交付阶段进行差异化配置

验证环境

可用于线上验证阶段部署产品的一套独立资源,可以是一批ECS或一套ACK集群

局点

包含了正式交付相关的所有资源和配置信息,便于记录和回溯历史交付动作和相应参数

底座

提供了产品运行所需的运行时、监控运维相关能力、可视化管理的运维控制台等

2.2 角色流程

角色流程

3. 使用前准备

用户的软件产品,要通过ADP完成交付,首先需要将业务应用制作为符合Kubernetes 生态的Helm Chart包格式。

4. 主流程

4.1 组件接入

用户需要在ADP在线平台下载组件上传工具 zlink,用于将软件产品的本地 helm chart包直接上传到ADP在线平台。zlink的使用文档

当使用zlink上传软件产品的helm chart包完成之后,用户可以在组件接入页面看到已经上传完成的组件。

1

4.2 产品编排

通过创建产品按钮,创建一个全新的产品。点击创建产品按钮之后,跳出的弹窗将要求用户填入三部分信息,产品名称ADP底座版本以及产品描述,详情如下:

  • 产品名称:必填项,需要单用户下全局唯一;

  • ADP底座版本:必选项,需要用户选择合适的版本,具体的ADP底座版本信息,可以详见“ADP底座版本”字样后面的问号图标,查看版本说明;

  • 产品描述:可填项,以便清晰描述产品的用途、场景等信息,便于他人理解。

产品创建完成后,会自动创建一个名为latest的产品版本

1

点击管理按钮,进入某个具体产品版本的详情页

1

产品编排页面下,添加该产品版本下所需的组件,其中:

    • 用户组件:添加用户自己的组件,通常是业务应用

    • 平台组件:可添加由平台提供的组件,包括一些相对通用的中间件,具体组件列表可查看服务目录

点击组件后方的配置按钮,可以查看组件信息、使用方法,并且对组件进行参数配置,页面如下:

1

在完成产品编排后,可以通过线上验证功能,进行实际的部署测试,测试产品能否正常运行,还可以进行故障演练,通过模拟故障场景,检查产品的可用性。

1

可以通过交付配置,将产品在交付阶段中经常需要改动的参数作为变量,方便产品在交付阶段进行差异化配置。

1

在完成产品版本的验证工作,确认无误后,即可将该产品版本通过发布操作,变为一个正式版本,可用于正式环境的交付部署,注意:产品版本在发布后不可更改,如需调整,可通过创建版本,创建一个新的latest版本。

1

4.3 交付部署

当完成一个产品的线上验证以及发版之后,产品已经具备可交付能力,可以进行正式交付前的准备工作。

创建局点时,指定要交付的产品版本,目前,局点与产品版本为1对1关系,即一个局点只能交付一个产品版本。

1

局点创建完成后,在局点的详情页,可以对交付相关的参数进行配置,重点关注一下内容:

    1. 部署通道:如果交付环境具备一定的网络连通条件,可以通过跳板机等方式完成在线交付部署,如果是离线部署,则无需重点配置该项参数,详见:连接通道配置

    2. 主机节点:该项为必须配置,操作详见:节点配置,对主机的要求详见:交付环境要求说明

    3. 交付参数:填写产品的可变参数配置,适用于差异化的交付场景,详见:参数配置

在完成上述局点配置后,可以进行“出包”操作,生成用于正式交付部署的安装包,详见:出包管理

页面所示的下半部分(黑底文本),为部署参数:在部署阶段,首先需要将内容拷贝到“global.yaml”文件中。

执行本地部署命令:

  1. 将部署包拷贝到mster0节点。上图黑底部分的ips参数的第一个IP,为master0节点。

  2. 解压部署包(上述三个包中的任何一个,根据需要选择):tar -xvf ${fileName}.tar。

  3. 使用上述黑底文本中的“部署参数”,替换解压出来的global.yaml文件中的内容。

  4. 执行安装脚本:./hopctl install -p `pwd`,等待执行结果,当出现如下结果时表示安装成功。

  5. 验证应用部署完成(控制台输入命令:kubectl get pod -A,所有Pod状态均为Ready,即为部署成功)

4.4 本地运维

在完成产品部署后,ADP默认提供了本地运维控制台,用于对交付后的产品进行监控运维等可视化操作,默认访问地址为:部署包所在机器的IP+31000端口,默认登录账户和密码分别为admin和abc123,更多详情参见:本地运维控制台快速入门