利用Terraform实现运维平台的IaaS层,由于公司用的全是阿里云,所以以阿里云为例,不过既然是Terraform,其实无需太在意这个,基类封装好,什么云可以,甚至是VSphere
本文中只例出写个比较重要的代码块

系统中需要提前安装好Terraform,虽然是Python库其实是“subprocess.Popen”执行的系统命令

以下为Terraform Python库的源码

generate_terraform_file

封装的Terraform基类

这里用到了ABCMeta类,强制指定必须复写类似于terraform init之类的关键步骤

继承CloudClient基类

执行

如果都是标准化的,可以直接使用批量创建的方式,我这里考虑非标,所以是for循环

terraform.tf.j2

目标样例



如果想赏钱,可以用微信扫描下面的二维码,一来能刺激我写博客的欲望,二来好维护云主机的费用; 另外再次标注博客原地址 itnotebooks.com 感谢!

手把手搭建CI/CD(一)

gitlab + tekton + argoCD

阅读全文

自动分析国家关于每年的法定节假日安排公告,生成查询接口自动判断作息日

背景 工作中经常遇到需要根据作息去做排班系统、跑定时报表任务、统一告警通道、巡检等等场景,之前是比较粗暴的区分周一~周五、周六和周日这样,遇到法定节...

阅读全文

Golang Terraform 创建阿里云ECS云主机

封装NewTerraform方法 将Terraform的环境相关信息都在这个方法内定义完成 1. Terraform工作目录定义 2. Plugins初始化,考虑到在线初始化太慢,这里是提前下...

阅读全文

欢迎留言