GPU это лишь один из тарифов, а клиент общего назначения. Примеры переписаны на обычные серверы, добавлен пример с масштабированием под нагрузку. Claude-Session: https://claude.ai/code/session_01Loz5stgQZH6ofBdMqTxiJu
30 строки
1.2 KiB
Python
30 строки
1.2 KiB
Python
"""Полный цикл: создать сервер, снять с него образ, удалить.
|
|
|
|
Приём годится для чего угодно: подготовить эталонную машину, снять образ
|
|
и дальше поднимать из него копии за пару минут вместо повторной настройки.
|
|
"""
|
|
import os
|
|
from regcloud_api import RegCloud
|
|
|
|
SIZE = os.environ.get("SIZE", "c2-m4-d60-hp")
|
|
IMAGE = os.environ.get("IMAGE", "ubuntu-24-04-amd64")
|
|
REGION = os.environ.get("REGION", "openstack-msk1")
|
|
KEY = os.environ.get("SSH_FINGERPRINT", "")
|
|
|
|
api = RegCloud()
|
|
|
|
srv = api.create(size=SIZE, image=IMAGE, name="example-01",
|
|
ssh_keys=[KEY] if KEY else None, region=REGION)
|
|
print("создан сервер", srv["id"])
|
|
|
|
info = api.wait_active(srv["id"])
|
|
print("готов, адрес", RegCloud.ip_of(info))
|
|
|
|
# ... тут настройка машины по ssh ...
|
|
|
|
api.snapshot(srv["id"], "example-base", offline=True)
|
|
print("образ поставлен в очередь, платформа сама остановит сервер")
|
|
|
|
api.destroy(srv["id"])
|
|
print("сервер удалён, образ остался")
|