跳转到内容
无痕工具库 无痕工具库

Hostinger Ansible Collection 使用教程

Hostinger Ansible 集合是一款强大的工具,可帮助你使用 Ansible 自动化管理 Hostinger 云服务器(VPS)。本文将介绍该集合的功能、安装方法,并通过示例展示如何在你的自动化工作流中使用它。

什么是 Hostinger Ansible 集合?

Hostinger Ansible 集合是一组与 Hostinger 公共 API 交互的 Ansible 模块。借助这些模块,你可以通过 Ansible 剧本(playbook)管理 Hostinger VPS 基础设施的各个方面,包括:

  • 管理防火墙和防火墙规则
  • 控制 VPS 电源状态(启动、停止、重启)
  • 设置主机名和 SSH 密钥
  • 创建和管理快照
  • 安装恶意软件防护
  • 获取性能指标
  • 自动化服务器预置
  • 创建和管理安装后脚本

使用该集合,你可以对 Hostinger VPS 资源实施基础设施即代码(IaC)实践,使服务器管理更加高效、一致且可重复。

安装

你可以通过 Ansible Galaxy(Ansible 集合的官方仓库)安装 Hostinger Ansible 集合。

从 Ansible Galaxy 安装

ansible-galaxy collection install hostinger.vps

本地开发安装

如果你想为该集合做贡献,或需要从本地构建安装:

ansible-galaxy collection build
ansible-galaxy collection install hostinger-vps-*.tar.gz

可用模块

Hostinger Ansible 集合包含一套完整的模块,涵盖 VPS 管理的方方面面,从防火墙配置和电源管理到安装后脚本和快照。

其中一些核心模块包括:

  • VPS 预置和电源管理
  • 防火墙管理和规则
  • 主机名和 SSH 密钥配置
  • 安装后脚本管理
  • 快照创建与恢复

此外,该集合还提供了一个动态清单(inventory)插件,可自动发现你的 Hostinger VPS 实例。

有关可用模块的完整列表和详细文档,请访问 Hostinger Ansible 集合 GitHub 仓库。

配置

要使用 Hostinger Ansible 集合,你必须在 Ansible 环境中配置 Hostinger API 凭据。

API 身份验证

在你的 Ansible 项目中创建一个配置文件(例如 hostinger_api.yaml):

yaml--- hostinger_api_token: "your_api_token_here"

然后,你可以在剧本中引用该文件,或使用 vars_files 指令将其引入。

使用示例

以下是在剧本中使用 Hostinger Ansible 集合的一些实用示例。

获取 VPS 信息

---
- name: Get VPS Information
hosts: localhost
vars_files:
- hostinger_api.yaml
tasks:
- name: Get VPS details
hostinger.vps.hostinger_vps_get_info:
token: "#{{ hostinger_api_token }}"
vps_id: 123456
register: vps_info
- name: Display VPS information
debug:
var: vps_info

重启 VPS

---
- name: Restart VPS
hosts: localhost
vars_files:
- hostinger_api.yaml
tasks:
- name: Restart VPS
hostinger.vps.hostinger_vps_power:
token: "#{{ hostinger_api_token }}"
vps_id: 123456
state: restarted
register: restart_result
- name: Display restart result
debug:
var: restart_result

创建并使用安装后脚本

---
- name: Manage Post-Install Scripts
hosts: localhost
vars_files:
- hostinger_api.yaml
tasks:
- name: Create LAMP stack post-install script
hostinger.vps.hostinger_vps_postinstall_create:
token: "#{{ hostinger_api_token }}"
name: "Install Docker"
content: |
#!/bin/bash
apt update && apt install -y docker.io
register: post_install_script
- name: Reinstall VPS with post-install script
hostinger.vps.hostinger_vps_reinstall:
token: "#{{ hostinger_api_token }}"
vps_id: 123456
template_id: 4 # Ubuntu 22.04
post_install_script_id: "#{{ post_install_script.id }}"

故障排除

常见问题

  1. 身份验证错误:请确保你的 API 令牌正确且具有必要的权限。
  2. 找不到模块:请确保你已正确安装该集合。可尝试使用 ansible-galaxy collection install hostinger.vps --force 重新安装。
  3. API 速率限制:如果你在短时间内发起大量 API 调用,可能会触发速率限制。如有需要,请在任务之间添加延迟。
  4. 错误消息:请务必查看返回的错误消息,其中通常包含出错原因的具体细节。

Hostinger Ansible 集合为你提供了一种使用 Ansible 自动化管理 Hostinger VPS 的强大方式。将这些模块融入你的自动化工作流,可以节省时间、减少错误,并对 Hostinger VPS 资源实施基础设施即代码实践。

如果你想进一步了解 Ansible 集合及其使用方法,请参阅 Ansible 官方文档。