用GO语言调用火山引擎API来实现定时修改CDN配置

情景

由于我所使用的服务器每天晚间都会进行关机维护,因此在关闭前,我需要手动修改CDN的设置,添加一个备用源站。第二天开机后,我又得删除这个备用源站的配置,这一过程确实相当繁琐。

火山引擎的源站检查机制并不完全契合我的情况。它只尝试连接十次,如果十次都失败,就会切换到备用源站,并且不再尝试回到主源站。这就导致如果我没在新的一天开始时更新配置,服务就会持续从备用源站获取内容,这无疑增加了我的日常管理工作。

起初,我依赖火山引擎的API-Explorer创建了一个脚本,但后来我发现这个工具的时间限制问题,它只能一次性或按预定时间运行。我原本以为已经解决了问题,但在第二天遇到服务中断的问题后,我意识到这不是一个持久的解决方案。

现在,官方推荐使用GO语言版本的SDK。我相信这将给我提供更大的灵活性和控制力,能更好地适应服务器的每日维护周期,从而减轻我的工作负担。

(以上是AI美化的)

教程

这里需要搞一个API密钥

地址:https://console.volcengine.com/iam/keymanage/

没有就新建一个,有的就先备着,等会要用。

然后我们去火山引擎提供的API调用

https://api.volcengine.com/api-explorer

注意切换你想要的功能,这里演示的是CDN配置。

然后根据你想要的内容进行修改,因为每个人修改的内容不一样,这里不演示。

修改好后,点一下发起调试。调试没问题,就点击SDK示例。如下图。

然后我们将完整工程下载下来,上传到服务器上。

例如我们上传的路径是/cdn/

也就是说cdn目录中,有一个文件夹和一个go.mod文件

然后我们cd进main文件夹中。

打开main.go,修改里面的AK SK内容,就是最上面让你准备好的密钥,修改好后保存。

执行go mod tidy

然后go build

这时候你的main文件夹中就会出现一个新的文件

输入./main

就能运行了。

当然,这是其中一个配置,如果你想和我一样要定时切换两种CDN配置,那就需要制作两个main文件,记得提前把第一个做好的main文件修改名字,不然后面制作的main文件会覆盖过去。

然后将main文件或者你修改名字后的文件放在一个合适的位置,用计划任务来定时启动他就行了。

记得测试一下,然后回到CDN那边看看配置有没有成功。

 


 

阅读剩余
THE END