Điểm:0

lỗi áp dụng địa hình đã tồn tại trên các tài nguyên chưa được xử lý

lá cờ gy

Tôi đang bắt đầu một dự án địa hình mới, theo hướng dẫn chính thức:

https://learn.hashicorp.com/tutorials/terraform/gke?in=terraform/kubernetes&utm_source=WEBSITE&utm_medium=WEB_IO&utm_offer=ARTICLE_PAGE&utm_content=DOCS&_ga=2.91746777.2118895439.1637849824-960084622.123478498

Tôi đã quản lý để làm cho nó chạy. (Tôi đang chạy nó như một phần của tác vụ xây dựng đám mây của Google được kích hoạt khi cam kết)

Tuy nhiên, nếu tôi thay đổi thứ gì đó trong tài nguyên (ví dụ: tôi đã thay thế "gke_num_nodes" mặc định từ 2 thành 1), khi tôi chạy địa hình áp dụng một lần nữa đây là những gì tôi nhận được:


Kế hoạch: 4 để thêm, 0 để thay đổi, 0 để hủy.

Thay đổi đối với Đầu ra:
  + kubernetes_cluster_host = (được biết sau khi áp dụng)
  + kubernetes_cluster_name = "không gian làm việc-auto-gke"
  + project_id = "không gian làm việc-tự động"
  + khu vực = "châu Âu-tây4"
google_compute_network.vpc: Đang tạo...
â·
â Lỗi: Lỗi khi tạo Mạng: googleapi: Lỗi 409: Tài nguyên 'projects/workspace-auto/global/networks/workspace-auto-vpc' đã tồn tại, đã tồn tại
â 
â với google_compute_network.vpc,
â trên vpc.tf dòng 15, trong tài nguyên "google_compute_network" "vpc":
â 15: tài nguyên "google_compute_network" "vpc" {
â 
âµ

Có cách nào để làm cho nó không cố gắng tạo lại các tài nguyên chưa được xử lý hiện có không?

Của tôi đám mâybuild.json là như sau:

{
  "bước": [
    {
      "name": "hashicorp/terraform",
      "điểm vào": "/bin/sh",
      "đối số": [
        "./cloudbuild/prepare-terraform.sh"
      ]
    }
  ],
  "logsBucket": "gs://my-bucket/logdir",
  "serviceAccount": "projects/my-proj/serviceAccounts/[email protected]"
}

với chuẩn bị-terraform.sh đơn giản là

địa hình init
kế hoạch địa hình
terraform áp dụng -auto-phê duyệt
Điểm:2
lá cờ cn

Nếu bạn đang sử dụng Terraform để tạo tài nguyên, hãy làm KHÔNG PHẢI sửa đổi chúng bên ngoài Terraform.

Nếu bạn thay đổi thứ gì đó theo cách thủ công, Terraform sẽ cố gắng đưa nó trở lại cách mà HCL khai báo và cách mà Terraform đã lưu nó.

cái này gọi là tuyên bố. Bạn đang cố gắng làm cho Terraform trở nên năng động, điều này đánh bại việc sử dụng Terraform ngay từ đầu.

lá cờ gy
Tôi đã sửa đổi bên trong các tệp địa hình chứ không phải bên ngoài. Đơn giản là khi tôi chạy/áp dụng kế hoạch địa hình, nó sẽ cố gắng tạo mọi thứ từ đầu bất kể nó không thay đổi và gây ra lỗi
Điểm:1
lá cờ gy

Trạng thái địa hình cần được lưu trữ ở nơi mà tất cả các bản dựng có thể truy cập được. Ví dụ: trong nhóm đám mây của Google như được thấy ở đây: https://www.terraform.io/docs/lingu/settings/backends/gcs.html

Đăng câu trả lời

Hầu hết mọi người không hiểu rằng việc đặt nhiều câu hỏi sẽ mở ra cơ hội học hỏi và cải thiện mối quan hệ giữa các cá nhân. Ví dụ, trong các nghiên cứu của Alison, mặc dù mọi người có thể nhớ chính xác có bao nhiêu câu hỏi đã được đặt ra trong các cuộc trò chuyện của họ, nhưng họ không trực giác nhận ra mối liên hệ giữa câu hỏi và sự yêu thích. Qua bốn nghiên cứu, trong đó những người tham gia tự tham gia vào các cuộc trò chuyện hoặc đọc bản ghi lại các cuộc trò chuyện của người khác, mọi người có xu hướng không nhận ra rằng việc đặt câu hỏi sẽ ảnh hưởng—hoặc đã ảnh hưởng—mức độ thân thiện giữa những người đối thoại.