Tài liệu này dành cho các kiến ​​trúc sư và những người làm việc trong các hoạt động và các đội hành chính. Tài liệu mô tả một mẫu mẫu mà bạn có thể sử dụng cho các triển khai của riêng bạn trong Google Cloud. Trong mẫu này, bộ cân bằng tải hướng lưu lượng truy cập đến Máy tính trường hợp trong nhóm phiên bản được quản lý phục vụ nội dung. Trong trường hợp mất điện, bạn cập nhật Cân bằng tải HTTP(S) bên ngoài cấu hình và chuyển sang một trang web tĩnh trong Lưu trữ đám mây. Để hoàn thành hướng dẫn này, bạn cần có một tên miền đã đăng ký mà bạn kiểm soát và muốn sử dụng với tài liệu này. Trong triển khai sản xuất, trang web của bạn có thể bao gồm nhiều tệp hơn và mã ứng dụng bổ sung trên các máy ảo nhóm phiên bản được quản lý của bạn (VM) hơn được hiển thị trong tài liệu này. Lưu trữ đám mây sau đó lưu trữ nhiều hơn phiên bản tĩnh giới hạn cung cấp chức năng tối thiểu. Trong một chuyển đổi dự phòng ấm áp trường hợp, người dùng nhìn thấy trang web giới hạn này cho đến khi các nhóm phiên bản được quản lý phục hồi và có thể phục vụ lưu lượng truy cập cho trải nghiệm trang web đầy đủ. Trong hướng dẫn này, bạn triển khai tài nguyên để tạo môi trường như minh họa trong hình ảnh sau: Khi cần chuyển dự phòng, bạn cập nhật cấu hình cân bằng tải vào hướng dẫn lưu lượng truy cập vào Cloud Storage, như thể hiện trong hình ảnh sau: Mẫu chuyển đổi dự phòng ấm áp này cân bằng chi phí chạy một ứng dụng được quản lý khác nhóm phiên bản ở một khu vực khác mà bạn chỉ sử dụng khi các khu vực chính Thất bại. Chi phí của một trang tĩnh sử dụng Cloud Storage thấp hơn so với chạy một nhóm phiên bản được quản lý khác, nhưng có độ trễ ngắn khi bạn cập nhật tải cấu hình cân bằng giữa các tùy chọn lưu trữ. Trang web giới hạn trải nghiệm trong Cloud Storage tốt hơn một trang web không khả dụng và kém trải nghiệm khách hàng. Đối với một phương pháp thay thế sử dụng Cloud DNS thay vì bên ngoài Cân bằng tải HTTP(S) để kiểm soát chuyển đổi dự phòng, xem Triển khai một máy chủ web có thể khôi phục ấm bằng cách sử dụng Cloud DNS với Compute Engine và Cloud Storage. Mẫu này hữu ích nếu bạn có hoặc muốn sử dụng Cloud DNS. Để chạy các ứng dụng đáng tin cậy trong Google Cloud, chúng tôi khuyên bạn nên thiết kế cơ sở hạ tầng ứng dụng của bạn để xử lý sự cố ngừng hoạt động. Tùy thuộc vào ứng dụng của bạn và nhu cầu kinh doanh, bạn có thể cần chuyển đổi dự phòng nguội, chuyển đổi dự phòng ấm hoặc nóng mô hình chuyển đổi dự phòng. Để biết thêm thông tin về cách xác định cách tiếp cận tốt nhất cho các ứng dụng của riêng bạn, hãy xem Hướng dẫn lập kế hoạch khắc phục thảm họa. Tài liệu này sử dụng một cơ sở máy chủ web apache, nhưng cách tiếp cận tương tự đối với việc triển khai cơ sở hạ tầng áp dụng cho các môi trường ứng dụng bạn cần tạo. ## Mục tiêu - - Tạo các nhóm phiên bản được quản lý theo khu vực với hình ảnh VM tùy chỉnh. - Tạo nhóm Lưu trữ đám mây. - Tạo và định cấu hình Cân bằng tải HTTP(S) bên ngoài. - Kiểm tra chuyển đổi dự phòng máy chủ web ấm với bộ cân bằng tải được cập nhật cấu hình. - Kiểm tra khả năng khôi phục và dự phòng với cấu hình cân bằng tải được cập nhật. ## Chi phí Hướng dẫn này sử dụng các thành phần có thể thanh toán sau của Google Cloud: - - Máy tính - Mạng - Lưu trữ đám mây Để tạo ước tính chi phí dựa trên mức sử dụng dự kiến ​​của bạn, sử dụng máy tính giá. ## Trước khi bắt đầu - - Đăng nhập vào tài khoản Google Cloud của bạn. Nếu bạn là người mới Đám mây Google, tạo một tài khoản để đánh giá các sản phẩm của chúng tôi hoạt động như thế nào trong kịch bản trong thế giới thực. Khách hàng mới cũng nhận được 300 đô la tín dụng miễn phí để chạy, thử nghiệm và triển khai khối lượng công việc. - Trong bảng điều khiển Google Cloud, trên trang bộ chọn dự án, chọn hoặc tạo dự án Google Cloud. - Đảm bảo rằng thanh toán được bật cho dự án Đám mây của bạn. học cách kiểm tra xem thanh toán có được bật trên một dự án hay không. - Kích hoạt API Máy tính. - Cài đặt và khởi tạo Google Cloud CLI. - Trong bảng điều khiển Google Cloud, trên trang bộ chọn dự án, chọn hoặc tạo dự án Google Cloud. - Đảm bảo rằng thanh toán được bật cho dự án Đám mây của bạn. học cách kiểm tra xem thanh toán có được bật trên một dự án hay không. - Kích hoạt API Máy tính. - Cài đặt và khởi tạo Google Cloud CLI. Bạn có thể chạy Google Cloud CLI trong bảng điều khiển mà không cần cài đặt Google Đám mây CLI. Để chạy gcloud CLI trong bảng điều khiển, hãy sử dụng Cloud Shell ## Chuẩn bị môi trường Trong phần này, bạn xác định một số biến cho tên tài nguyên của mình và địa điểm. Các biến này được sử dụng bởi các lệnh Google Cloud CLI khi bạn triển khai các nguồn lực. Trong toàn bộ tài liệu này, trừ khi có ghi chú khác, bạn hãy nhập tất cả các lệnh vào vỏ mây hoặc môi trường phát triển địa phương của bạn. - Thay thế với ID dự án của riêng bạn. Nếu muốn, cung cấp hậu tố tên riêng của bạn cho các tài nguyên để giúp tìm kiếm và xác định họ, chẳng hạn như DỰ ÁN_ID ứng dụng Chỉ định hai vùng, chẳng hạn như và mỹ-tây1 , và một khu vực trong một trong những khu vực đó, chẳng hạn như chúng tôi-tây2 . Vùng này xác định nơi VM cơ sở ban đầu được tạo được sử dụng để tạo một hình ảnh cho nhóm phiên bản được quản lý chúng tôi-tây1-a Cuối cùng, đặt tên miền được sử dụng cho trang web tĩnh của bạn, chẳng hạn như ví dụ.com DỰ ÁN_ID= DỰ ÁN_ID NAME_SUFFIX= ứng dụng KHU VỰC1= chúng tôi-tây1 KHU VỰC2= chúng tôi-tây2 KHU = chúng tôi-tây1-a MIỀN = example.com ## Tạo VPC và mạng con Để cung cấp quyền truy cập mạng cho máy ảo, bạn tạo Virtual Private Cloud (VPC) và mạng con. Vì bạn cần các nhóm phiên bản được quản lý ở hai khu vực, nên bạn tạo một nhóm mạng con trong mỗi vùng. Để biết thêm thông tin về những lợi thế của tùy chỉnh chế độ mạng con để quản lý dải địa chỉ IP được sử dụng trong môi trường của bạn, hãy xem Sử dụng mạng VPC chế độ tùy chỉnh. - Tạo VPC với chế độ mạng con tùy chỉnh: mạng điện toán gcloud tạo mạng-$NAME_SUFFIX --subnet-mode=custom Bây giờ hãy tạo hai mạng con trong VPC mới, mỗi mạng con khu vực. Xác định phạm vi địa chỉ của riêng bạn, chẳng hạn như và 10.1.0.0/20 , cái đó phù hợp với phạm vi mạng của bạn: 10.2.0.0/20 mạng con mạng điện toán gcloud tạo n mạng con-$NAME_SUFFIX-$REGION1 n --network=network-$NAME_SUFFIX n --range= 10.1.0.0/20n --region=$REGION1 mạng con mạng điện toán gcloud tạo n mạng con-$NAME_SUFFIX-$REGION2 n --network=network-$NAME_SUFFIX n --range= 10.2.0.0/20n --region=$REGION2 ## Tạo quy tắc tường lửa Để cho lưu lượng truy cập mạng chính xác trong VPC, hãy sử dụng quy tắc tường lửa. - Tạo quy tắc tường lửa để cho phép lưu lượng truy cập web và kiểm tra tình trạng tải nhóm đối tượng cân bằng và quản lý: quy tắc tường lửa điện toán gcloud tạo allow-http-$NAME_SUFFIX n --network=network-$NAME_SUFFIX n --direction=INGRESS n --priority=1000 n --action=ALLOW n --rules=tcp:80 n -- source-ranges=0.0.0.0/0 n --target-tags=http-server quy tắc tường lửa điện toán gcloud tạo allow-health-check-$NAME_SUFFIX n --network=network-$NAME_SUFFIX n --action=allow n --direction=ingress n --source-ranges=130.211.0.0/22,35.191. 0.0/16 n --target-tags=allow-health-check n --rules=tcp:80 Quy tắc HTTP cho phép lưu lượng truy cập đến bất kỳ VM nào mà http-servertag được áp dụng, và từ bất kỳ nguồn nào bằng cách sử dụng 0.0.0.0/0phạm vi. Cho quy định kiểm tra sức khỏe, phạm vi mặc định cho Google Cloud được đặt để cho phép nền tảng hoạt động chính xác kiểm tra sức khỏe của tài nguyên. Để cho phép lưu lượng SSH cho cấu hình ban đầu của hình ảnh VM cơ sở, phạm vi quy tắc tường lửa cho môi trường của bạn bằng cách sử dụng --tham số phạm vi nguồn. Bạn có thể cần làm việc với nhóm mạng của mình để xác định phạm vi nguồn nào tổ chức của bạn sử dụng Thay thế với phạm vi địa chỉ IP của riêng bạn: IP_ADDRESS_SCOPE quy tắc tường lửa điện toán gcloud tạo allow-ssh-$NAME_SUFFIX n --network=network-$NAME_SUFFIX n --direction=INGRESS n --priority=1000 n --action=ALLOW n --rules=tcp:22 n -- phạm vi nguồn = IP_ADDRESS_SCOPE Sau khi bạn tạo quy tắc tường lửa, hãy xác minh rằng ba quy tắc đã được thêm: danh sách quy tắc tường lửa điện toán gcloud n --project=$PROJECT_ID n --filter="NETWORK=network-$NAME_SUFFIX"Đầu ra ví dụ sau đây cho thấy ba quy tắc đã được thực hiện đúng tạo: TÊN MẠNG HƯỚNG ƯU TIÊN CHO PHÉP cho phép kiểm tra sức khỏe ứng dụng mạng ứng dụng INGRESS 1000 tcp:80 ứng dụng mạng cho phép ứng dụng http INGRESS 1000 tcp:80 allow-ssh-app network-app INGRESS 1000 tcp:22 ## Tạo và cấu hình ảnh máy ảo cơ sở Để tạo các máy ảo giống hệt nhau mà bạn triển khai mà không cần cấu hình bổ sung, bạn sử dụng một hình ảnh VM tùy chỉnh. Hình ảnh này ghi lại cấu hình HĐH và Apache, và được sử dụng để tạo từng VM trong nhóm phiên bản được quản lý trong các bước tiếp theo. Trên VM, bạn tạo một cơ sở tệp index.html trên đĩa liên tục và gắn nó vào /var/www/example.com. Một tệp cấu hình Apache tại /etc/apache2/sites-available/example.com.conf phục vụ nội dung web từ gắn vị trí đĩa liên tục Sơ đồ sau đây hiển thị trang HTML cơ bản do Apache cung cấp được lưu trữ trên đĩa liên tục: Bạn xây dựng môi trường này theo các bước sau. - Tạo một VM cơ sở với một đĩa liên tục được đính kèm: phiên bản điện toán gcloud tạo vm-base-$NAME_SUFFIX n --zone=$ZONE n --machine-type=n1-standard-1 n --subnet=subnet-$NAME_SUFFIX-$REGION1 n --tags=http-server n --image=debian-10-buster-v20210420 n --image-project=debian-cloud n --boot-disk-size=10GB n --boot-disk-type=pd-balanced n --boot-disk- device-name=vm-base-$NAME_SUFFIX n --create-disk=type=pd-ssd,name=disk-base-$NAME_SUFFIX,size=10GB,device-name=disk-base-$NAME_SUFFIX Bạn sử dụng các tham số được xác định ở phần đầu của tài liệu này để đặt tên cho VM và kết nối với mạng con chính xác. Tên cũng được gán từ các tham số cho đĩa khởi động và đĩa dữ liệu. Để cài đặt và định cấu hình trang web đơn giản, hãy kết nối với VM cơ sở bằng cách sử dụng SSH: tính toán gcloud ssh vm-base-$NAME_SUFFIX --zone=$ZONE Trong phiên SSH của bạn tới VM, hãy tạo tập lệnh để định cấu hình VM trong một biên tập viên của sự lựa chọn của bạn. Ví dụ sau sử dụng nano với tư cách là biên tập viên: cấu hình nano-vm. Dán tập lệnh cấu hình sau vào tệp: thùng/bash NAME_SUFFIX= ứng dụng # Tạo thư mục cho các tệp trang web cơ bản sudo mkdir -p /var/www/example.com Sudo chmod a+w /var/www/example.com Sudo chown -R dữ liệu www: /var/www/example.com # Tìm tên đĩa, sau đó định dạng và gắn kết nó DISK_NAME="google-disk-base-$NAME_SUFFIX"DISK_PATHfind /dev/disk/by-id -name DISK_NAME}"| xargs -Ireadlink -f n sudo mkfs.ext4 -m 0 -E lazy_itable_init=0,lazy_journal_init=0,discard $DISK_PATH Sudo mount -o discard,defaults $DISK_PATH /var/www/example.com # Cài đặt Apache sudo apt-get cập nhật&& sudo apt-get -y cài đặt apache2 # Ghi một tệp HTML cơ bản vào đĩa liên tục được gắn sudo tee -a /var/www/example.com/index.html >/dev/null EOF' Ví dụ về HA / DR

