在使用公有云的过程中,体验到了便捷性,但是也带来了一些资源浪费,尤其是晚上下班后ECS在空转的场景。
因此,搜索资料,尝试使用函数计算实现华为云ECS定时开关机。
参考:https://support.huaweicloud.com/bestpractice-functiongraph/functiongraph_05_1001.html
创建委托
登录华为云控制台
点击右上角“用户名”,点击“统一身份认证”
点击“委托”,点击“创建委托”
委托信息如下:
选择“企业项目视图”授权“ECS FullAccess”
定时开机
打开华为云控制台,点击左上部分的资源列表,搜索“函数”,点击“图钉”将该资源添加到控制台资料列表方便下次查看。
点击控制台左上部分资源列表,找到并点击“函数工作流”
展开“函数”菜单,点击“函数列表”
没有新建的话,可以点击新建。这里已经新建完成,梳理下配置的选项。
下载华为云开机zip包
https://functionstage-examples.obs.cn-north-1.myhuaweicloud.com/ecs-start-python.zip
点击“上传自”,选择“ZIP”
点击“设置”,查看“常规配置”是否正确。
点击“触发器”,选择“新建”触发器
搜索“timer”字样,选择“定时触发器 (TIMER)”
选择“Cron表达式” CRON_TZ=Asia/Shanghai 0 9 * * *
输入“附加信息”:每天9点启动
点击保存
点击“权限”,确保此处选择的是第一步生成的“EcsOperation”
点击“网络配置”,去掉“函数访问公网”,因为此处不需要访问公网资源。
点击“环境变量”,分别输入region domain projectid whiteLists等信息
projectid可以从“企业”->“项目管理”中,点击“名称”获得。
whiteLists 可以从“云服务器控制台”->“实例与镜像”->“弹性云服务器”中相应位置获得
点击“并发”,将单函数最大实例数修改为1。点击保存。
定时关机
定时关机与定时开机设置基本一致,主要注意以下几点。
函数zip文件下载地址:https://functionstage-examples.obs.cn-north-1.myhuaweicloud.com/ecs-shutdown-python.zip
需要修改触发器时间CRON_TZ=Asia/Shanghai 0 20 * * *
环境变量需要增加type。
结果如何,明天拭目以待。