一 背景
传统运维模式已难以应对日益复杂的海量数据和业务需求,效率低下,故障难解。而人工智能的崛起,特别是AIGC技术的出现,为运维领域带来了新的机遇。AIGC能够自动生成运维脚本、分析海量数据,预测潜在故障,甚至提供解决方案,为运维工作注入智能化力量,推动运维向更高效、更智能的方向发展。
1. 运维痛点:
- 运维工作量大,效率低下: 随着业务规模的增长,运维人员的工作量不断增加,而传统的人工操作效率低下,难以满足快速响应的需求。
- 运维数据量庞大,分析难度高: 各种监控数据、日志信息、告警信息等数据量庞大,人工分析难以快速找到问题根源,导致故障定位和解决效率低下。
- 运维人员技能不足,人才缺口大: 随着新技术不断涌现,运维人员需要掌握更多技能,而人才培养周期长,难以快速满足需求。
2. AIGC技术优势:
- 自动化能力: AIGC可以根据预设规则和算法自动生成运维脚本、配置信息、文档等,实现运维工作的自动化,提高效率,降低人工成本。
- 数据分析能力: AIGC可以对海量运维数据进行分析,识别异常情况,预测故障,并提供解决方案,帮助运维人员快速定位问题,提高故障处理效率。
- 智能化能力: AIGC可以根据历史数据和当前情况,智能地调整系统参数,优化运维策略,提高系统稳定性和可靠性。
3. 运维智能化趋势:
- DevOps和SRE的兴起: DevOps和SRE强调自动化、高效、可靠的运维体系,AIGC能够提供强大的工具和技术支持,帮助企业实现DevOps和SRE转型。
- 云原生技术的应用: 云原生技术对运维提出了更高的要求,AIGC能够帮助企业快速部署、管理和维护云原生应用,提高云原生应用的效率和稳定性。
- 人工智能的应用: 人工智能技术正在改变各行各业,AIGC作为人工智能技术的重要分支,将在运维领域发挥越来越重要的作用。
二 实战
2.1 业务代码
编写业务代码。
2.1.2 测试运行
- 本地运行
export ACCESS_KEY_ID=XXXX
export ACCESS_KEY_SECRET=XXXX
go run main.go
- postman测试
2.2 发布到阿里云API网关上
2.2.1 serverless上创建命令
本地代码打包
go get github.com/aliyun/fc-runtime-go-sdk/fc
GOOS=linux go build main.go
zip fc-golang-demo.zip main
创建函数
注入环境变量,阿里云ak认证信息
获取url
函数测试成功
2.2.2 为其添加API网关认证
- 创建API分组
- 创建后端服务
为了方便测试,先配置没有认证信息
通过在线调试测试
2.2.3 创建APP应用
在API列表中绑定应用
2.3 创建应用
创建自定义工具
{
"openapi": "3.1.0",
"info": {
"title": "Aliyun Resource API",
"description": "Retrieves information about Alibaba Cloud resources.",
"version": "v1.0.0"
},
"servers": [
{
"url": "http://xxxxpp.run"
}
],
"paths": {
"/resources": {
"post": {
"description": "Get resource information by type and region.",
"operationId": "GetResources",
"requestBody": {
"content": {
"application/json": {
"schema": {
"$ref": "#/components/schemas/APIRequest"
}
}
},
"required": true
},
"responses": {
"200": {
"description": "OK",
"content": {
"application/json": {
"schema": {
"type": "array",
"items": {
"$ref": "#/components/schemas/ResourceInfo"
}
}
}
}
},
"400": {
"description": "Bad Request",
"content": {
"application/json": {
"schema": {
"type": "string"
}
}
}
},
"500": {
"description": "Internal Server Error",
"content": {
"application/json": {
"schema": {
"type": "string"
}
}
}
}
}
}
}
},
"components": {
"schemas": {
"APIRequest": {
"type": "object",
"properties": {
"type": {
"type": "string",
"enum": [
"ecs_instance"
]
},
"region": {
"type": "string"
}
},
"required": [
"type",
"region"
]
},
"ResourceInfo": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"name": {
"type": "string"
},
"type": {
"type": "string"
},
"region": {
"type": "string"
},
"status": {
"type": "string"
}
}
}
}
}
}
- 创建智能体
- 测试
利用terraform在阿里云测试账户编排两台云主机进行测试
2.4 测试云厂商AI
阿里云AI目前仅跳转到对应云资源,不提供内容和加工数据
三 其他
目前仅仅demo可行性,后期可以丰富内容,支持更多云资源,或将云资源获取功能也作为一个agent,根据用户提供的云资源类型自动化生成云资源代码,需要探索,在资源获取情况下,可以更方便
另外通过集成云查询和系统内部操作
实现chat运维智能体
目前仅是利用AIGC在运维领域探索厂商,后期可以根据需求进行更丰富的扩展和使用。
总结
- 自动化脚本生成: 根据用户需求自动生成运维脚本,例如系统配置、软件安装、故障处理等脚本。
- 智能告警分析: 对告警信息进行分析,识别高危告警,并提供解决方案,帮助运维人员快速定位问题,避免故障扩散。
- 运维文档生成: 自动生成运维文档,例如系统架构图、流程图、操作手册等,提高运维文档的质量和效率。
- 故障预测和预防: 利用历史数据和机器学习算法,预测系统可能出现的故障,并提前采取措施进行预防。
- 智能运维平台: 开发基于AIGC的智能运维平台,提供全面的运维解决方案,包括自动化运维、智能告警、故障分析、性能优化等功能。
参考链接