Ansible 如何检查一个URL是否正常

2022-05-31

Ansible 如何针对 URL 做健康检查,确保是正常服务的?

目标

假如有一个 URL 叫 http://www.example.com,我们想看看是否能正常访问。

方法一

最直接的方法当然是使用 ansible.builtin.shell ,然后执行

$ curl ${url}

写作 playbook 就是:

---
- name: curl a url
  ansible.builtin.shell:
    cmd: "curl {{ url }}"
...

方法二

其实,ansible 提供了 ansible.builtin.uri 模块用于和 web 服务产生交互。如果想检查 URL 的服务是否正常,可以用下面简单的做法:

---
- name: health check
  ansible.builtin.uri:
    url: "{{ url }}"
...

这个方法直接发送 GET 请求到 {{ url }} 并且检查返回的状态码是否 200

捐助本站

为了保证阅读体验,本站不安放广告。但是,租用服务器和编写文章需要个人资金和时间的投入。

如果您觉得文章对您有用,请考虑捐助小站(金额不限),以期待更多原创文章。捐助记录

本站是个人网站,若无特别说明,文章均为原创,并采用 署名协议 CC-BY-NC 授权。
欢迎转载,惟请保留原文链接,且不得用于商业用途。