Provider Terraform
Zarządzaj projektami, kluczami SSH i maszynami wirtualnymi hostd Public Cloud za pomocą Terraform.
Provider Terraform hostd zarządza Twoim Public Cloud jako kodem: projektami, kluczami SSH i maszynami wirtualnymi. Korzysta z tego samego API i tego samego klucza API.
Provider: hostdcloud/hostd w Terraform Registry — tam opisano każdy zasób i argument.
Podłączenie
Utwórz klucz API w portalu w Ustawienia → Klucze API i wyeksportuj go:
export HOSTD_API_KEY=<your-api-key>terraform {
required_providers {
hostd = {
source = "hostdcloud/hostd"
}
}
}
provider "hostd" {}Dostęp
Provider działa z Twoim kluczem API, więc ma taki sam dostęp jak klucz (szczegóły):
hostd_ssh_keywymaga dostępu Write do kluczy SSH.hostd_projectwymaga klucza, który może tworzyć projekty; klucz dostaje Full do projektów, które utworzy. Aby użyć istniejącego projektu, wpisz jego UUID wproject_id.hostd_vmwymaga dostępu Write do projektu; usunięcie VM wymaga Full.- Odczyt stanu i
hostd_os_imageswymagają Read.
Przykład
resource "hostd_project" "main" {
name = "production"
cluster_name = "waw-1"
}
resource "hostd_ssh_key" "admin" {
name = "admin"
public_ssh_key = file("~/.ssh/id_ed25519.pub")
}
data "hostd_os_images" "available" {
project_id = hostd_project.main.id
}
resource "hostd_vm" "web" {
project_id = hostd_project.main.id
hostname = "web-01"
os_image = "debian-12-amd64.qcow2"
ssh_key_ids = [hostd_ssh_key.admin.id]
cores = 2
ram_gb = 4
os_disk_gb = 20
}
output "web_ipv4" {
value = hostd_vm.web.ipv4
}Nazwy obrazów zależą od klastra: hostd_os_images zwraca obrazy dostępne w projekcie. Do VM logujesz się dołączonymi kluczami SSH; provider ustawia losowe hasło i go nie ujawnia.
Zasoby
| Nazwa | Czym zarządza |
|---|---|
hostd_project | Projekt w klastrze (strefie) |
hostd_ssh_key | Publiczny klucz SSH na koncie |
hostd_vm | VM: CPU, RAM, dysk, klasa CPU, sieci publiczna i prywatne |
hostd_os_images (źródło danych) | Obrazy systemów dostępne w projekcie |
Limity
- Provider przestrzega limitów API: po osiągnięciu limitu czeka czas z nagłówka
Retry-Afteri ponawia żądanie. - CPU lub RAM VM można zmniejszyć tylko przy zatrzymanej VM (najpierw zatrzymaj ją w portalu) i dopiero 24 godziny po jej utworzeniu lub ostatnim zwiększeniu.
- Zmiana sieci publicznej VM między
ipv4,ipv6idualodbywa się przezoff. - Sieci prywatne podłączasz po nazwie (
lan_vnets); najpierw utwórz je w portalu.