有没有关于使用命令行管理景观的文档?例如,如何从客户端机器测试 ping?
答案1
我相信您想知道的是如何通过 CLI 管理 Landscape 服务器。因此,我想向您推荐此处的用户指南https://landscape.canonical.com/static/doc/user-guide/ 这将是一个良好的开始。
关于 CLI 工具,您需要选择您觉得最舒服/最喜欢哪一个: https://landscape.canonical.com/static/doc/api/
为了帮助您入门,有 3 种方法可以使用此 API:
命令行客户端:易于使用,shell脚本友好
Python 模块:功能更强大,如果你想通过 Python 驱动 API,推荐使用
低级 HTTP 请求:如果你想知道发生了什么,或者为其他语言编写一个客户端
我个人最喜欢的是命令行客户端。安装 Landscape-API 并获取密钥后(您可以从 Landscape 服务器 GUI 中找到、生成和刷新密钥,只需在登录时单击您的姓名即可),如下所示https://landscape.canonical.com/static/doc/api/api-client-package.html 您可以从 Landscape 服务器和所连接的机器获取所有信息:
例子:
$ landscape-api get-computers | grep host
u'hostname': u'xxx.eu-west-2.compute.amazonaws.com',
u'hostname': u'xxx.eu-west-2.compute.internal',
u'hostname': u'laptop',
$ landscape-api get-computers | grep ping
u'last_ping_time': u'2018-12-05T16:45:39Z',
u'last_ping_time': u'2018-12-05T16:45:39Z',
u'last_ping_time': u'2018-12-05T15:24:20Z',
我在这里使用 grep 只是为了向你展示示例,因为即使 3 台机器的完整输出也相当大,特别是如果你使用附加开关运行它时:
$ landscape-api get-computers --with-hardware
或者
$ landscape-api get-computers --with-hardware --json
然后,您还可以使用 jq 进行额外的文本操作
希望这会有所帮助。