利用 PuppetDB API 检索数据全解析
1. PuppetDB API 基础概述
当发起一个 API 调用时,PuppetDB 会获取请求的数据,并以 JSON 响应的形式返回。JSON 文档的实际结构会根据所使用的端点而有所不同,因此查阅端点文档以了解预期的确切格式是很明智的。
2. PuppetDB 查询语言入门
- 基本路由查询 :大多数端点可以使用提供的路由来检索信息。例如,以下查询将返回所有运行 Linux 的节点:
curl http://puppetdbhost:8080/v3/facts/kernel/Linux
这种技术可以获取大量数据,但缺乏反映更复杂需求的灵活性。
- 使用查询语言的查询 :为了让用户能够指定更复杂的查询,PuppetDB 允许某些端点在 PuppetDB API 中使用查询语言。使用查询语言的 PuppetDB 查询类似于对路由的调用,因为它由 HTTP 请求组成,但不同之处在于需要提供一个包含 PuppetDB 查询的附加查询字符串。
PuppetDB 查询乍一看可能相当复杂,因为它们采用逆波兰表示法并包含在 JSON 数组中。这与大多数常见语言有所不同,需要一些练习才能适应。本质上,这意味着构建的每个查询都以操作符开头,后续元素由参数组成,然后按编写顺序进行计算。例如:
curl -X GET http:/
超级会员免费看
订阅专栏 解锁全文
2

被折叠的 条评论
为什么被折叠?



