容器服务slack运维机器人

初识slack

几年前开始创业,组建团队的第一天,我们首先讨论和考虑的不是高屋建瓴的业务场景和目标,而是整个团队的协同和沟通的问题。选择使用什么作为团队的IM,选择什么作为BUG的记录,选择什么作为需求的跟踪,这些基础设施的存在无形中提高了整个团队的生产力,保证了协作的顺畅和流程。由于团队的成员有些是外国人,而在国外GEEK圈中风光无限的SLACK也就顺理成章的被老外们安利到了团队中。

那么slack是个什么东西呢。

    Slack 是聊天群组 + 大规模工具集成 + 文件整合 + 统一搜索。截至2014年底,Slack 已经整合了电子邮件、短信、Google Drives、Twitter、Trello、Asana、GitHub 等 65 种工具和服务,把可以把各种碎片化的企业沟通和协作集中到一起。

slack不仅仅是一个聊天的IM工具,在团队中的他的职责更多是工具集成,slack支持非常丰富的系统集成。

你可以在slack中看到在github中的代码提交记录,可以修复jira中的需求issue,可以触发jenkins中的单元测试,甚至可以直接部署远程服务器的代码。

虽然后来离开了团队,但是slack的使用习惯还是保持到了现在。关于slack的workflow,大家可以参考这篇文章

关于触发器

容器服务作为阿里云的CaaS层的产品,与传统的PaaS产品不同,容器服务更多的侧重在提供容器集群的管理能力以及与三方系统的集成能力。对于三方集成,最常见的一种方式就是触发器,比如github提供了webhook机制可以在代码提交的时候通知其他的系统,这种简单快捷的方式在持续集成的系统中非常常见。

容服务提供了重新部署与自动扩容扩缩容两种触发器,如下:

可以简单的使用GET或者POST请求的方式调用这两个地址,从而达到重新部署与扩缩容的目的。容器服务本身提供了集群级别的openapi,应用级别的兼容docker的api,那么为什么还需要提供这种使用curl、wget甚至浏览器访问都可以调用的API。

这就要从这几个API的定位讲起,阿里云大部分的产品是IaaS的产品,这些产品只要将自身提供的能力做到性能、易用性以及原子性功能的更优即可。但是容器服务是CaaS层的产品,是对IaaS层的更高级的抽象,我们需要关心不只只是容器如何部署,更多是和开发如何结合,如何符合大家的编程模型或者适应大家的编程模型。而大家的编程模型又各不相同,我们不应该用PaaS的方式去规约开发者的使用习惯以及限制自身系统的能力,更合理的做法是提供原子性的功能,可以集成现有的系统与编程模型。而最简单的方式就是触发器。

容器服务的slack集成

那么是否有能力让slack集成容器服务,通过slack来运维容器呢。其实用slack做运维并非是一个新潮的词汇,GEEK们用slack在aws上管理云资源,做持续集成,大部分依赖slack的一个令人称赞的功能,slack机器人。

下面我们从0部署一个可以运维容器服务的slack机器人。

步骤0 创建slack的team与机器人

首先要学会使用slack的基本功能,然后学会创建一个slack机器人并取得token,这个步骤在本文中就不过多的赘述了。

步骤1 部署应用并创建触发器

在容器服务上部署一个demo的应用,并创建触发器。

2048:
  image: 'blackicebird/2048:latest'
  labels:
    aliyun.scale: '1'
    aliyun.routing.port_80: 2048
  restart: always

点击应用详情页面的创建触发器,即可创建自动扩容的触发器或者重新部署的触发器。

步骤2 部署slack robot
newtown:
    image: registry.aliyuncs.com/ringtail/newtwon:latest
    restart: always
    environment:
        - debug=true
        - key=<如果需要图灵聊天机器人,需填写此项,此项为图灵机器人的appkey>
        - token=<slack机器人的token>

其中key是图灵机器人的key,这个值选填,如果不填写,请删除key,图灵机器人只是为了增加这个项目的趣味性。token是slackbot的token,您可以通过slack的team管理中找到。

附录:
图灵机器人:http://www.tuling123.com/

步骤3 可以玩耍了

在这个slack robot中包含了两个基本模块,记忆模块与容器服务模块。命令的格式如下

记忆模块:
记住 key value    //设置key,如果在别的模块使用,可以采用$key的方式
记住 key            // 获取 key
记住 全部         // 列出全部key 

容器服务模块:
容器服务 触发 <触发器地址>  // curl url,建议用<>括起来网址,因为回显到slack的时候回自动触发。

下面我们利用slack robot进行一次简单的运维 -- 容器扩容

主题命令如下

记住 2048触发器 <你的触发器地址>    

记住 2048触发器    

容器服务 触发 $2048触发器

输入 “容器服务 触发 $2048触发器的后“,查看容器的服务列表,可以发现容器已经处在伸缩中了。


稍后可以发现容器已经扩容完成,欢迎大家探究更多的好玩的方式。

项目仓库

纽敦的仓库:https://github.com/ringtail/newtwon (出于对newton的尊敬改用newtown)

时间: 2024-10-31 00:38:07

容器服务slack运维机器人的相关文章

实战 | 使用Slack、Docker来打造你的运维机器人

本文讲的是实战 | 使用Slack.Docker来打造你的运维机器人,[编者的话]在运维领域中一个比较新鲜也比较有意思的技术是ChatOps, 即通过与一个控制机器人对话来做运维工作.在本文中Digia 高级架构师Jussi Nummelin介绍了他在这方面的一些实践. 作者介绍:Jussi Nummelin, Digia 高级架构师.Jussi当前正在将客户和内部的项目进行Dockerizing.他的Twitter帐号@JNummelin. ChatOps 近来有趋势将团队协作搬到在线消息应用

