name: vultr
version: 1.3.0
description: Manage Vultr cloud infrastructure including VPS instances, bare metal, Kubernetes clusters, databases, DNS, firewalls, VPCs, object storage, and more. Use when asked to deploy, manage, list, or modify Vultr resources.
author: Erwin Evans
tags:
- vultr
- cloud
- infrastructure
- kubernetes
- vps
Vultr Cloud Infrastructure Management
Manage Vultr cloud resources via the Vultr API v2.
Setup
Store your API key in ~/.config/vultr/api_key:
CODEBLOCK0
Generate API keys at: https://my.vultr.com/settings/#settingsapi
Usage
CODEBLOCK1
Quick Reference
Account
CODEBLOCK2
Instances (VPS)
CODEBLOCK3
Bare Metal
CODEBLOCK4
Kubernetes (VKE)
CODEBLOCK5
Databases
CODEBLOCK6
DNS
CODEBLOCK7
Firewall
CODEBLOCK8
VPC
CODEBLOCK9
Snapshots
CODEBLOCK10
SSH Keys
CODEBLOCK11
Regions & Plans
CODEBLOCK12
Block Storage
CODEBLOCK13
Object Storage
CODEBLOCK14
Reserved IPs
CODEBLOCK15
Billing
CODEBLOCK16
Common Workflows
Deploy a Web Server
CODEBLOCK17
Create a Kubernetes Cluster
CODEBLOCK18
Set Up Managed Database
CODEBLOCK19
Full API Reference
See references/api-reference.md for complete endpoint documentation.
Response Format
All commands return JSON. Successful responses include the resource data. Errors include an error field with details.
Example success:
CODEBLOCK20
Example error:
CODEBLOCK21
name: vultr
version: 1.3.0
description: 管理Vultr云基础设施,包括VPS实例、裸金属服务器、Kubernetes集群、数据库、DNS、防火墙、VPC、对象存储等。当需要部署、管理、列出或修改Vultr资源时使用。
author: Erwin Evans
tags:
- vultr
- cloud
- infrastructure
- kubernetes
- vps
Vultr云基础设施管理
通过Vultr API v2管理Vultr云资源。
设置
将API密钥存储在~/.config/vultr/api_key中:
bash
mkdir -p ~/.config/vultr
echo -n 你的API密钥 > ~/.config/vultr/api_key
chmod 600 ~/.config/vultr/api_key
在以下地址生成API密钥:https://my.vultr.com/settings/#settingsapi
使用方法
bash
python3 scripts/vultr.py <资源> <操作> [选项]
快速参考
账户
bash
vultr.py account get # 账户信息、余额
vultr.py account bgp # BGP配置
vultr.py account bandwidth # 带宽使用情况
实例(VPS)
bash
vultr.py instances list # 列出所有实例
vultr.py instances get --id abc123 # 获取实例详情
vultr.py instances create --region ewr --plan vc2-1c-1gb --os 174 # 创建实例
vultr.py instances start --id abc123 # 启动实例
vultr.py instances stop --id abc123 # 停止实例
vultr.py instances reboot --id abc123 # 重启实例
vultr.py instances delete --id abc123 # 删除实例
裸金属服务器
bash
vultr.py bare-metal list # 列出裸金属服务器
vultr.py bare-metal create --region ewr --plan vbm-4c-32gb --os 174
Kubernetes(VKE)
bash
vultr.py kubernetes list # 列出集群
vultr.py kubernetes create --region ewr --version v1.28 --label my-cluster
vultr.py kubernetes kubeconfig --id abc123 # 获取kubeconfig
vultr.py kubernetes versions # 可用版本
数据库
bash
vultr.py databases plans # 列出套餐
vultr.py databases list # 列出数据库
vultr.py databases create --region ewr --type pg --plan
DNS
bash
vultr.py dns list # 列出域名
vultr.py dns create --domain example.com --ip 192.0.2.1 # 创建域名
vultr.py dns records --domain example.com # 列出记录
vultr.py dns create-record --domain example.com --record-type A --record-name www --record-data 192.0.2.1
防火墙
bash
vultr.py firewall list # 列出组
vultr.py firewall create --description Web服务器
vultr.py firewall rules --id abc123 # 列出规则
vultr.py firewall create-rule --id abc123 --ip-type v4 --protocol tcp --port 22 --subnet 10.0.0.0/8
VPC
bash
vultr.py vpc list # 列出VPC
vultr.py vpc create --region ewr --description 私有网络 --subnet 10.0.0.0/24
快照
bash
vultr.py snapshots list # 列出快照
vultr.py snapshots create --instance-id abc123 --description 备份
SSH密钥
bash
vultr.py ssh-keys list # 列出密钥
vultr.py ssh-keys create --name 我的密钥 --key ssh-rsa AAAA...
区域与套餐
bash
vultr.py regions list # 列出区域
vultr.py plans list # 列出VPS套餐
vultr.py plans bare-metal # 裸金属服务器套餐
块存储
bash
vultr.py block-storage list # 列出卷
vultr.py block-storage create --region ewr --size 100 --label 数据
vultr.py block-storage attach --id abc123 --instance xyz789
对象存储
bash
vultr.py object-storage clusters # 列出集群
vultr.py object-storage create --cluster abc123 --label 我的存储桶
保留IP
bash
vultr.py reserved-ips list # 列出保留IP
vultr.py reserved-ips create --region ewr --ip-type v4 --label 前端
账单
bash
vultr.py billing history # 账单历史
vultr.py billing invoices # 列出发票
vultr.py billing pending-charges # 当前费用
常见工作流程
部署Web服务器
bash
1. 获取可用区域和套餐
vultr.py regions list
vultr.py plans list
2. 使用Ubuntu 24.04创建实例
vultr.py instances create \
--region ewr \
--plan vc2-2c-4gb \
--os 174 \
--label web-server \
--hostname web01 \
--ipv6 \
--ssh-keys ssh-key-id
3. 配置防火墙
vultr.py firewall create --description Web服务器
vultr.py firewall create-rule --id fw-id --ip-type v4 --protocol tcp --port 22 --subnet 你的IP/32
vultr.py firewall create-rule --id fw-id --ip-type v4 --protocol tcp --port 80
vultr.py firewall create-rule --id fw-id --ip-type v4 --protocol tcp --port 443
创建Kubernetes集群
bash
1. 获取可用版本
vultr.py kubernetes versions
2. 创建集群
vultr.py kubernetes create \
--region ewr \
--version v1.28.0 \
--label 生产集群
3. 获取kubeconfig
vultr.py kubernetes kubeconfig --id 集群ID > kubeconfig
设置托管数据库
bash
1. 列出套餐
vultr.py databases plans
2. 创建PostgreSQL数据库
vultr.py databases create \
--region ewr \
--type pg \
--plan vdb-1-4-2 \
--label 生产数据库
完整API参考
完整端点文档请参见 references/api-reference.md。
响应格式
所有命令返回JSON格式。成功响应包含资源数据。错误响应包含带有详细信息的error字段。
成功示例:
json
{
instance: {
id: abc123,
label: web-server,
region: ewr,
status: active,
main_ip: 192.0.2.1
}
}
错误示例:
json
{
error: 无效的API密钥,
status: 401
}