Chào mừng bạn đến với trang web Compute Engine với khả năng chuyển đổi dự phòng ấm sang Cloud Storagep>

*:80> ServerName www.example.com ServerAdmin webmaster@localhost DocumentRoot /var/www/example.com ErrorLog ${APACHE_LOG_DIR}/error.log CustomLog ${APACHE_LOG_DIR}/access.log combined EOF # Bật tệp cấu hình Apache và tải lại dịch vụ sudo a2dissite 000-mặc định Sudo a2ensite example.com.conf sudo systemctl tải lại apache2 cập nhật các biến để khớp với giá trị được đặt tại phần đầu của tài liệu này, chẳng hạn như Ứng dụng NAME_SUFFIX. Viết ra tệp và thoát khỏi trình chỉnh sửa của bạn. Ví dụ, trong Nano bạn sử dụng Ctrl-Ođể ghi ra tệp, sau đó thoát bằng Ctrl-X. Làm cho tập lệnh cấu hình có thể thực thi được, sau đó chạy nó: chmod +x configure-vm../configure-vm. Thoát phiên SSH sang VM: lối ra Lấy địa chỉ IP của VM và sử dụng curlđể xem trang web cơ bản: curl $(các phiên bản điện toán gcloud mô tả vm-base-$NAME_SUFFIX n --zone $ZONE n --format="value(networkInterfaces.accessConfigs.[0].natIPn Trang web cơ bản được trả về, như thể hiện trong đầu ra ví dụ sau: Ví dụ về HA / DR

