ChatOps 在阿里云上的实战应用 | 学习笔记

本文涉及的产品
对象存储 OSS,20GB 3个月
对象存储 OSS,恶意文件检测 1000次 1年
对象存储 OSS,内容安全 1000次 1年
简介: 快速学习 ChatOps 在阿里云上的实战应用

开发者学堂课程【阿里云 ChatOps 实战:ChatOps 在阿里云上的实战应用】学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/536/detail/7282


ChatOps 在阿里云上的实战应用


内容介绍:

一、Nodesdk

二、Bucket

三、hubot-script-shellcmd


一、Nodesdk

机器人对接阿里云则需要安装 Nodesdk,而目前可以直接使用阿里 sdk,这里提供了非常多的 sdk,这里会通过 oss去演示对接。

首先安装 sdk,安装后使用 code 打开进行配置,此时先测试 sdk,如果想要正常运行 sdk 还需要另一个包 co,co 可以帮助运行 oss 的代码,使用 npm install co --save 将其安装到本地。

首先安装 sdk,安装后使用 code 打开进行配置,此时先测试 sdk,如果想要正常运行 sdk 还需要另一个包 co,co 可以帮助运行 oss 的代码,使用 npm install co --save 将其安装到本地。

安装完成后,开始写测试代码,首先创建 oss.js 文件,引入初始化内容,输入var OSS = require(’ali-oss’);,再输入var co = require(’co’);,完成进行初始化 co 客户端,输入var client = new OSS({ ,再将参数直接复制过来,如accessKeyId: ‘your access key‘,accessKeySecret: ‘your access secret‘,bucket: ’ fstorage‘,region:’oss-cn-hangzhou’accessKeyId 和 accessKeySecret 需要根据账号 id 来添加的,可以在阿里云后台找到,在后台中找到 accesskey,会提醒使用用户授权,可以使用子用户的 accesskey 或直接使用 accesskey,将其复制进行粘贴这样就完成了初始化。


二、Bucket

通过函数去列举所有的 Bucket,Bucket 是通过 List bucket 函数来实现的。

首先使用co(function* (){,然后跟上var result = yield client.listBuckets();,再跟上console.log(result);将结果进行输出。也可以使用catch(function(err){,再跟上console.error(err);,执行命令,此时执行测试函数,输出流 ace-test、fstorage、icaci2018、ipdesign、yunxueyuan 等等 bucket 名称,说明此时正常地与 oss 进行了沟通,可以提取其中的值。

传回对象只要其 buckets 再进行执行,会得到一组数组,数组里是 buckets 的具体信息,可以使用这些信息设定返回的输出。

创建一个新的 aliyun.js 脚本,然后打开 chat.js,复制代码并删除其中多余的代码,再复制之前的测试代码粘贴,并将 clean the house 改为 buckets,当改为 buckets 时,则会获取 buckets 信息,然后再将 console.log 改为msg.reply,则完成了 hubot、bearychat 以及 oss 的联动。

重新执行 bearychat,复制 buckets 返回 object。然而 object 是无法查看的,通过输入代码JSON.stringify.(result.buckets)};,对其字符串化,再进行执行来实现查看 buckets 的具体的文本内容。

可以通过 for 循环对输出结果输出为一段文字去实现具体的展示内容。通过输入var text =“您当前有”+ result.buckets.length + “个 Bucket“;定义 text,然后直接使用msg.reply(text);,直接输出 text,进行重新启动,添加\r\n 可以实现换行。

bucket 的数组是 result.buckets,可以对其实行 forEach,则输入result.buckets.forEach(bucket => {,再跟上text = text + ”名称:”+ bucket.name +“区域:“ +  bucket.region + “类型”+ bucket.StorageClass +“\r\n”然后退出重新执行进行输出内容。

如输入var regionArrey= [“oss-cn-hangzhou”] =“杭州区域“定义数组,用来存储信息,再进行启动。而在真正使用的时候要定义全部。


三、hubot-script-shellcmd

Hubot 机器人是部署在某个服务器上的,通过一些插件可以实现在服务器上实现一些脚本,这个插件为 hubot-script-shellcmd。

首先要进行安装插件,然后复制 cmd 即对应的命令,可以将插件名称添加到配置文件中,再重新启动。

重新输入 help 会多出 shellcmd 命令,执行 shellcmd,可以执行 helloworld 和 update 两条命令,再执行shellcmd helloworld,则会得到 Hello。而 handlers 里的 helloworld 则执行了 bash 脚本会输出 Hello,再输出Sleepy World!

执行 hubot 机器人,添加 update 则可以在机器人的上一级目录中自动拉取更新,这样就可以执行机器人命令,重启机器人,

如下:#!/bin/bashSELF_PATH=”$( dirname”$(readlink -f “$0”)”)“cd $SELF_PATH/../..git pull origin master 2>&1echo “to reload all scripts run: <yourbotname>die”exit 0

相关实践学习
借助OSS搭建在线教育视频课程分享网站
本教程介绍如何基于云服务器ECS和对象存储OSS,搭建一个在线教育视频课程分享网站。
相关文章
|
1天前
|
弹性计算 负载均衡 容灾
应用阿里云弹性计算:打造高可用性云服务器ECS架构
阿里云弹性计算助力构建高可用云服务器ECS架构,通过实例分布、负载均衡、弹性IP、数据备份及多可用区部署,确保业务连续稳定。自动容错和迁移功能进一步增强容灾能力,提供全方位高可用保障。
6 0
|
2天前
|
弹性计算 API Python
阿里云百炼应用之流程编排
阿里云通义百炼平台流程编排使用教程。
|
12天前
|
存储 监控 前端开发
【专栏】阿里云ARMS前端监控的引入方法,以提升应用质量和稳定性
【4月更文挑战第29天】本文介绍了阿里云ARMS前端监控的引入方法,以提升应用质量和稳定性。该工具通过实时收集和分析用户行为、性能数据,提供错误监测和实时告警。步骤包括注册阿里云账号,创建前端监控项目,获取并嵌入监控代码到页面中,部署并运行,最后查看监控数据。案例和经验分享强调了合理设置监控指标、与其他工具结合以及定期分析数据的重要性。注意保护用户隐私,正确管理监控代码,并解决可能出现的数据不准确和大量错误告警问题。
|
12天前
|
运维 Serverless 应用服务中间件
Serverless 应用引擎产品使用之在阿里云Serverless中函数计算FC nginx 部署上去之后放置静态页面如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
219 0
|
12天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使数据库和阿里云函数计算位于同一个内网中如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
983 0
Serverless 应用引擎产品使用之在阿里函数计算中,使数据库和阿里云函数计算位于同一个内网中如何解决
|
12天前
|
运维 监控 Serverless
Serverless 应用引擎产品使用之在使用阿里云函数计算部署网站时,网站打开不稳定如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
169 0
|
13天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中通过调用函数如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
282 10
|
13天前
|
运维 文字识别 Serverless
Serverless 应用引擎产品使用之在阿里云函数计算中,需要处理的文件大于100MB如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
132 5
|
13天前
|
运维 Serverless API
Serverless 应用引擎产品使用之在阿里云函数计算中,容器运行过程中的最大内存使用量获取如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
33 2
|
13天前
|
弹性计算 运维 Serverless
Serverless 应用引擎产品使用之在阿里函数计算中,使用阿里云API或SDK从函数计算调用ECS实例的服务如何解决
阿里云Serverless 应用引擎(SAE)提供了完整的微服务应用生命周期管理能力,包括应用部署、服务治理、开发运维、资源管理等功能,并通过扩展功能支持多环境管理、API Gateway、事件驱动等高级应用场景,帮助企业快速构建、部署、运维和扩展微服务架构,实现Serverless化的应用部署与运维模式。以下是对SAE产品使用合集的概述,包括应用管理、服务治理、开发运维、资源管理等方面。
41 4

热门文章

最新文章