摘要:工作啊,就没有一帆风顺的,如果太安稳,你就离被干掉不远了。
上回说道,年底各业务线的开发需要暴增,导致测试团队压力太大个体闹到职,亏得我提出了一个计划,用华为云的云测工具来加重测试压力(回顾:【API 进阶之路】研发需要突增 3 倍,测试团队个体闹到职),这才度过了难关。谁知忙完了这一阵,又该忙下一阵。于是苦中作乐的我,忽然想起来不晓得哪位名人已经说过:工作啊,就没有一帆风顺的,如果太安稳,你就离被干掉不远了。
到职风波总算是“有惊无险”的过来了,在月度总结复盘会上,老板间接提问:“你们研发部门有那么多人,为什么还会呈现这种状况呢?”他这一问我立马感觉到有状况,之前咱们一起剖析过起因了,明天又这么问,怕不只是因为这件事了。
果不其然,老板接着说,公司决定上线一个短视频制作工具,抓住以后短视频风口倒退新业务。但当初同类产品比拟多,后期试水阶段不会投入太多资源,让咱们本人安顿人力进行平台开发。
这 …… 原本开发资源就缓和,再做新业务,可能又会有一部分人投进去出不来,之前很多老我的项目就是这样,摸索了一段时间没有大倒退,又不能轻易放弃,研发资源被一直占用。做得好的话前期的需要也没法估算,到时候还会面临这种需要突增的状况,开发运维测试的压力也会很大。
那有没有什么方法从我的项目开始就解决这个问题呢?会后,我跟研发老大钻研了一个新的计划:应用华为云利用治理与运维平台(ServiceStage)来做新我的项目的开发和治理。
利用治理与运维平台(ServiceStage)是一个利用托管和微服务治理平台,能够简化部署、监控、运维和治理等利用生命周期管理工作。ServiceStage 提供了微服务、挪动和 Web 类利用开发的全栈解决方案,岂但可能进步开发效率,也加重了前期治理的压力。
**
**
图 ServiceStage 性能
这个我的项目我亲自带,应用 ServiceStage 的形式也比较简单,ServiceStage 提供了各种 API 接口:包含部署工作、环境治理、利用治理、组件治理、注册发现等,满足开发、部署、托管、运维的需要,通过调用 API 就能够间接实现以上操作。
以 环境治理 和利用治理 为例介绍操作步骤。
前提条件
- 获取 IAM 的 token,调用 token 认证,并将 token 值设置为环境变量:export Token={token}
- 获取 ServiceStage 的 endpoint。
示例 1:环境治理操作步骤
1、调用“创立环境接口”,增加根底资源。
申请示例
curl -k -H “Content-Type:application/json” -H “X-Auth-Token:$Token” -X POST “https://{servicestage_endpoint}/v2/{project_id}/cas/environments” -d ‘{
“name”: “dev-env”,
“description”: “develop environment”,
“enterprise_project_id”: “0”,
“charge_mode”: “provided”,
“vpc_id”: “b9b8f9ad-1a2e-403d-83f1-cb71a3c06df8”,
“base_resources”: [
{
“id”: “b6862a62-d916-11e9-bdf1-0255ac101fd9”,
“type”: “cce”
}
]
}’
返回后果如下,失去的 id,后续示例中以 {environment_id} 代替。
{
“id”: “ea011e01-2eb5-453f-87bf-874e4a855abe”,
“name”: “dev-env”,
“alias”: null,
“description”: “develop environment”,
“project_id”: “bf8523d898b64e4eb956e3be3555ca16”,
“enterprise_project_id”: “0”,
“charge_mode”: “provided”,
“vpc_id”: “b9b8f9ad-1a2e-403d-83f1-cb71a3c06df8”,
“base_resources”: [
{
“id”: “b6862a62-d916-11e9-bdf1-0255ac101fd9”,
“type”: “cce”
}
],
“creator”: “xxx”,
“create_time”: 1578984198394,
“update_time”: 1578984198394
}
2、调用“批改环境资源接口”,为环境增加其余须要的资源。
依据本人已有的资源和需要,能够将和环境雷同 vpc 下的 ecs,cce,elb,cse,eip 等多种类型的资源增加到环境中。
申请示例
curl -k -H “Content-Type:application/json” -H “X-Auth-Token:$Token” -X PATCH “https://{servicestage_endpoint}/v2/{project_id}/cas/environments/{environment_id}/resources” -d ‘{
“add_optional_resources”: [{
“id”: “default”,
“type”: “cse”
}]
}’
返回后果
{
“id”: “ea011e01-2eb5-453f-87bf-874e4a855abe”,
“name”: “dev-env”,
“alias”: null,
“description”: “develop environment”,
“project_id”: “bf8523d898b64e4eb956e3be3555ca16”,
“enterprise_project_id”: “0”,
“charge_mode”: “provided”,
“vpc_id”: “b9b8f9ad-1a2e-403d-83f1-cb71a3c06df8”,
“base_resources”: [
{
“id”: “b6862a62-d916-11e9-bdf1-0255ac101fd9”,
“type”: “cce”
}
],
“optional_resources”: [
{
“id”: “default”,
“type”: “cse”
}
],
“creator”: “xxx”,
“create_time”: 1578984198394,
“update_time”: 1578984198394
}
3、调用“依据环境 ID 获取环境详细信息接口”,去查问环境
申请示例
curl -k -H “Content-Type:application/json” -H “X-Auth-Token:$Token” -X GET “https://{servicestage_endpoint}/v2/{project_id}/cas/environments/{environment_id}”
返回后果
{
“id”: “ea011e01-2eb5-453f-87bf-874e4a855abe”,
“name”: “dev-env”,
“alias”: null,
“description”: “develop environment”,
“project_id”: “bf8523d898b64e4eb956e3be3555ca16”,
“enterprise_project_id”: “0”,
“charge_mode”: “provided”,
“vpc_id”: “b9b8f9ad-1a2e-403d-83f1-cb71a3c06df8”,
“base_resources”: [
{
“id”: “b6862a62-d916-11e9-bdf1-0255ac101fd9”,
“type”: “cce”
}
],
“optional_resources”: [
{
“id”: “default”,
“type”: “cse”
}
],
“creator”: “xxx”,
“create_time”: 1578984198394,
“update_time”: 1578984198394
}
示例 2:利用治理操作步骤
1、调用“创立利用接口”,创立利用。
申请示例
curl -k -H “Content-Type:application/json” -H “X-Auth-Token:$Token” -X POST “https://{servicestage_endpoint}/v2/{project_id}/cas/applications” -d ‘{
“name”: “TestApp”,
“description”: “application_description”,
“enterprise_project_id”: “0”
}’
返回后果如下,失去的 id,后续示例中以 {application_id} 代替。
{
“id”: “06cf2fda-af45-44b4-9e22-6294c4804515”,
“name”: “TestApp”,
“description”: “application_description”,
“creator”: “string”,
“project_id”: “bf8523d898b64e4eb956e3be3555ca16”,
“enterprise_project_id”: “0”,
“create_time”: 1578984171041,
“update_time”: 1578984171041
}
2、调用“批改利用配置信息接口”,为利用增加环境变量,后续在该利用某环境下部署的组件都会继承该利用的环境变量。
申请示例
curl -k -H “Content-Type:application/json” -H “X-Auth-Token:$Token” -X PUT “https://{servicestage_endpoint}/v2/{project_id}/cas/applications/{application_id}/configuration” -d ‘{
“environment_id”: “0fa75dfe-0d32-4bc1-848b-8008cf3f2567”,
“configuration”: {
“env”: [
{
“name”: “app-env”,
“value”: “env”
}
]
}
}’
返回后果
{
“application_id”: “06cf2fda-af45-44b4-9e22-6294c4804515”,
“environment_id”: “0fa75dfe-0d32-4bc1-848b-8008cf3f2567”,
“configuration”: {
“env”: [
{
“name”: “app-env”,
“value”: “env”
}
]
}
}
3、调用“依据利用 ID 获取利用详细信息接口”,查问利用详细信息。
申请示例
curl -k -H “Content-Type:application/json” -H “X-Auth-Token:$Token” -X GET “https://{servicestage_endpoint}/v2/{project_id}/cas/applications/{application_id}”
返回后果
{
“id”: “06cf2fda-af45-44b4-9e22-6294c4804515”,
“name”: “TestApp”,
“description”: “description”,
“creator”: “xxx”,
“project_id”: “bf8523d898b64e4eb956e3be3555ca16”,
“enterprise_project_id”: “0”,
“create_time”: 1578984171041,
“update_time”: 1578984171041
}
还能够实现组件治理、注册发现等操作。
理解更多华为云 API 信息:收费下载翻新减速利器《华为云 API 精选手册》。
点击关注,第一工夫理解华为云陈腐技术~