Chào mừng bạn đến với trang web Compute Engine với khả năng chuyển đổi dự phòng ấm sang Cloud Storagep>

hình ảnh điện toán gcloud tạo image-disk-$NAME_SUFFIX n --source-disk=disk-base-$NAME_SUFFIX n --source-disk-zone=$ZONE # Tạo mẫu cá thể mẫu phiên bản tính toán gcloud tạo mẫu-$NAME_SUFFIX-$REGION1 n --machine-type=n1-standard-1 n --subnet=projects/$PROJECT_ID/regions/$REGION1/mạng con/mạng con-$NAME_SUFFIX-$REGION1 n --region=$REGION1 n --tags=http-server n --metadatastartup-script /bin/bashn'echo\ UUIDblkid\ -s\ UUID\ -o\ value\ /dev/sdb /var/www/example. com\ ext4\ discard,defaults,nofail\ 0\ 2 ee\ -a\ /etc/fstabn'mount\ -a n --image=image-$NAME_SUFFIX n --create-disk=image=image-disk-$NAME_SUFFIX , tự động xóa = có mẫu phiên bản điện toán gcloud tạo mẫu-$NAME_SUFFIX-$REGION2 n --machine-type=n1-standard-1 n --subnet=projects/$PROJECT_ID/regions/$REGION2/mạng con/mạng con-$NAME_SUFFIX-$REGION2 n --region=$REGION2 n --tags=http-server n --metadatastartup-script /bin/bashn'echo\ UUIDblkid\ -s\ UUID\ -o\ value\ /dev/sdb /var/www/example. com\ ext4\ discard,defaults,nofail\ 0\ 2 ee\ -a\ /etc/fstabn'mount\ -a n --image=image-$NAME_SUFFIX n --create-disk=image=image-disk-$NAME_SUFFIX , tự động xóa = có # Tạo kiểm tra tình trạng cho các phiên bản VM kiểm tra sức khỏe điện toán gcloud tạo http http-basic-check-$NAME_SUFFIX n --port 80 # Tạo các nhóm phiên bản được quản lý quản lý các nhóm phiên bản điện toán gcloud tạo nhóm phiên bản-$NAME_SUFFIX-$REGION1 n --template=template-$NAME_SUFFIX-$REGION1 n --size=2 n --region=$REGION1 n --health-check=http- kiểm tra cơ bản-$NAME_SUFFIX các nhóm phiên bản tính toán gcloud được quản lý tạo nhóm phiên bản-$NAME_SUFFIX-$REGION2 n --template=template-$NAME_SUFFIX-$REGION2 n --size=2 n --region=$REGION2 n --health-check=http- kiểm tra cơ bản-$NAME_SUFFIX ## Tạo và định cấu hình bộ cân bằng tải Để người dùng truy cập trang web của bạn, bạn cần cho phép lưu lượng truy cập đến máy ảo chạy trong các nhóm phiên bản được quản lý. Bạn cũng muốn tự động chuyển hướng lưu lượng truy cập đến máy ảo mới nếu xảy ra lỗi vùng trong nhóm phiên bản được quản lý. Trong phần sau, bạn tạo một cân bằng tải bên ngoài với dịch vụ phụ trợ cho lưu lượng HTTP trên cổng 80, hãy sử dụng kiểm tra tình trạng được tạo ở các bước trước và ánh xạ một IP bên ngoài địa chỉ thông qua dịch vụ phụ trợ. Để biết thêm thông tin, xem Cách thiết lập bộ cân bằng tải HTTP bên ngoài đơn giản. - Tạo và định cấu hình bộ cân bằng tải cho ứng dụng của bạn: # Định cấu hình quy tắc cổng cho cổng HTTP 80 gcloud tính toán nhóm cá thể set-named-ports n instance-group-$NAME_SUFFIX-$REGION1 n --named-ports http:80 n --region $REGION1 tính toán gcloud nhóm phiên bản đặt tên-cổng n nhóm phiên bản-$NAME_SUFFIX-$REGION2 n --named-ports http:80 n --region $REGION2 # Tạo một dịch vụ phụ trợ và thêm các nhóm phiên bản được quản lý vào đó dịch vụ phụ trợ điện toán gcloud tạo n dịch vụ phụ trợ web-$NAME_SUFFIX n --protocol=HTTP n --port-name=http n --health-checks=http-basic-check-$NAME_SUFFIX n --global gcloud compute backend-services add-backend n web-backend-service-$NAME_SUFFIX n --instance-group=instance-group-$NAME_SUFFIX-$REGION1 n --instance-group-region=$REGION1 n --global gcloud computing dịch vụ phụ trợ add-backend n web-backend-service-$NAME_SUFFIX n --instance-group=instance-group-$NAME_SUFFIX-$REGION2 n --instance-group-region=$REGION2 n --global # Tạo bản đồ URL cho dịch vụ phụ trợ bản đồ url tính toán gcloud tạo bản đồ web-http-$NAME_SUFFIX n --default-service web-backend-service-$NAME_SUFFIX # Định cấu hình chuyển tiếp cho lưu lượng HTTP gcloud tính toán target-http-proxies tạo n http-lb-proxy-$NAME_SUFFIX n --url-map web-map-http-$NAME_SUFFIX quy tắc chuyển tiếp điện toán gcloud tạo n http-content-rule-$NAME_SUFFIX n --global n --target-http-proxy=http-lb-proxy-$NAME_SUFFIX n --ports=80 Nhận địa chỉ IP của quy tắc chuyển tiếp cho lưu lượng truy cập web: IP_ADDRESSgquy tắc chuyển tiếp điện toán đám mây mô tả http-content-rule-$NAME_SUFFIX n --global n --format="value(IPAddressn Sử dụng cuộn tròn hoặc mở trình duyệt web của bạn để xem trang web bằng IP địa chỉ của bộ cân bằng tải từ bước trước: cuộn tròn $IP_ADDRESS Mất vài phút để bộ cân bằng tải triển khai xong và lưu lượng truy cập trực tiếp chính xác đến chương trình phụ trợ của bạn. Lỗi HTTP 404 được trả về nếu cân bằng tải vẫn đang triển khai. Nếu cần, đợi vài phút và thử truy cập lại trang web. Trang web cơ bản được trả về, như thể hiện trong đầu ra ví dụ sau: Ví dụ về HA / DR

