【云小课】应用平台第28课 如何用FunctionGraph定时开关公有云虚拟机?

举报
应用万花筒. 发表于 2022/02/24 10:38:19 2022/02/24
【摘要】 本篇介绍通过函数工作流服务(FunctionGraph),如何调用华为云ECS接口从而实现定时开关虚拟机。

关键词:函数工作流服务 ECS 虚拟机

我们在日常工作场景中通常会遇到需要在特定时间节点打开或者关闭公有云虚拟机的情况,那么问题来了,我们如何才能解放双手,设置定时开关公有云虚拟机呢?

Don't worry!针对以上情况,FunctionGraph给出了一份解决方案。

云小课.jpg

获得开/关虚拟机的程序包后,不妨跟随小课的脚步,一起学习如何运用函数服务调用华为云ECS接口实现定时开关虚拟机吧!


创建委托

首先需要在控制台创建一个委托。

  1. 登录统一身份认证服务控制台,创建委托。

  2. 配置委托,名称:EcsOperation,类型:云服务,云服务:函数工作流 FunctionGraph,持续时间:永久。

  3. 选择ECS FullAccess权限并根据业务需要选择权限作用范围。

构建程序

  1. 创建定时开启或者关闭华为公有云虚拟机的函数,上传定时开启华为公有云虚拟机的程序包或者定时关闭华为公有云虚拟机的程序包,并选择创建的委托EcsOperation。

  2. 在“配置”页签配置环境变量。

    表1 环境变量说明

    环境变量

    说明

    region

    ECS所在的区域,如cn-north-4

    domain

    填写默认值:myhuaweicloud.com

    projectId

    ECS所在的Project ID

    whiteLists

    • 当定时开启华为公有云虚拟机时,填写无需开启的虚拟机名称,以逗号分隔

    • 当定时关闭华为公有云虚拟机时,填写无需关机的虚拟机名称,以逗号分隔


    • 本案例对函数执行的区域没有要求,如函数运行在北京,想要开启或者关闭北京四的弹性云服务的虚拟机,只需要将projectId、region和domain更改为北京四区域的信息即可。

    • 如果开启或者关闭的虚拟机数量过多,则需要增大超时时间。

    • 表1 环境变量说明中除domain和whiteLists根据实际情况选择添加或者不添加。不添加domain环境变量时,程序包中domain使用默认值:myhuaweicloud.com,whiteLists为无需开机/关机的ecs服务器名称以逗号分隔。
    • {region}.{domain}组成ECS的终端节点Endpoint,如:cn-north-4.myhuaweicloud.com,具体Endpoint信息,请参考地区和终端节点

  3. 选择依赖包。

    在“代码”页签,添加“openstacksdk-1.0.6”依赖包,依赖包下载地址:华为云开发工具包(SDK)

    添加依赖包详细操作可参考配置函数依赖

添加事件源

创建TIMER触发器。

至此,如何定时开关虚拟机的方法就教给大家啦,如此方便快捷的功能,单击立即使用,大家赶紧动手试一试吧!



【版权声明】本文为华为云社区用户原创内容,转载时必须标注文章的来源(华为云社区)、文章链接、文章作者等基本信息, 否则作者和本社区有权追究责任。如果您发现本社区中有涉嫌抄袭的内容,欢迎发送邮件进行举报,并提供相关证据,一经查实,本社区将立刻删除涉嫌侵权内容,举报邮箱: cloudbbs@huaweicloud.com
  • 点赞
  • 收藏
  • 关注作者

评论(0

0/1000
抱歉,系统识别当前为高风险访问,暂不支持该操作

全部回复

上滑加载中

设置昵称

在此一键设置昵称,即可参与社区互动!

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。

*长度不超过10个汉字或20个英文字符,设置后3个月内不可修改。