在互联网时代的中年,一个古老的 IT 专业人士,广为人知的_sysadmin_,惧怕手动部署和管理基础设施。当达斯维达决定从死星(也就是假期)休假并在没有任何文件的情况下将控制权交给冲锋队时,最黑暗的时期将是最糟糕的。一个错误导致死星被摧毁:服务器配置错误、部署缓慢和反复停机。如果不是那么悲伤的话,这几乎是可笑的。然而,多亏了 DevOps 革命,它一直在发生变化。

除了一个新的多云时代已经开始之外,构建生产就绪环境非常困难、压力大并且需要时间。即使您的公司是尖端的现代解决方案——Docker、Kubernetes、S3 存储桶、微服务、机器学习等——掌握高可扩展性也相当复杂。为了将 DevOps/开发人员团队从黑暗面中拯救出来,基础架构即代码 (IaC)与 DevOps 工作流程一起出现,承诺通过脚本文件以一种简单的方式管理和配置 IT 基础架构。

有许多工具可以执行基础设施自动化功能并使用 IaC。在本案例研究中,我们将使用Terraform管理个 MinIO 存储桶和 IAM 用户。

MinIO 服务器示例

MinIO Simple Storage Service (S3) 是高性能 Kubernetes 友好的对象存储,兼容 Amazon S3 和 100% 开源。 MinIO 可以在本地服务器上运行,甚至更好;您可以使用Docker在本地运行它。这意味着 MinIO 是免费的,您无需注册任何东西。对于那些拥有专用服务器并希望开始将其遗留系统的功能迁移到云环境的公司来说,MinIO 是一把钥匙。

尽管都是专业人士,但在配置身份和访问管理 (IAM) 方面,MinIO 存储桶中存在一个缺点:您必须通过客户端执行用户、策略和组作为黑暗的方式。MinIO mc提供了一种通过 UNIX 命令(如 ls、cat、cp、mirror、diff、find 等)管理 MinIO 的解决方案。这是一种艰难的方式,但它可以完成工作。现在,您可能会问自己:IaC 在 MinIO 存储桶中的好处是什么?我很高兴地宣布为 MinIO](https://github.com/aminueza/terraform-provider-minio)提供新的[Terraform 提供程序,不仅可以管理 S3 存储桶,还可以管理 IAM 用户、组和策略。您不再需要自行配置、编译和分发 MinIO 资源!

[没有为此图像提供替代文本](https://res.cloudinary.com/practicaldev/image/fetch/s--GuOR5XXD--/c_limit%2Cf_auto%2Cfl_progressive%2Cq_auto%2Cw_880/https:/ /media-exp1.licdn.com/dms/image/C4E12AQHkGf5h4m3VTQ/article-inline_image-shrink_1000_1488/0%3Fe%3D1588809600%26v%3Dbeta%26t%3D4vZjgyny0bBGPhWlAzLH2iR1ksZ0fGfIMPXVen1N7a0)

Terraform 提供者 MinIO 是一个用 Golang 编写的开源工具,负责理解资源生命周期中的 Minio API 交互:创建、读取、更新、删除。 MinIO 提供程序为您提供了一种以代码形式监控资源的可见方式,并提供了类似的好处,例如自动化、可见性和协作。

此 MinIO 提供程序的完整源代码可在GitHub上获得。欢迎大家使用和协作。我们在 MinIO 提供商上投入了大量的时间和精力,以覆盖大部分资源并使其易于使用。但是,正在开发的资源很少。 Plus: 如果您不熟悉 HCL 语言,HashiCorp 有个优秀的教程资源您可以查看以获取 Terraform 的基础知识。

愿原力与你同在!

Logo

CI/CD社区为您提供最前沿的新闻资讯和知识内容

更多推荐