IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers

这篇具有很好参考价值的文章主要介绍了IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

目录

一、实验

1.环境

2.初始化一个项目

3.Terraform使用本地编译(In-house)的Providers

二、问题

1.Terraform Provider有哪些全网标识符

2.本地安装Terraform Provider有哪些方法


一、实验

1.环境

(1)主机

表1-1 主机

主机 系统 软件 备注
pipepoint Linux Terraform 1.6.6

2.初始化一个kind项目

(1)查看版本

terraform -v

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

(2)初始化

terraform init

会报错

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

3.Terraform使用本地编译(In-house)的Providers

(1)编写配置文件

vim .terraformrc

provider_installation {
  filesystem_mirror {
    path    = "/usr/share/terraform/providers"
    include = ["registry.terraform.io/*/*"]
  }
}

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

(2)Terraform模板(kind)

Terraform Registry

USE PROVIDER

terraform {
  required_providers {
    kind = {
      source = "tehcyx/kind"
      version = "0.2.1"
    }
  }
}

provider "kind" {
  # Configuration options
}

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

(3) 下载软件包

https://github.com/tehcyx/terraform-provider-kind/releases

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

(4)tree递归查看目录 (将软件包按递归目录放置)

tree -s /usr/share/terraform/

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生
 

(5)格式化代码

terraform fmt

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

(6) 初始化

terraform init

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

(6) 验证

terraform validate

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

二、问题

1.Terraform Provider有哪些全网标识符

(1)概念

Terraform的Provider在全网的的标识符由三部分组成,分别为hostname,namespace和type组成,即<hostname>/<namespace>/<type>。hostname是指分发、下载Provider的域名,默认为registry.terraform.io。namespace是指提供、开发Provider的组织的命名空间,默认为hashicorp。type是指Provider的具体类型。

(2)Terraform模板(alicloud)

Terraform Registry

IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers,IaC基础设施即代码,terraform,云原生

模板使用terraform init命令会默认去registry.terraform.io下载aliyun开发的alicloudProvider的1.214.0版本。

terraform {
  required_providers {
    alicloud = {
      source = "aliyun/alicloud"
      version = "1.214.1"
    }
  }

2.本地安装Terraform Provider有哪些方法

(1)原理

如果使用本地安装插件有两种方法。首先两种方法都需要将下载的Provider或者本地编译完成的Provider放置在以下文件目录层级。
XX(e.g. /usr/share/terraform/providers/)
└── <hostname>(e.g. registry.terraform.io)
    └── <namespace>(e.g. aliyun)
        └── <type>(e.g. alicloud)
            └── <version>(e.g. 1.214.1)
                └── <your OS>(e.g. linux_amd64)
                    └── <binary file>(e.g. terraform-provider-alicloud)

(2)方法一 (使用terraform init的自带参数)

第一种方法,使用terraform initplugin-dir参数:

terraform init -plugin-dir=/usr/share/terraform/providers

(3)方法二 (编写配置文件)

第二种方法,编写.terraformrc配置文件,该文件需要放在$HOME/目录下:文章来源地址https://www.toymoban.com/news/detail-802368.html

#其中include字段是指符合该通配符全网标识符的Provider,需要去/usr/share/terraform/providers查找本地Provider。

provider_installation {
  filesystem_mirror {
    path    = "/usr/share/terraform/providers"
    include = ["registry.terraform.io/*/*"]
  }
}

到了这里,关于IaC基础设施即代码:Terraform使用本地编译(In-house)的Providers的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • 网络基础设施 & 拥塞控制

    我经常说,传统的 TCP 优化已经到顶,不会有大意义了,这有两方面意思。 一方面,内在的,TCP 的 ACK 时钟带回的信息就那么多,用足了又能怎样。一个学习最差的差生能控制的分数是是 0~100 分的区间,宽度足足 100 分,他控制不了自己能考多少分,而一个学习最好的学生

    2024年02月02日
    浏览(33)
  • 公开密钥基础设施PKI

    公开密钥基础设施(PKI,Public Key Infrastructure),是以不对称密钥加密技术为基础,以数据机密性、完整性、身份认证和行为不可抵赖性为安全目的,来实施和提供安全服务的、具有普适性的安全基础设施。具体内容包括: 数字证书 不对称密钥密码技术 认证中心 证书和密钥

    2023年04月08日
    浏览(74)
  • 大数据基础设施搭建 - Redis

    redis是用c写的,因此安装redis需要c语言的编译环境,即需要安装gcc 内容: key:string value:string、list、set、zset、hash 有序可重复 无序不重复 有序不重复,就是在set的基础上,给每个元素绑定了一个分数,按照分数由低到高排序 RDB为快照备份,会在备份时将内存中的所有数据

    2024年01月23日
    浏览(32)
  • 大数据基础设施搭建 - Spark

    内容: 到YARN WEB页面查看任务提交情况 内容: 4.3.1 启动SparkSQL客户端(Yarn方式) 4.3.2 启动Hive客户端 优势在哪里??

    2024年04月09日
    浏览(41)
  • 云计算基础设施总体架构介绍

    云计算基础设施是指由硬件资源和资源抽象控制组件构成的支撑云计算的基础设施,包括为云服务客户提供计算资源、存储资源、网络资源、安全资源所需的软硬件设备及云管理平台。云计算基础设施总体架构如图1 所示。 图1 云计算基础设施总体架构  资源池包括计算资源

    2024年02月11日
    浏览(29)
  • 大数据基础设施搭建 - Hbase

    首先保证Zookeeper和Hadoop正常运行 新增内容: 使环境变量生效: 不使用hbase内置的zookeeper,使用独立zookeeper 内容: 表明zookeeper集群,hbase web访问路径 内容: regionserver所在机器 内容: 8.3.1 创建表 在first_namespace命名空间中创建表格student,两个列族。info列族数据维护的版本数

    2024年01月24日
    浏览(45)
  • 云计算概论 -- 云基础设施机制

    逻辑网络边界 虚拟服务器 云存储设备 云使用监控 资源复制 一、逻辑网络边界 (一)逻辑网络边界 逻辑网络边界是将一个网络环境与通信网络的其他部分隔离开来,形成一个虚拟网络边界,它包含并隔离了一组相关的基于云的IT资源,这些资源在物理上可能是分布式的。 逻辑

    2023年04月08日
    浏览(43)
  • 关键信息基础设施安全相关材料汇总

    关键信息基础设施作为国家重要的战略资源,关系国家安全、国计民生和公共利益,具有基础性、支撑性、全局性作用,保护关键信息基础设施安全是国家网络安全工作的重中之重。 本文主要梳理关键信息基础设施安全保护领域相关的法律法规及政策汇编,以供大家参考。

    2024年01月22日
    浏览(30)
  • Terraform 系列-什么是 IaC?

    👉 Terraform 系列文章 聊到 Terraform, 必然绕不开 IaC 这个概念?那么,什么是 IaC? 🤔 基础架构即代码 (Infrastructure as Code, IaC) 是指通过 代码 而不是手动流程/控制台点击来管理和配置基础架构。 这里有 2 个: Infrastructure Code Infrastructure 是被管理对象,在这里,主要是指公

    2023年04月11日
    浏览(22)
  • Web3社交基础设施SBT

    今年年初,V神发表了一篇文章并提出soulbound token(SBT)概念,5月份,又联合撰写了一篇《去中心化社会:找寻 Web3 的灵魂》,让「去中心化社会」和「SBT」概念在大熊市又爆火一波。 SBT到底是什么,有什么价值?在概念到应用的路上都有哪些阻碍呢? 本文将从以下几个方面展

    2024年02月04日
    浏览(37)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包