当前位置: 首页 > news >正文

养成记录好习惯(4)——Terraform离线部署(linux-amd64)

Linux 系统离线安装配置 Terraform(对接 Proxmox/PVE)

前言

本文主要介绍在离线 Linux 环境下安装配置 Terraform,并部署 Proxmox Provider 插件,实现通过 Terraform 集中管理 PVE 虚拟化基础设施,解决离线环境下 Terraform 部署和插件适配的核心问题。

一、前置准备(联网设备操作)

1. 下载 Terraform 离线包

下载适配 Linux-amd64 架构的新版本 Terraform 二进制包:terraform离线包

2. 下载 Proxmox Provider 插件

下载与 Terraform 兼容的 bpg/proxmox 插件版本:bpg/proxmox离线包

示例
terraform v1.14.5

bpg/proxmox v0.97.1

二、离线环境部署

1. 传输安装包至离线环境

将下载好的terraform二进制文件和terraform-provider-proxmox插件包,通过 SCP/U 盘等方式拷贝到离线 Linux 服务器。

2. 安装 Terraform 二进制文件

# 切换至root用户(避免权限问题) sudo su # 将terraform二进制文件移动到系统可执行目录 mv terraform /usr/local/bin/ # 赋予可执行权限 chmod +x /usr/local/bin/terraform # 验证安装(输出版本即成功) terraform -v # 若离线环境PATH未包含/usr/local/bin,执行以下配置(永久生效) echo 'export PATH="$HOME/bin:$PATH"' >> ~/.bashrc source ~/.bashrc

3.开启terraform自动补全

echo "complete -C /usr/local/bin/terraform terraform" >> ~/.bashrc source ~/.bashrc

4. 创建 Provider 插件目录(严格匹配路径)

Terraform 插件目录需与source地址、版本、架构完全对应,否则会加载失败:

# 创建层级目录(版本和架构需与下载的插件一致) mkdir -p ~/.terraform.d/plugins/registry.terraform.io/bpg/proxmox/0.97.1/linux_amd64/

5. 放置 Proxmox Provider 插件

将下载的插件文件(如terraform-provider-proxmox_v0.97.1)移动到上述目录:

# 示例命令(替换为实际文件名) mv terraform-provider-proxmox_v0.97.1 ~/.terraform.d/plugins/registry.terraform.io/bpg/proxmox/0.97.1/linux_amd64/

6. 创建 Terraform 项目及配置文件

步骤 1:创建项目目录
# 自定义项目目录(示例路径) mkdir -p ~/terraform-project cd ~/terraform-project
步骤 2:编写 main.tf 配置文件

新建并编辑main.tf,配置 Terraform 版本、Provider 信息及 PVE 连接参数:

terraform { required_version = ">= 1.8" required_providers { proxmox = { source = "bpg/proxmox" version = "0.97.1" } } } # Proxmox Provider配置 provider "proxmox" { endpoint = "https://你的PVE地址:8006" insecure = true # PVE默认自签名证书,需开启该参数 # 方式1:API Token认证(推荐) api_token = "你的API_TOKEN" # 方式2:用户名密码认证(备用) # username = "root@pam" # password = "你的PVE登录密码" }

7. 初始化 Terraform 项目

回到项目目录执行初始化,验证插件加载:

# 初始化项目 terraform init # 验证结果:出现"Successfully initialized Terraform!"即初始化成功 # 可选:查看已加载的Provider信息 terraform providers
http://www.jsqmd.com/news/499644/

相关文章:

  • C#+YOLO 边缘计算实战:从桌面端到 RK3588/Jetson 全部署指南
  • 2026 本科毕业论文 AI 工具全盘点:9 款神器,高效搞定初稿、绘图与合规检测
  • Rithmic 14天/30天试用账号注册工具|支持ATAS、Bookmap等平台实时行情接入
  • 【Kubernetes知识点问答题】资源配额 / 访问控制
  • 2026终极版|Spring Boot 3.5.11 + JDK21 整合 RabbitMQ / RocketMQ / Kafka(对比 + 选型 + 可运行示例)
  • 复制一个链接,1分钟提取视频全文——视频转文字我用了半年
  • Ollama本地模型接入OpenClaw教程
  • AI 算力大考:缺电只是表象,制造才是真正的天花板
  • JAVA后端——依据离散点/格点生成GEOJSON以渲染色斑图
  • 01 spring ai alibaba(SAA1.1.2)基础聊天实现-ChatModel
  • 计算机毕设 java 米果智能食堂管理系统分析与设计 Java+SpringBoot 智能食堂点餐管理平台 Web 版校园食堂线上订餐系统
  • 非支配排序多目标黏菌优化算法(NSSMA) —— Matlab实现 测试函数包括ZDT、DTL...
  • 高通实习面经
  • AI职业末日图爆火,6000万白领岗危了
  • 深入 Java 垃圾回收调优:从底层原理到落地实战,攻克性能瓶颈
  • 软件综合项目-mqtt
  • ChatGPT和Gemini怎么导出成长图
  • 速看!!安全员ABC证靠谱的查询方式有哪几种?分别是怎么查询呢?
  • 关于密码破解的方式
  • Qt导航栏组件A05:多文档编辑器的「打开文件列表」侧栏
  • 计算机毕设 java 门诊管理系统 Java+SpringBoot 门诊医疗管理平台 Web 版医院门诊诊疗管理系统
  • 基于能量分配的光伏混合储能系统仿真模型 ①光伏:采用mppt控制实现最大功率跟踪 ②蓄电池与超...
  • Vue3 按钮切换示例(启动 / 关闭互斥显示)
  • 动态规划_最长递增子序列_C++
  • 计算机毕设 java 课程教学平台设计与实现 Java+SpringBoot 课程教学管理平台 Web 版在线课程学习管理系统
  • STL:string
  • AI智能水库图像识别数据集 水面漂浮物识别 水面分割识别 河道护栏分割数据集 YOLO格式数据集第10573期
  • 泰思特电子分享_EMC测试电流探头选型差异性及影响因素探讨
  • SPI子系统源码剖析--(2)Spi_Master驱动框架
  • TSMC 28nm工艺库,可仿真-文档齐全