# ============================================================================ # Сервисы, переведённые на OpenTofu provisioning по схеме blue-green. # Процедура и порядок сервисов: docs/ai/migration-tofu.md. # ============================================================================ # # Сервис №1: emergency-bot (OLD vmid 148, mini-pc). # Эталон снят 2026-09-02: ssh mini-pc sudo pct config 148. # Данных нет (backup: none), шаг 4.4 (перенос данных) пропускается целиком. # # vm_id 151 — новый VMID для blue-green переезда, TMPIP 192.168.1.6 был # использован только на шаге 4.3 (проверка перед cutover). После шага 4.5.15 # адрес — боевой 192.168.1.32, OLD (148) остановлен и остаётся откатом # минимум неделю. resource "proxmox_virtual_environment_container" "emergency_bot" { node_name = "mini-pc" vm_id = 151 unprivileged = true start_on_boot = true started = true tags = ["tofu"] initialization { hostname = "emergency-bot" ip_config { ipv4 { address = "192.168.1.32/24" gateway = "192.168.1.1" } } dns { servers = ["1.1.1.1"] } user_account { keys = [trimspace(file(pathexpand("~/.ssh/id_ed25519_homelab.pub")))] } } operating_system { template_file_id = "local:vztmpl/debian-13-standard_13.1-2_amd64.tar.zst" type = "debian" } cpu { cores = 1 } memory { dedicated = 512 swap = 256 } disk { datastore_id = "local-lvm" size = 4 } # Эталон: features: nesting=1. Ни keyctl, ни fuse, ни device passthrough # эталону не нужны, поэтому доступно в обоих режимах аутентификации. features { nesting = true } # roles/pve_lxc всем контейнерам ставит cmode=shell (pve_lxc_cmode), провайдер # это отслеживает через блок console.type — без него на следующем apply # откатит на дефолт Proxmox tty. Обнаружено 2026-09-02 на этом сервисе, # см. tofu/README.md. console { type = "shell" } network_interface { name = "eth0" bridge = "vmbr0" firewall = true } startup { order = 70 } } output "emergency_bot" { description = "Что проверять на узле после apply" value = { vmid = proxmox_virtual_environment_container.emergency_bot.vm_id node = proxmox_virtual_environment_container.emergency_bot.node_name verify = "ssh mini-pc sudo pct config ${proxmox_virtual_environment_container.emergency_bot.vm_id}" } }