我最近开始在Terraform上工作,有一个关于terraform state mv和terraform import的问题。根据文档,当资源名称更改时,可以使用terraform状态mv,并且必须将更新后的名称添加到状态文件中。terraform import可用于将在Terraform外部创建的资源导入到状态文件中。我的问题是,即使当资源名称更改或代码结构更改(使用模块)时,我们仍然可以使用terraform import来更新状态文件,对吗?谁能告诉我,使用terraform state mv命令的真正好处是什么?
我有一个terraform状态文件(terraform.tfstate)在下面以红色箭头突出显示,它存储在本地磁盘中。
我还有一个远程后端状态文件(存储在Azure Blob Storage中),其中包含我已部署的资源。
我想将现有的本地状态文件附加到Azure中现有的远程后端。
我将本地状态移到了一个目录中,并且执行了terraform state push terraform.tfstate
我得到了下面的错误:terraform cannot import state with lineage over unrelated stage with lineage
然后我做了ter
我在英国Azure地区创建了AKS集群。
目前,我无法再访问我的AKS集群。连接到公共IP失败;所有连接超时。
此外,我也不能运行kubectl命令:
fcarlier@ubuntu:~$ kubectl get nodes Unable to connect to the server: net/http: TLS handshake timeout
该地区的AKS是否存在已知的问题,还是我这边的问题?
我正在使用terraform来配置Azure AKS Kubernetes集群,包括一堆名称空间、部署(例如,cert-manager、外部dns等)、密钥等。当集群被拆除时,这些都会被删除,但其中一些无法通过terraform删除。这通常发生在名称空间中,如下所示(它实际上永远不会完成所有内容的删除):
"Operation cannot be fulfilled on namespaces "cert-manager": The system is ensuring all content is removed from this namespace. Upon
我正在通过DevOps中的CI管道为Azure和Terraform部署一个简单的基础设施。
terraform init、terraform plan和terraform apply运行,第一次运行时,一切正常。
当我添加后续资源时,apply会失败,出现类似的错误如下:
│ Error: A resource with the ID "/subscriptions/578e0f86-0491-4137-9a4e-3a3c0ff28e91/resourceGroups/myResourceGroup/providers/Microsoft.ContainerService/manage
我已经使用Terraform部署了我的infra,并且我注意到我在terraform的状态(terraform.tfstate)文件中有一些有趣的信息,我想提取这些信息。例如
$ terraform state show 'packet_device.worker'
id = 6015bg2b-b8c4-4925-aad2-f0671d5d3b13
billing_cycle = hourly
created = 2015-12-17T00:06:56Z
facility = ewr1
...
我想以某