趣视频服务端用于趣视频App与视频点播服务之间数据交互、业务逻辑处理及运营侧数据的管理。通过阅读本文,您可以了解到趣视频服务端的集成操作方法。
前提条件
- 您已经开通ECS服务并完成相关配置。更多信息,请参见开通与配置ECS服务。
- 您已经在ECS服务端安装JDK8。
- 您已经在ECS服务端安装MySQL5.7数据库。更多信息,请参见安装与配置MySQL数据库。上线后建议使用RDS服务,更多信息,请参见RDS服务。
- 您已经开通VOD服务并在控制台上配置好对应模板。配置步骤,请参见开通与配置VOD服务。
操作步骤
上传源码
- 下载趣视频AppSever及管理控制台源码。下载地址,请参见趣视频SDK(短视频解决方案)。
- 在保存源文件的服务端执行以下命令,将源码文件上传到ECS服务端。执行以下命令,上传源码到ECS服务端。scp <源码文件> user@<ECS 服务端IP>:<上传后地址>scp ApsaraVideo_QuVideo_v1.4.0_Server_20191226.zip user@10.0.0.0:/home/user/workspace/
ApsaraVideo_QuVideo_v1.4.0_Server_20191226.zip为源码文件 ,user为ECS服务器用户,10.0.0.0为ECS服务端IP地址,/home/user/workspace/为上传路径。
说明 下文都以上述源码文件、ECS服务器用户、ECS服务端IP地址、上传路径等示例信息为例,在您实际操作时,根据您的实际情况设置即可。 - 登录ECS服务端,解压源码文件。cd /home/user/workspaceunzip ApsaraVideo_QuVideo_v1.4.0_Server_20191226.zip说明 如果没有安装unzip,需要先执行sudo apt install unzip安装unzip。
初始化及配置数据库
说明 支持用户自行构建音乐库。
- 最后用户返回的数据结构和阿里云服务获取音乐列表的数据结构需要一致,否则将会获取失败。
- 使用自定义的数据结构,调整Demo层的代码逻辑。
- 创建名称为voddemo的数据库。
cd /home/user/workspace/ApsaraVideo_QuVideo_v1.4.0_Server_20191226/sql
mysqladmin -u root -p create voddemo
- 创建表以及管理员账号。mysql -u root -p voddemo < ./appserver_create_table.sql说明 appserver_create_table.sql除了完成建表,还通过插入语句,创建了一个控制台管理员账号(用户名admin,密码123456),使用该账号可以在完成控制台集成后以管理员身份登录Demo控制台。
- 修改数据库的大小写检查规则。
- 配置数据库地址。
配置RAM角色
- 整体步骤与创建角色一致,完成第六步选择权限之后,后续步骤需按照下文操作。角色名根据您的实际需要自定义即可,本文以角色名alivc-demo-role为例介绍。
- 在RAM角色管理页面,单击创建好的RAM角色名称,例如:alivc-demo-role,可查询ARN。此处建议将RAM角色名称及ARN记录到本地,方便后续使用。
- 在RAM角色管理页面,单击创建好的RAM角色名称,例如:alivc-demo-role,单击信任策略管理页签,然后单击修改信任策略,将信任策略修改为如下:
{ "Statement": [ { "Action": "sts:AssumeRole", "Effect": "Allow", "Principal": { "Service": [ "ecs.aliyuncs.com" ] } } ], "Version": "1" }
表示该角色为一个服务角色,受信云服务(ECS)可以扮演该角色。若未修改信任策略,该RAM角色将无法附加到ECS实例上。
实例ID参数需要设置为
["实例ID"]
。 - 将RAM角色附加到ECS实例上。
在OpenAPI开发者门户使用ECS的AttachInstanceRamRole接口,更多信息请参见OpenAPI开发者门户。
说明- RegionId:ECS实例所在的地域ID,需要前往ECS控制台查询,如华东2(上海)。
- RamRoleName:RAM角色的名称。本示例中为alivc-demo-role。
- InstanceIds:需要附加RAM角色的服务端ECS实例ID,需要前往ECS控制台查询,ECS控制台查询,注意要以数组形式填写,如:["i-bp135jrddxxf9tgo****"]。
单击发起调用,调用成功后可在右侧调试结果中看到success反馈。
- 在ECS终端执行以下命令,验证RAM角色和ECS实例是否关联成功。curl http://100.100.100.200/latest/meta-data/ram/security-credentials/alivc-demo-role若显示如下信息,表示STS临时授权返回成功,即RAM角色和ECS实例关联成功。
{ "AccessKeyId" : "STS.XXXXXXXXXXXX", "AccessKeySecret" : "XXXXXXXXXXXXXXXX", "Expiration" : "2020-11-20T14:33:31Z", "SecurityToken" : "XXXXXXXXXXXXXXXXXXXXXX", "LastUpdated" : "2020-11-20T08:33:31Z", "Code" : "Success" }
说明 每个ECS实例只可附加一个RAM角色,如果您需要更换RAM角色,需要在OpenAPI开发者门户中调用DetachInstanceRamRole,解除该ECS上的RAM角色附加后,再次使用AttachInstanceRamRole重新附加RAM角色。 - 配置RAM相关信息。
- 配置VOD。
- 运行服务。