Terraform init/plan/apply没有internet主机



我正在尝试terraform init,计划和应用,这个任务是在没有互联网访问的主机上执行的,我们将调用主机名是host_no_internet

实现,我已经下载了插件从互联网访问主机使用下面的命令,我们将调用主机名是host_with_internet

#executed in machine host_with_internet
terraform providers mirror plugins 

将所有从host_with_internet下载到host_no_internet的文件复制到目录"/home/tfuser/plugins ">

在主目录

设置下执行
cat /home/tfuser/.terraformrc
provider_installation {
filesystem_mirror {
path = "/home/tfuser/plugins/"
}
}

插件目录结构和文件:

└── registry.terraform.io
└── hashicorp
├── azurerm
│   ├── 2.79.1.json
│   ├── index.json
│   └── terraform-provider-azurerm_2.79.1_linux_amd64.zip
├── local
│   ├── 2.1.0.json
│   ├── index.json
│   └── terraform-provider-local_2.1.0_linux_amd64.zip
└── tls
├── 3.1.0.json
├── index.json
└── terraform-provider-tls_3.1.0_linux_amd64.zip

其他有用的配置

terraform {
required_providers {
azurerm = {
source  = "hashicorp/azurerm"
version = "=2.79.1"
}
}
}
provider "azurerm" {
client_id            = var.SP_CLIENT_ID
client_secret        = var.SP_CLIENT_SECRET
tenant_id            = var.SP_TENANT_ID
subscription_id      = "xxxxxxxxxxx"
features {}
}
terraform {
backend "azurerm" {
resource_group_name  = "xxxxxxxxxxxRG"
storage_account_name = "xxxxxxxxxstore01"
container_name       = "xxxxxxxxcontainer"
key                  = "xxxxxxxdev.tfstate"
}
}

terraform init正在工作,但是terraform plan将挂起,调试日志

仍在尝试连接互联网

2021 - 10 - 07 - t23:57:27.609 - 0700(错误)检查点错误:获得"https://checkpoint-api.hashicorp.com/v1/check/terraform?arch=amd64&操作系统= linux&签名= 58 c44c98-e7a2-c604-0a71-22fe60fa2d22&版本= 1.0.8":读tcp 1.1.1.1:33870→13.224.7.88:443:阅读:连接重置同行

不知道为什么,它仍然在联系互联网,我错过了什么文件下载,我错过了其他设置吗?

我已经禁用了checkpoint_disable,按照下面的注释

但仍然得到日志:

