在 Walrus 上轻松集成 OpenTofu

OpenTofu 是什么?

OpenTofu 是一个开源的基础设施即代码(IaC)框架,被提出作为 Terraform 的替代方案,并由 Linux 基金会管理。OpenTofu 的问世为应对 HashiCorp 将 Terraform 的许可证从 Mozilla Public License v2.0(MPLv2)更改为 Business Source License v1.1 而开发的。OpenTofu 的目标是提供可靠且公正的基础设施即代码管理选项,确保其在稳定的许可证下保持真正的开源。

 

在 Linux 基金会的指导下,OpenTofu 可以无缝地替代 Terraform v1.6.x,同时确保与 Terraform v1.5.x 及其之前的版本完全向后兼容。

 

自 OpenTofu 创建以来,该项目引起了极大的关注。截至本文撰写时,OpenTofu 项目在 GitHub 上拥有超过16,800个星标,而 OpenTofu Manifesto 项目则有超过36,200个星标。

 

在 Walrus 中集成 OpenTofu

默认情况下,Walrus 使用 Terraform 作为其部署引擎。由于 OpenTofu 是 Terraform 的直接代替,您可以在 Walrus 系统中无需任何代码更改地轻松设置 OpenTofu。

 

按照快速入门指南(https://seal-io.github.io/docs/zh/quickstart) 部署 Walrus 服务器,并在 Kubernetes 集群中设置容器服务。

 

首先,检查服务的部署日志。

 

image.png

 

可以看到这里使用 Terraform 执行部署。

 

image.png

 

接下来,通过以下步骤切换到 OpenTofu:

 

  • 在左侧导航菜单中点击 系统设置
  • 点击 部署管理
  • 点击 基础设置 旁边的 编辑 按钮。
  • 将运行 镜像 更改为 sealio/opentoufu-deployer:v1.6.0-beta5-1
  • 点击 保存

 

image.png

 

接下来,Walrus 将使用 OpenTofu 作为部署引擎。让我们通过以下步骤创建另一个服务:

 

  • 在左侧导航菜单中点击 应用管理
  • 点击进入 dev 环境详细页面。
  • 点击 新建 并选择 服务
  • 输入名称为 myapp-tofu
  • 选择容器服务模板。
  • Image 字段中填入 nginx
  • 点击保存并部署。

 

部署完成后,让我们再次查看部署日志。

 

image.png

 

日志中显示了 OpenTofu 的版本和调用信息,说明这一次 Walrus 使用了 OpenTofu 执行部署。细心的读者会发现在 CLI 参数中还有 terraform 的字样,这是因为在该镜像中,我们给 tofu 设置了 terraform 的别名。

 

未来展望

通过上述教程,我们可以体验到 Walrus 的灵活性,此外它还可以集成到任意 CI/CD 流水线中,帮助您简化应用部署和应用交付。

 

在 HashiCorp 宣布修改 Terraform 的开源许可证之后,OpenTofu 一直被业界视为 Terraform 的最佳开源替代项目。OpenTofu 在其官方博客(https://opentofu.org/blog/opentofu-release-candidate-is-out) 中宣布将于本月发布首个稳定版本。

 

对于用户来说,从 Terraform 切换到 OpenTofu 自然不是为了一时新鲜,而是期望借助一个稳定的开源项目实现 IaC。我们会持续关注 OpenTofu 的项目进展,期待借助 OpenTofu 所带来的创新方案为用户解决当前面临的问题与挑战。

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.hqwc.cn/news/323151.html

如若内容造成侵权/违法违规/事实不符,请联系编程知识网进行投诉反馈email:809451989@qq.com,一经查实,立即删除!

相关文章

ubuntu22.04配置双网卡绑定提升带宽

这里写自定义目录标题 Bonding简介配置验证参考链接 Bonding简介 bonding(绑定)是一种linux系统下的网卡绑定技术,可以把服务器上n个物理网卡在系统内部抽象(绑定)成一个逻辑上的网卡,能够提升网络吞吐量、实现网络冗余、负载均衡等功能,有很…

性能优化-OpenMP基础教程(五)-全面讲解OpenMP基本编程方法

本文主要介绍OpenMP编程的编程要素和实战,包括并行域管理详细实战、任务分担详细实战。 🎬个人简介:一个全栈工程师的升级之路! 📋个人专栏:高性能(HPC)开发基础教程 🎀C…

什么是reCAPTCHA?在哪里可以找到reCAPTCHA示例演示?

在当今的数字领域中,保护网站免受垃圾邮件、恶意活动和自动化机器人的侵害至关重要。由谷歌开发的reCAPTCHA已成为一种广泛实施的安全措施,用于区分人类用户和机器人。本文全面介绍了reCAPTCHA、其目的,并包含了一个示例reCAPTCHA演示&#x…

echarts中dataZoom拖拽不起效果

vue3项目中&#xff0c;echarts使用dataZoom进行区域拖动&#xff0c;拖动下图红色框&#xff0c;数据展示无变化拖动功能失效。 原因 vue3中使用了ref或者reactive等初始化图表的变量 //定义 let myChart ref<any>(null); //使用 myChart.value echarts.init(chartR…

微同城本地小程序源码系统:顺风车+二手市场+跑腿功能+信息发布+广告功能 带完整的搭建教程

随着移动互联网的普及&#xff0c;小程序已成为各行业进行线上业务拓展的重要工具。微同城作为一款集顺风车、二手市场、跑腿功能、信息发布和广告功能于一体的本地小程序源码系统&#xff0c;旨在满足现代城市居民的多元化需求&#xff0c;提供一个方便、快捷、实用的服务平台…

算法31:针对算法30货币问题进行拓展 + 时间复杂度 + 空间复杂度优化--------从左往右尝试模型

在算法30中&#xff0c;我们说过从左往右尝试模型&#xff0c;口诀就是针对固定集合&#xff0c;值不同&#xff0c;就是讨论要和不要的累加和。 那么对于非固定集合&#xff0c;我们应该怎么做呢&#xff1f; 针对非固定集合&#xff0c;面值固定&#xff0c;张数无限。口诀…

【CSS】设置0.5px的边框宽度

直接写border: 0.5px solid red; 这样在移动端可能会出现问题&#xff0c;下面说下解决办法&#xff1a; 直接上代码&#xff1a; <!DOCTYPE html> <html lang"en"><head><meta charset"UTF-8"><meta http-equiv"X-UA-C…

Linux_apachectl 网页优化

1.1 网页压缩与缓存 在使用 Apache 作为 Web 服务器的过程中&#xff0c;只有对 Apache 服务器进行适当的优化配 置&#xff0c;才能让 Apache 发挥出更好的性能。反过来说&#xff0c;如果 Apache 的配置非常糟糕&#xff0c; Apache 可能无法正常为我们服务。因此&#xff0c…

web网站,可当期末作业,随机一言,天气,时钟,音乐等综合网站

文章目录 主页面时间胶囊底部条文心一言音乐播放器天气时钟禁用右键其他每次刷新页面会随机更换壁纸新春版 主页面 时间胶囊 底部条 文心一言 点击可随机变化文心一言 音乐播放器 天气时钟 禁用右键 其他 每次刷新页面会随机更换壁纸 新春版

科技助力教育:数字化如何改变家校社协同育人?

近年来,随着社会的快速发展,教育的责任已不再仅局限于学校。家庭、学校和社会协同育人理念,正成为促进教育高质量发展的关键要素。 2023年初,教育部等十三部门联合印发《关于健全学校家庭社会协同育人机制的意见》,提出到“十四五”时期末,形成更加完善的由“学校积极主导、家…

vscode安装Prettier插件,对vue3项目进行格式化

之前vscode因为安装了Vue Language Features (Volar)插件&#xff0c;导致Prettier格式化失效&#xff0c;今天有空&#xff0c;又重新设置了一下 1. 插件要先安装上 2. 打开settings.json {"editor.defaultFormatter": "esbenp.prettier-vscode","…

基于视觉的无人机自主降落系统设计

文章目录 摘 要第一章 绪论1.1 课题开发背景1.1.1 课题的意义1.1.2 国内外发展状况 1.2 课题研究内容1.3 课题研究步骤1.4 本章小节 第二章 MatlabGUI的搭建2.1 下载安装Matlab2.2 在Matlab中搭建GUI平台2.2.1 GUI介绍2.2.2 GUI的组成2.2.3 GUI搭建步骤2.2.4 GUI的使用 2.3 mat…