运维的未来:云服务兴起,运维人员会“下岗”吗?

编者按:本文作者 Tyler Treat 是一名软件工程师,他认为运维的未来从很多方面来说都跟质量保证(QA)的未来走向相似.未来,运维要使开发者能够通过工具.自动化和流程实现自助服务.传统的运维( Ops)没有消失,只是在重组. 云服务的发展看起来让运维人员"丢"了工作,因为从传统意义上说,从本地(on-premise)转移到云平台意味着运维工作在相当大程度上外包给云提供商.这正应了那个流行词-- "无运维运动"(NoOps),许多人称之为 DevOps 的&qu

【先锋】万国数据高可用云服务背后是强大的服务运维+开放平台

在9月份的"2014全球云计算大会"上,万国数据正式发布了GDS云灾备解决方案,这一举措进一步巩固了其作为中国灾难恢复行业领军企业的地位,成立于2000年的万国数据,开始阶段主要以灾备业务为主,从2007年开始拓展整个数据中心业务,目前在上海.深圳.昆山.成都都拥有自建的高等级数据中心,全国范围内有17个数据中心在运营.在和万国数据高级副总裁陈怡琳的采访中,提及以后有无向北美.欧洲等地区扩展时,她表示,客户到哪里,我们便响应到哪里. 万国数据高级副总裁 陈怡琳 凭借世界级新一代数据中心

有了天融信安全运维服务,再也不用担心被投诉了!

运维工程师加班加点累成狗仍被投诉,有木有? 在很多企业中经常会出现以下情况:业务部门不断抱怨和投诉运维人员技术水平低,责任心差,导致系统频频故障,引起业务中断.实际情况是运维人员在故障发生前似乎无所事事,但是一直提心吊胆:在故障发生后,运维工程师疲于奔命,加班加点.身心俱疲,尽管累成汪可是仍然被投诉.出现以上情况,不能完全责怪运维工程师,而是传统运维工作的思路有问题! 没错是工作思路有问题! 故障发生后才开始找问题,才是被投诉的根源! 传统运维工作的思路是在故障发生以后再去寻找引发系统故障的原因

优云蒋君伟:自动化运维成本仍然很高

9月10日-11日,上海光大国际会展中心隆重举办了"2017上海站CNUTCon全球运维技术大会".本次大会的主题是"智能时代的新运维",各个公司为观众带来了他们关于该主题的思考,并分享了他们的实践经历.InfoQ有幸邀请了杭州优云软件有限公司的产品副总裁蒋君伟老师接受我们的采访.谈到对自动化运维未来的展望,蒋老师表示自动化运维必然是大势所趋,但是因为相关技术债务的存在,自动化运维的成本还很高.那优云自己的技术与产品是如何去做高效运维的呢?本次采访带你了解一二. I

阿里云容器服务测评

背景 为了集中精力在上层逻辑,我们计划将自己搭建的容器调度框架mesos+marathon逐步迁移至阿里云容器服务.经过一个月的测试.迁移和开发,我们已将测试环境所有服务迁移到容器服务,并针对容器服务的问题,做了很多workaround,最终在容器服务上搭建了一个高可用零宕机的容器环境.下面我们从<云计算十字真言及其在小博无线的实践>中提到的五个维度来谈一谈容器服务的亮点和它的不足,以及如何让其变得高可用. 冗余 服务无论是被内部还是外部请求调用,都需要通过冗余来避免单点,防止单点故障时造成的

运维改革探索(二):构建可视化分布式运维手段

作者介绍 朱祥磊,山东移动BOSS系统架构师,负责业务支撑系统架构规划和建设.获国家级创新奖1项.通信行业级科技进步奖2项.移动集团级业务服务创新奖3项,申请发明专利13项. 工具篇:构建可视化分布式运维手段 工欲善其事,必先利其器.上篇我们已经详细分享了监控相关的知识,然而运维可视化,除了构造可视化监控外,还要建立相应的运维手段,云化下的运维工具和传统架构的有较大不同,对集群式.分布式提出了更高的要求. 1.自动化巡检 从2011年开始推行巡检,最初,我们的武器仅仅是一个word文档.一些ex

优云丨2017全球运维大会上海站纪实

2017全球运维大会上海站于2017年11月20日-21日在上海光大会展酒店隆重举办,汇聚国内一线运维专家和诸多运维同仁达600余名.作为长期致力于企业级高端运维市场软件开发和咨询服务的优云软件受邀参与本次运维界的盛会.  ▲大会现场 ▲参会嘉宾在优云展台前咨询交流 ▲参会嘉宾在优云展台前咨询交流 本次运维大会,一共来了12家运维行业上下游厂商,有金山云.腾讯云.Ucloud等,但优云依然能够在12家公司里脱颖而出,吸引众多参会嘉宾的目光与注意力.与市面上其他同类产品相比,优云主要有以下5点优势

漫画图解IT人最在乎的三样东西,没想到运维狗又中枪了

中国有逾千万的IT从业人员 大家经常戏称他们为"挨踢"人 那么这些人群有些什么痛点呢? 看看下面三组漫画吧 01 关于女朋友 02 关于工资 03 关于时间 据说IT人22点下班都算早的 其中又以运维汪加班最为严重 但是! 品高云V7.0隆重推出 深度自动化运维服务 平台可根据预设的运维方案和常用指令 自动执行运维功能 充分解放运维压力 每天按时下班不用愁 下面就来看看怎样部署吧 深度分析品高云V7.0 05 深度自动化运维 云计算时代 IT 运维的发展趋势 目前,云计算已经从概念阶段