我做了,但仍然挂在Accept-Encoding: gzip: timestamp=2021-10-08T08:06:17.636-0700[DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5:请求https://graph.windows.net/xxxxxxxxxxxxxxxx/servicePrincipals?%24filter=appId+eq+%27xxxxxxxxxxxxxxxxxxxxxx1a4%27&api-version=1.6完成,没有响应:timestamp= 20121-10-08 t08:06:17 .842-07002021 - 10 - 08 - t08:07:17.843 - 0700(调试)provider.terraform-provider-azurerm_v2.79.1_x5: GoAzureHelpers请求:GET/xxxxxxxxxxxxxxx/servicePrincipals?%24filter=appId+eq+%xxxxxxxxxxxxxx%27&api-version=1.6主持人:graph.windows.netUser-Agent: Go/go1.16.7 (amd64-linux) Go -autorest/v14.2.1 Azure-SDK-For-Go/v57.4.0 graphrbac/1.6

更多的日志:

2021-10-07T23:57:27.529-0700 [TRACE] Meta.Backend: built configuration for "azurerm" backend with hash value 1105663864
2021-10-07T23:57:27.529-0700 [TRACE] Preserving existing state lineage "00000000-000000-0000000000"
2021-10-07T23:57:27.529-0700 [TRACE] Preserving existing state lineage "00000000-000000-0000000000"
2021-10-07T23:57:27.530-0700 [TRACE] Meta.Backend: working directory was previously initialized for "azurerm" backend
2021-10-07T23:57:27.530-0700 [TRACE] Meta.Backend: using already-initialized, unchanged "azurerm" backend configuration
2021-10-07T23:57:27.531-0700 [INFO]  Testing if Service Principal / Client Certificate is applicable for Authentication..
2021-10-07T23:57:27.531-0700 [INFO]  Testing if Multi Tenant Service Principal / Client Secret is applicable for Authentication..
2021-10-07T23:57:27.531-0700 [INFO]  Testing if Service Principal / Client Secret is applicable for Authentication..
2021-10-07T23:57:27.531-0700 [INFO]  Using Service Principal / Client Secret for Authentication
2021-10-07T23:57:27.531-0700 [INFO]  Getting OAuth config for endpoint https://login.microsoftonline.com/ with  tenant 00000-00000-00000
2021-10-07T23:57:27.531-0700 [TRACE] Meta.Backend: instantiated backend of type *azure.Backend
2021-10-07T23:57:27.531-0700 [TRACE] providercache.fillMetaCache: scanning directory .terraform/providers
2021-10-07T23:57:27.531-0700 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/azurerm v2.79.1 for linux_amd64 at .terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64
2021-10-07T23:57:27.531-0700 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/local v2.1.0 for linux_amd64 at .terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64
2021-10-07T23:57:27.532-0700 [TRACE] getproviders.SearchLocalDirectory: found registry.terraform.io/hashicorp/tls v3.1.0 for linux_amd64 at .terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64
2021-10-07T23:57:27.532-0700 [TRACE] providercache.fillMetaCache: including .terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64 as a candidate package for registry.terraform.io/hashicorp/azurerm 2.79.1
2021-10-07T23:57:27.532-0700 [TRACE] providercache.fillMetaCache: including .terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64 as a candidate package for registry.terraform.io/hashicorp/local 2.1.0
2021-10-07T23:57:27.532-0700 [TRACE] providercache.fillMetaCache: including .terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64 as a candidate package for registry.terraform.io/hashicorp/tls 3.1.0
2021-10-07T23:57:27.609-0700 [ERROR] Checkpoint error: Get "https://checkpoint-api.hashicorp.com/v1/check/terraform?arch=amd64&os=linux&signature=58c44c98-e7a2-c604-0a71-22fe60fa2d22&version=1.0.8": read tcp 1.1.1.1:33870->13.224.7.88:443: read: connection reset by peer
2021-10-07T23:57:28.008-0700 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform/providers
2021-10-07T23:57:28.044-0700 [TRACE] providercache.fillMetaCache: using cached result from previous scan of .terraform/providers
2021-10-07T23:57:28.081-0700 [DEBUG] checking for provisioner in "."
2021-10-07T23:57:28.081-0700 [DEBUG] checking for provisioner in "/usr/local/bin"
2021-10-07T23:57:28.081-0700 [INFO]  Failed to read plugin lock file .terraform/plugins/linux_amd64/lock.json: open .terraform/plugins/linux_amd64/lock.json: no such file or directory
2021-10-07T23:57:28.081-0700 [TRACE] Meta.Backend: backend *azure.Backend does not support operations, so wrapping it in a local backend
2021-10-07T23:57:28.081-0700 [INFO]  backend/local: starting Plan operation
2021-10-07T23:57:28.081-0700 [TRACE] backend/local: requesting state manager for workspace "default"
2021-10-07T23:57:28.081-0700 [DEBUG] Building the Blob Client from an Access Token (using user credentials)
2021-10-07T23:57:28.082-0700 [DEBUG] backend/remote-state/azure Request:
POST /00000-0000-00000-0000/oauth2/token?api-version=1.0 HTTP/1.1^M
Host: login.microsoftonline.com^M
User-Agent: Go/go1.16.4 (amd64-linux) go-autorest/adal/v1.0.0^M
Content-Length: 172^M
Content-Type: application/x-www-form-urlencoded^M
Accept-Encoding: gzip
removed few  secret logs..continue
HTTP/1.1 200 OK^M
Content-Length: 1450^M
Cache-Control: no-store, no-cache^M
Content-Type: application/json; charset=utf-8^M
Date: Fri, 08 Oct 2021 06:57:27 GMT^M
Expires: -1^M
P3p: CP="DSP CUR OTPi IND OTRi ONL FIN"^M
Pragma: no-cache^M
2021-10-07T23:57:28.613-0700 [TRACE] backend/local: requesting state lock for workspace "default"
2021-10-07T23:57:28.613-0700 [DEBUG] Azure Backend Request:
HEAD /container/containerdev.tfstate HTTP/1.1^M
Host: ccipectedevwus2store01.blob.core.windows.net^M
User-Agent: Terraform/1.0.8^M
X-Ms-Date: Fri, 08 Oct 2021 06:57:28 GMT^M
X-Ms-Version: 2018-11-09
2021-10-07T23:57:28.615-0700 [DEBUG] Azure Backend Response for https://xxxxxxxx.blob.core.windows.net/container/containerdev.tfstate:
HTTP/1.1 200 OK^
2021-10-07T23:57:28.636-0700 [TRACE] backend/local: retrieving local state snapshot for workspace "default"
2021-10-07T23:57:28.636-0700 [TRACE] backend/local: building context for current working directory
2021-10-07T23:57:28.645-0700 [TRACE] terraform.NewContext: starting
2021-10-07T23:57:28.645-0700 [TRACE] terraform.NewContext: loading provider schemas
2021-10-07T23:57:28.645-0700 [TRACE] LoadSchemas: retrieving schema for provider type "registry.terraform.io/hashicorp/azurerm"
2021-10-07T23:57:28.645-0700 [DEBUG] created provider logger: level=trace
2021-10-07T23:57:28.645-0700 [INFO]  provider: configuring client automatic mTLS
2021-10-07T23:57:28.680-0700 [DEBUG] provider: starting plugin: path=.terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64/terraform-provider-azurerm_v2.79.1_x5 args=[.terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64/terraform-provider-azurerm_v2.79.1_x5]
2021-10-07T23:57:28.680-0700 [DEBUG] provider: plugin started: path=.terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64/terraform-provider-azurerm_v2.79.1_x5 pid=8566
2021-10-07T23:57:28.680-0700 [DEBUG] provider: waiting for RPC address: path=.terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64/terraform-provider-azurerm_v2.79.1_x5
2021-10-07T23:57:28.690-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "API Management"..: timestamp=2021-10-07T23:57:28.690-0700
2021-10-07T23:57:28.690-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "API Management"..: timestamp=2021-10-07T23:57:28.690-0700
2021-10-07T23:57:28.690-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "App Configuration"..: timestamp=2021-10-07T23:57:28.690-0700
2021-10-07T23:57:28.690-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "App Configuration"..: timestamp=2021-10-07T23:57:28.690-0700
2021-10-07T23:57:28.690-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "AppService"..: timestamp=2021-10-07T23:57:28.690-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "AppService"..: timestamp=2021-10-07T23:57:28.690-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Batch"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "Batch"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "EventHub"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "EventHub"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Load Balancer"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "Load Balancer"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Microsoft SQL Server / Azure SQL"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "Microsoft SQL Server / Azure SQL"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Policy"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "Policy"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Resources"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "Resources"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Web"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Resources for "Web"..: timestamp=2021-10-07T23:57:28.691-0700
2021-10-07T23:57:28.691-0700 [DEBUG] provider.terraform-provider-azurerm_v2.79.1_x5: Registering Data Sources for "Advisor"..: timestamp=2021-10-07T23:57:28.691-0700

2021-10-07T23:57:28.802-0700 [TRACE] GRPCProvider: GetProviderSchema
2021-10-07T23:57:28.802-0700 [TRACE] provider.stdio: waiting for stdio data
2021-10-07T23:57:28.884-0700 [TRACE] GRPCProvider: Close
2021-10-07T23:57:28.884-0700 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavailable desc = transport is closing"
2021-10-07T23:57:28.885-0700 [DEBUG] provider: plugin process exited: path=.terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64/terraform-provider-azurerm_v2.79.1_x5 pid=8566
2021-10-07T23:57:28.886-0700 [DEBUG] provider: plugin exited
2021-10-07T23:57:28.886-0700 [TRACE] LoadSchemas: retrieving schema for provider type "registry.terraform.io/hashicorp/local"
2021-10-07T23:57:28.886-0700 [DEBUG] created provider logger: level=trace
2021-10-07T23:57:28.886-0700 [INFO]  provider: configuring client automatic mTLS
2021-10-07T23:57:28.920-0700 [DEBUG] provider: starting plugin: path=.terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64/terraform-provider-local_v2.1.0_x5 args=[.terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64/terraform-provider-local_v2.1.0_x5]
2021-10-07T23:57:28.920-0700 [DEBUG] provider: plugin started: path=.terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64/terraform-provider-local_v2.1.0_x5 pid=8575
2021-10-07T23:57:28.920-0700 [DEBUG] provider: waiting for RPC address: path=.terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64/terraform-provider-local_v2.1.0_x5
2021-10-07T23:57:28.926-0700 [INFO]  provider.terraform-provider-local_v2.1.0_x5: configuring server automatic mTLS: timestamp=2021-10-07T23:57:28.925-0700
2021-10-07T23:57:28.961-0700 [DEBUG] provider.terraform-provider-local_v2.1.0_x5: plugin address: address=/tmp/plugin150241093 network=unix timestamp=2021-10-07T23:57:28.961-0700
2021-10-07T23:57:28.961-0700 [DEBUG] provider: using plugin: version=5
2021-10-07T23:57:29.005-0700 [TRACE] GRPCProvider: GetProviderSchema
2021-10-07T23:57:29.005-0700 [TRACE] provider.stdio: waiting for stdio data
2021-10-07T23:57:29.006-0700 [TRACE] GRPCProvider: Close
2021-10-07T23:57:29.007-0700 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavailable desc = transport is closing"
2021-10-07T23:57:29.007-0700 [DEBUG] provider: plugin process exited: path=.terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64/terraform-provider-local_v2.1.0_x5 pid=8575
2021-10-07T23:57:29.007-0700 [DEBUG] provider: plugin exited
2021-10-07T23:57:29.007-0700 [TRACE] LoadSchemas: retrieving schema for provider type "registry.terraform.io/hashicorp/tls"
2021-10-07T23:57:29.007-0700 [DEBUG] created provider logger: level=trace
2021-10-07T23:57:29.007-0700 [INFO]  provider: configuring client automatic mTLS
2021-10-07T23:57:29.045-0700 [DEBUG] provider: starting plugin: path=.terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64/terraform-provider-tls_v3.1.0_x5 args=[.terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64/terraform-provider-tls_v3.1.0_x5]
2021-10-07T23:57:29.045-0700 [DEBUG] provider: plugin started: path=.terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64/terraform-provider-tls_v3.1.0_x5 pid=8584
2021-10-07T23:57:29.045-0700 [DEBUG] provider: waiting for RPC address: path=.terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64/terraform-provider-tls_v3.1.0_x5
2021-10-07T23:57:29.051-0700 [INFO]  provider.terraform-provider-tls_v3.1.0_x5: configuring server automatic mTLS: timestamp=2021-10-07T23:57:29.051-0700
2021-10-07T23:57:29.087-0700 [DEBUG] provider.terraform-provider-tls_v3.1.0_x5: plugin address: network=unix address=/tmp/plugin196553658 timestamp=2021-10-07T23:57:29.087-0700
2021-10-07T23:57:29.087-0700 [DEBUG] provider: using plugin: version=5
finally
2021-10-08T00:05:00.933-0700 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavailable desc = transport is closing"
2021-10-08T00:05:00.933-0700 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavailable desc = transport is closing"
2021-10-08T00:05:00.933-0700 [DEBUG] provider.stdio: received EOF, stopping recv loop: err="rpc error: code = Unavailable desc = transport is closing"
2021-10-08T00:05:00.934-0700 [DEBUG] provider: plugin process exited: path=.terraform/providers/registry.terraform.io/hashicorp/tls/3.1.0/linux_amd64/terraform-provider-tls_v3.1.0_x5 pid=8631
2021-10-08T00:05:00.934-0700 [DEBUG] provider: plugin exited
2021-10-08T00:05:00.935-0700 [DEBUG] provider: plugin process exited: path=.terraform/providers/registry.terraform.io/hashicorp/local/2.1.0/linux_amd64/terraform-provider-local_v2.1.0_x5 pid=8622
2021-10-08T00:05:00.935-0700 [DEBUG] provider: plugin exited
2021-10-08T00:05:00.935-0700 [DEBUG] provider: plugin process exited: path=.terraform/providers/registry.terraform.io/hashicorp/azurerm/2.79.1/linux_amd64/terraform-provider-azurerm_v2.79.1_x5 pid=8640
2021-10-08T00:05:00.935-0700 [DEBUG] provider: plugin exited

刚刚发现,在我的情况下,调用下面的url被阻止了,我启用了活动目录服务端点来子网它开始工作。

https://graph.windows.net

最新更新