当前位置: 首页 > ai >正文

观测云OaC能力升级,通过Terraform实现配置闭环

Terraform 简介

Terraform 是 Hashicorp 公司开源的一种资源编排工具,常用于管理多云资源。利用 Terrafrom 提供的特定配置语言 HCL(Hashicorp Configuration Language)来定义资源,再由 Terraform 统一解析构建资源之间的依赖关系,生成执行计划,调用各个厂商的具体实现来完成资源的生命周期管理。

  • 跨平台特性:目前海内外累计已有超过 40 家公有云厂商支持,另有 200 多个软件服务商为其提供支持。利用 Terraform 跨平台特性,可以非常方便的将观测云资源同其他厂商资源进行集成。
  • 自动化:所有的资源变更都由 Terraform 来管理执行,不需要手动执行相同的操作,让工程师把时间浪费在美好的事情上。
  • 环境一致性:通过 Terrafrom 部署环境,可以把配置复制到任何环境中,不需要担心环境非一致性带来的异常。
  • 变更审计:通过代码管理资源,Terraform Plan 生成执行计划,可以进行版本控制,任何资源变更都变得可追踪、可审计。
  • 自动化测试:资源通过代码配置管理后,在测试环境或者 CI 进行自动化测试变得可行,每一次资源变更都可以进行相同的兼容性测试。

观测云 Terraform Provider: Terraform Registry

上一期文章《观测云全面支持 OaC,通过 Terraform 管理您的可观测性》主要介绍了如何使用 Terraform 创建观测云资源的资源。

本期内容再给大家介绍一下如何通过 Terraform 导出现有配置并修改后导入,实现全流程闭环管理(以 BlackList 资源为例)。

操作步骤

第一步、配置 Provider

开始使用观测云 Terraform 之前,通过「API Key 管理」获取 Key,添加到 provider.tf 配置文件:

terraform {required_version = ">=0.12"required_providers {guance = {source  = "GuanceCloud/guance"version = "=0.0.6"}}
}// We also recommend use secret environment variables to set the provider,
// Such as GUANCE_ACCESS_TOKEN and GUANCE_REGION
provider "guance" {# access_token = "your access token, recommend store in environment variable"access_token = "cJ1XXXXXXXXXXXXXXXXXXXXXXXXXXXXXQBkrf"region       = "hangzhou"
}

第二步、初始化 Terraform

初始化 Terraform 环境。

terraform init

第三步、导出平台资源

1、定义好需要导出资源的 main.tf 配置文件

# 此处以名称为“terr-test”的日志黑名单资源为例
resource "guance_blacklist" "terr-test" {type   = "logging"source = ""}

2、获取该资源的 uuid

通过观测云的 OpenAPI,获取到该资源的 uuid。

3、导出 terraform 配置

根据获取到的 uuid,执行 terraform 导出命令。

terraform import guance_blacklist.terr-test blist_e93c8b0XXXXXXXXXXXXXXXXXXX35164c3

第四步、修改资源配置

1、先验证下导出的 terraform 配置信息

terraform state show  guance_blacklist.terr-test

2、修改 terraform 配置文件并校验

将 show 出来的必填字段和需要修改的字段填充到 man.tf 配置文件中。(注意要去掉只读字段,不然 terraform 会校验不通过;字段说明可参考官方文档)。执行 terraform plan 校验。

terraform plan 校验通过是这样的。

第五步、导入修改后的资源

将修改好的 terraform 配置文件,导入到观测云平台。

terraform apply

查看观测云平台,确认该资源已经被正确修改。

总结

观测云 OaC 能力还在持续提升,通过 Terraform 已经实现导出现有配置并修改后导入全流程闭环。来我们会支持更多的观测云资源管理。同时,我们也非常欢迎大家一同参与贡献,为中国可观测性 OaC 添砖加瓦。

观测云 Terraform Provider Github:https://github.com/GuanceCloud/terraform-provider-guance

http://www.xdnf.cn/news/12485.html

相关文章:

  • MySQL基础(一)介绍、下载及安装
  • w384药品管理系统的设计与实现
  • MySQL基础(三)DQL(Data Query Language,数据查询语言)
  • 【第一章:人工智能基础】01.Python基础及常用工具包-(1)Python语法与基础数据类型
  • 开源音乐播放器 MusicFree 项目介绍:自由、纯粹、高度自定义的听歌体验
  • 谷歌云代理商 | 游戏行业专属方案:谷歌云实时多人游戏服务器架构
  • STM32实战: CAN总线数据记录仪设计方案
  • 利用ProtoBuf 实现网络版通讯录
  • Vue基础(14)_列表过滤、列表排序
  • arcpy与扩展模块
  • 灵感枯竭?ai写小说生成器来帮忙
  • 深入理解数字音频:采样率、位深与量化
  • nuScenes 数据集及同类型自动驾驶数据集介绍
  • vue3 按钮级别权限控制
  • 车型库查询接口如何用Java进行调用?
  • 【机械视觉】Halcon—【十、实例—木头检测_充电宝检测_豆子检测】
  • python打卡44天
  • Linux 下的COW机制(copy-on-write)
  • python八股文算法:三数之和
  • 前端~三维地图(cesium)地图遮罩蒙层
  • 货运车辆在高速公路上发生故障,应如何设置警示标志?
  • 山洪径流过程及洪水淹没数值模拟
  • JDK21 虚拟线程原理剖析与性能深度解析
  • 力扣面试150题--克隆图
  • 2025年服装收银系统推荐:助力服装商家高效经营
  • SDC命令详解:使用set_min_capacitance命令进行约束
  • hbuildx运行uzapp项目初始化配置
  • gid1 gid2 profileOwner
  • 使用 XState 状态机打造英语单词学习界面(demo)
  • 深入Kubernetes源码阅读指南核心概念- /pkg/api