Chào mừng bạn đến với trang web Compute Engine với khả năng chuyển đổi dự phòng ấm sang Cloud Storagep>

các nhóm phiên bản được quản lý phục hồi và có thể phân phối lưu lượng truy cập cho toàn bộ trang web kinh nghiệm. - xác minh tên miền mà bạn muốn sử dụng với bộ chứa Cloud Storage của mình. Tạo nhóm Lưu trữ đám mây để khớp với tên miền bạn sở hữu và muốn sử dụng: gsutil mb gsstatic-web.$DOMAIN Các Biến DOMAIN được xác định ở đầu tài liệu này được sử dụng, chẳng hạn như . Ví dụ này lưu trữ các tệp tĩnh tại ví dụ.com tĩnh-web.example.com. Tạo một tệp cục bộ mà bạn sao chép vào bộ chứa Lưu trữ đám mây trong bước tiếp theo: cat< index.html HA / DR example

Welcome to a test static web server with warm failover from Cloud Storagep>

HA / DR example

Welcome to a test static web server with warm failover from Cloud Storagep>

curlagain, or open your web browser, to access the IP address of the load balancer: curl $IP_ADDRESS It might take a few minutes for the load balancer to update the configuration and to correctly direct traffic back to your managed instance groups. If needed, wait a few minutes and try to access the website again. The main website from the managed instance groups is returned, as shown in the following example output: HA / DR example p>Welcome to a Compute Engine website with warm failover to Cloud Storagep> ## Clean up To avoid incurring charges to your Google Cloud account for the resources used in this tutorial, either delete the project that contains the resources, or keep the project and delete the individual resources. To delete the individual resources created in this document, complete the following steps: - Delete the Cloud Storage bucket: gsutil rm -r gsstatic-web.$DOMAIN Delete the load balancer configuration: gcloud compute forwarding-rules delete n http-content-rule-$NAME_SUFFIX --global --quiet gcloud compute target-http-proxies delete n http-lb-proxy-$NAME_SUFFIX --quiet gcloud compute url-maps delete web-map-http-$NAME_SUFFIX --quiet gcloud compute url-maps delete web-map-http-bucket-$NAME_SUFFIX --quiet gcloud compute backend-services delete n web-backend-service-$NAME_SUFFIX --global --quiet gcloud compute backend-buckets delete web-bucket-$NAME_SUFFIX --quiet Delete the managed instance groups and health check: gcloud compute instance-groups managed delete n instance-group-$NAME_SUFFIX-$REGION1 n --region=$REGION1 --quiet gcloud compute instance-groups managed delete n instance-group-$NAME_SUFFIX-$REGION2 n --region=$REGION2 --quiet gcloud compute health-checks delete http-basic-check-$NAME_SUFFIX --quiet Delete the instance templates, images, base VM, and persistent disks: gcloud compute instance-templates delete n template-$NAME_SUFFIX-$REGION1 --quiet gcloud compute instance-templates delete n template-$NAME_SUFFIX-$REGION2 --quiet gcloud compute images delete image-$NAME_SUFFIX --quiet gcloud compute images delete image-disk-$NAME_SUFFIX --quiet gcloud compute instances delete vm-base-$NAME_SUFFIX n --zone=$ZONE --quiet Delete the firewall rules. gcloud compute firewall-rules delete n allow-health-check-$NAME_SUFFIX --quiet gcloud compute firewall-rules delete n allow-ssh-$NAME_SUFFIX --quiet gcloud compute firewall-rules delete n allow-http-$NAME_SUFFIX --quiet Delete the subnet and VPC. gcloud compute networks subnets delete n subnet-$NAME_SUFFIX-$REGION1 --region=$REGION1 --quiet gcloud compute networks subnets delete n subnet-$NAME_SUFFIX-$REGION2 --region=$REGION2 --quiet gcloud compute networks delete network-$NAME_SUFFIX --quiet ## What's next - - For an alternative approach that uses Cloud DNS instead of external HTTP(S) Load Balancing to control the failover, see Deploy a warm recoverable web server using Cloud DNS with Compute Engine and Cloud Storage. This pattern is useful if you have, or want to use, Cloud DNS. - To learn how how to determine the best approach for your own applications and which recovery method to use, see the Disaster recovery planning guide. - To see other patterns for applications, such as cold and hot failover, see Disaster recovery scenarios for applications. - For more ways to handle scale and availability, see the Patterns for scalable and resilient apps. - Explore reference architectures, diagrams, tutorials, and best practices about Google Cloud. Take a look at our Cloud Architecture Center.