【云小课】应用平台第28课 如何用FunctionGraph定时开关公有云虚拟机?
关键词:函数工作流服务 ECS 虚拟机
我们在日常工作场景中通常会遇到需要在特定时间节点打开或者关闭公有云虚拟机的情况,那么问题来了,我们如何才能解放双手,设置定时开关公有云虚拟机呢?
Don't worry!针对以上情况,FunctionGraph给出了一份解决方案。
-
根据实际业务,可点击获取定时开启华为公有云虚拟机的程序包或者定时关闭华为公有云虚拟机的程序包。
获得开/关虚拟机的程序包后,不妨跟随小课的脚步,一起学习如何运用函数服务调用华为云ECS接口实现定时开关虚拟机吧!
创建委托
首先需要在控制台创建一个委托。
-
登录统一身份认证服务控制台,创建委托。
-
配置委托,名称:EcsOperation,类型:云服务,云服务:函数工作流 FunctionGraph,持续时间:永久。
-
选择ECS FullAccess权限并根据业务需要选择权限作用范围。
构建程序
-
创建定时开启或者关闭华为公有云虚拟机的函数,上传定时开启华为公有云虚拟机的程序包或者定时关闭华为公有云虚拟机的程序包,并选择创建的委托EcsOperation。
-
在“配置”页签配置环境变量。
表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信息,请参考地区和终端节点。
-
-
选择依赖包。
在“代码”页签,添加“openstacksdk-1.0.6”依赖包,依赖包下载地址:华为云开发工具包(SDK)。添加依赖包详细操作可参考配置函数依赖。
- 点赞
- 收藏
- 关注作者
评论(0)