1. Giới thiệu
Các lựa chọn đặt địa chỉ IP trong Google Cloud
Địa chỉ IP giúp xác định cả mạng và máy chủ trong mạng. Có các loại địa chỉ IPv4 và IPv6.Những địa chỉ này phải là duy nhất để cho phép lưu lượng truy cập trên mạng xác định nguồn và đích để trao đổi gói. Việc gán địa chỉ IP không chỉ dành riêng cho Google Cloud mà còn tồn tại cả trong môi trường đám mây và tại chỗ.
Đám mây riêng ảo (VPC)
VPC là một trung tâm dữ liệu truyền thống đại diện theo logic. Ngoài VPC mặc định và VPC ở chế độ tự động, Google Cloud còn cho phép bạn tạo một VPC tuỳ chỉnh. Các VPC tuỳ chỉnh này cho phép bạn toàn quyền quản trị cấu hình VPC.
Trình cân bằng tải
Trình cân bằng tải cho phép phân phối lưu lượng truy cập trên nhiều phiên bản của ứng dụng. Google Cloud có một số loại trình cân bằng tải được liệt kê trong tài liệu về Cân bằng tải. Trong phòng thí nghiệm này, chúng ta sẽ tạo một Trình cân bằng tải cho Ứng dụng bên ngoài Toàn cầu để truy cập trang web đơn giản của chúng ta.
Cloud NAT
Việc này cho phép các mạng con riêng tư của bạn giao tiếp với Internet. Cách này hoạt động bằng cách dịch địa chỉ IP nội bộ của bạn thành địa chỉ IP công khai để kết nối với máy chủ bên ngoài. Sau đó, lưu lượng truy cập trả về từ nguồn bên ngoài sẽ được dịch ngược tại cổng NAT để sử dụng địa chỉ riêng tư nhằm trả về lưu lượng truy cập cho ứng dụng. Kết nối được bắt đầu theo cách xuất.
Máy ảo
Đây là các hệ thống ảo chạy hệ điều hành. Bạn có thể định cấu hình các thành phần này dựa trên yêu cầu của người dùng và bao gồm các thành phần bộ nhớ, bộ nhớ, mạng và hệ điều hành.
Sản phẩm bạn sẽ tạo ra
Trong lớp học lập trình này, bạn sẽ tạo hai VPC tuỳ chỉnh, bật và định cấu hình các loại địa chỉ IPv4 và IPv6 (nội bộ và bên ngoài). Bạn cũng sẽ xây dựng một máy chủ nginx đơn giản trên một máy ảo có địa chỉ IP riêng tư, hiển thị máy chủ đó bằng Trình cân bằng tải ứng dụng bên ngoài và kết nối với máy chủ đó bằng địa chỉ IPv4 và IPv6:
- Tạo hai VPC tuỳ chỉnh và thêm một số quy tắc tường lửa
- Tạo mạng con IPv4 ngăn xếp đơn và ngăn xếp kép IPv4_IPv6
- Tạo Cổng NAT cho các tài nguyên riêng tư trong mạng con để nhận thông tin cập nhật
- Tạo máy chủ apache máy ảo riêng tư bằng MIG
- Hiển thị máy chủ máy ảo riêng tư thông qua LB ứng dụng bằng địa chỉ IPV4 và IPv6 tĩnh
- Tạo ứng dụng IPv4, IPv6 bên ngoài
- Kết nối với địa chỉ trình cân bằng tải ứng dụng IPv4 và IPv6 từ ứng dụng
Kiến thức bạn sẽ học được
- Cách tạo VPC tuỳ chỉnh
- Cách bật IPV6 trên mạng con
- Cách đặt quy tắc về tường lửa
- Cách tạo cổng NAT
- Cách tạo nhóm thực thể được quản lý
- Cách tạo ứng dụng khách IPv4, IPv6
- Cách tạo IP tĩnh
- Cách tạo LB ứng dụng
Lớp học lập trình này tập trung vào việc gán địa chỉ IP và cũng sẽ sử dụng máy ảo và bộ cân bằng tải một cách cụ thể.
Bạn cần có
- Trình duyệt web để kết nối với bảng điều khiển Google Cloud
- Có thể tạo VPC và các quy tắc về tường lửa
- Có thể sử dụng ssh
- Tài khoản Google Cloud
2. Thiết lập
Thiết lập phòng thí nghiệm
Thiết lập môi trường theo tiến độ riêng
- Đăng nhập vào Google Cloud Console rồi tạo một dự án mới hoặc sử dụng lại một dự án hiện có. Nếu chưa có tài khoản Gmail hoặc Google Workspace, bạn phải tạo một tài khoản.
- Tên dự án là tên hiển thị của những người tham gia dự án này. Đây là một chuỗi ký tự không được API của Google sử dụng. Bạn luôn có thể cập nhật ứng dụng.
- Mã dự án là duy nhất trong tất cả các dự án Google Cloud và không thể thay đổi (không thể thay đổi sau khi đặt). Cloud Console sẽ tự động tạo một chuỗi duy nhất; thường thì bạn không cần quan tâm đến chuỗi này. Trong hầu hết các lớp học lập trình, bạn sẽ cần tham chiếu đến Mã dự án (thường được xác định là
PROJECT_ID
). Nếu không thích mã được tạo, bạn có thể tạo một mã ngẫu nhiên khác. Ngoài ra, bạn có thể thử dùng email của riêng mình để xem có thể sử dụng hay không. Bạn không thể thay đổi thông tin này sau bước này và thông tin này sẽ được giữ nguyên trong suốt thời gian diễn ra dự án. - Đối với thông tin của bạn, có giá trị thứ ba, Project Number (Số dự án), mà một số API sử dụng. Tìm hiểu thêm về cả ba giá trị này trong tài liệu.
- Tiếp theo, bạn cần bật tính năng thanh toán trong Cloud Console để sử dụng các tài nguyên/API trên Cloud. Việc chạy qua lớp học lập trình này sẽ không tốn nhiều chi phí. Để tắt các tài nguyên nhằm tránh phát sinh việc thanh toán ngoài hướng dẫn này, bạn có thể xoá các tài nguyên bạn đã tạo hoặc xoá dự án. Người dùng mới của Google Cloud đủ điều kiện tham gia chương trình Dùng thử miễn phí 300 USD.
Khởi động Cloud Shell
Mặc dù có thể điều khiển Google Cloud từ xa trên máy tính xách tay, nhưng trong lớp học lập trình này, bạn sẽ sử dụng Google Cloud Shell, một môi trường dòng lệnh chạy trên đám mây.
Trong Bảng điều khiển Google Cloud, hãy nhấp vào biểu tượng Cloud Shell trên thanh công cụ trên cùng bên phải:
Sẽ chỉ mất một chút thời gian để cấp phép và kết nối với môi trường. Sau khi hoàn tất, bạn sẽ thấy như sau:
Máy ảo này được tải sẵn tất cả các công cụ phát triển mà bạn cần. Phiên bản này cung cấp thư mục gốc có dung lượng ổn định 5 GB và chạy trên Google Cloud, giúp nâng cao đáng kể hiệu suất và khả năng xác thực của mạng. Bạn có thể thực hiện tất cả công việc trong lớp học lập trình này trong một trình duyệt. Bạn không cần cài đặt gì cả.
3. Định cấu hình VPC tuỳ chỉnh
Tại sao nên chọn VPC tuỳ chỉnh?
Trong phòng thí nghiệm này, chúng ta sẽ thêm một vài quy tắc về tường lửa, bao gồm những quy tắc cho lưu lượng truy cập IPv6 và sẽ rất hữu ích nếu bạn tách các quy tắc đó khỏi mạng mặc định. Ngoài ra, chúng tôi sẽ bật IPv6 trên một mạng con. Một số yêu cầu để thực hiện việc này là bạn phải bật tính năng này trên mạng ở chế độ tuỳ chỉnh. Không hỗ trợ mạng con được tạo tự động trong mạng ở chế độ tự động.
Thiết lập VPC tuỳ chỉnh có IPv6 nội bộ
- Trong phần kết nối mạng, hãy chọn mạng VPC
- Ở trên cùng, hãy chọn tạo mạng VPC
- Trong phần Tạo mạng VPC, hãy thêm đoạn mã sau:
- Nhập Tên cho mạng dưới dạng ipv4-ipv6-network
- Trong phần VPC network ULA internal IPv6 range (Dải IPv6 nội bộ ULA của mạng VPC), hãy chọn Enabled (Đã bật)
- Trong phần Allocate ULA internal IPv6 range (Phân bổ dải IPv6 nội bộ ULA), hãy chọn Automatically (Tự động)
- Chọn Tuỳ chỉnh cho Chế độ tạo mạng con.
- Trong phần Mạng con mới, hãy chỉ định các tham số cấu hình sau đây cho một mạng con:
Cấu hình | Giá trị |
Tên | ipv4 |
Khu vực | europe-west1 |
Loại ngăn xếp IP | IPv4(ngăn xếp đơn) |
Phạm vi IPv4 | 192.168.10.0/24 |
Tạo dải ô IPv4 phụ | chọn |
Tên dải ô mạng con 1 | ipv4-giây |
Phạm vi IPv4 phụ 1 | 10.0.10.0/24 |
- Chọn xong
- Chúng ta sẽ thêm một mạng con khác và bật IPV6. Để thêm một mạng con khác, hãy chọn THÊM SUBNET. Trong phần Mạng con mới, hãy chỉ định các tham số cấu hình sau đây cho một mạng con:
- Nhập ipv6net cho Tên của mạng con
- Đối với Khu vực, hãy chọn us-central1
- Đối với Loại ngăn xếp IP, hãy chọn IPv4 và IPV6 (ngăn xếp kép)
- Nhập một dải ô IPv4 sử dụng 192.168.20.0/24
- Đối với Loại quyền truy cập IPv6, hãy chọn Nội bộ
- Chọn xong
- Trong phần Quy tắc tường lửa, hãy chọn các mục sau
- Trên thẻ Quy tắc tường lửa IPv4, hãy chọn tất cả các tuỳ chọn có sẵn: allow-cutom (để giao tiếp nội bộ), allow-icmp, allow-rdp, allow-ssh.
- Trên thẻ Quy tắc tường lửa IPv6, chọn tất cả các tuỳ chọn có sẵn: allow-ipv6-cutom (để giao tiếp nội bộ), allow-ipv6-icmp, allow-ipv6-rdp, allow-ipv6-ssh.
Các lựa chọn này sẽ tự động tạo quy tắc so khớp cho mạng con mới.
- Trong phần Chế độ định tuyến động, hãy chọn Toàn cầu cho mạng VPC. Để biết thêm thông tin, hãy xem phần chế độ định tuyến động. Bạn có thể thay đổi chế độ định tuyến động sau.
- Đối với Đơn vị truyền tối đa (MTU), hãy chọn 1460.
- Nhấp vào Tạo.
Thiết lập VPC tuỳ chỉnh có IPv6 bên ngoài
- Trong phần kết nối mạng, hãy chọn mạng VPC
- Ở trên cùng, hãy chọn tạo mạng VPC
- Trong phần Tạo mạng VPC, hãy thêm đoạn mã sau:
- Nhập Tên cho mạng là external-ipv6-network
- Trong phần Phạm vi IPv6 nội bộ ULA của mạng VPC, hãy chọn Đã bật
- Trong phần Allocate ULA internal IPv6 range (Phân bổ dải IPv6 nội bộ ULA), hãy chọn Automatically (Tự động)
- Chọn Tuỳ chỉnh cho Chế độ tạo mạng con.
- Trong phần Mạng con mới, hãy chỉ định các tham số cấu hình sau cho mạng con:
- Đối với Tên cho mạng con, hãy nhập ipv6-external
- Đối với Khu vực, hãy chọn us-east1
- Đối với Loại ngăn xếp IP, hãy chọn IPv4 và IPv6 (ngăn xếp kép)
- Nhập một phạm vi IPv4 sử dụng 192.168.200.0/24
- Đối với Loại quyền truy cập IPv6, hãy chọn Bên ngoài
- Chọn xong
- Trong phần Quy tắc tường lửa, hãy chọn các mục sau
- Trên thẻ Quy tắc tường lửa IPv4, hãy chọn tất cả các tuỳ chọn có sẵn: allow-cutom (để giao tiếp nội bộ), allow-icmp, allow-rdp, allow-ssh.
- Trên thẻ Quy tắc tường lửa IPv6, chọn tất cả các tuỳ chọn có sẵn: allow-ipv6-cutom (để giao tiếp nội bộ), allow-ipv6-icmp, allow-ipv6-rdp, allow-ipv6-ssh. Trong lớp học này, chúng ta sẽ sử dụng tuỳ chọn này để tự động tạo quy tắc so khớp trong mạng con mới.
- Trong mục Chế độ định tuyến động, hãy chọn Chung cho mạng VPC. Để biết thêm thông tin, hãy xem nội dung chế độ định tuyến động. Bạn có thể thay đổi chế độ định tuyến động sau.
- Đối với Đơn vị truyền tối đa (MTU), hãy chọn 1460.
- Nhấp vào Tạo.
Xác minh quy tắc tường lửa
Tính năng kiểm soát quy tắc tường lửa cho phép bạn từ chối lưu lượng truy cập vào các dịch vụ của mình.
Cách xác minh xem có quy tắc nào không:
- Chuyển đến mạng VPC
- Trên bảng điều khiển bên trái, hãy chọn tường lửa
- Xem xét vùng hiển thị và đảm bảo bạn thấy các quy tắc tường lửa cho các mạng mới được tạo. Di chuyển qua, tìm cột mạng rồi di chuyển xuống. Bạn sẽ thấy tên của mạng mà mình tạo trong cột mạng của quy tắc tường lửa. Trong trường hợp này là mạng-ipv4-ipv6 và mạng-ipv6-bên ngoài. Tên này phải là duy nhất cho dự án.
- Tiếp theo, chúng ta sẽ tạo một quy tắc tường lửa mới để cho phép kiểm tra tình trạng
- Mở Cloud Run nếu chưa mở bằng cách chọn Kích hoạt Cloud Shell (
) trên thanh trên cùng. Một phiên Cloud Shell sẽ mở ra và hiển thị lời nhắc dòng lệnh. Đảm bảo bạn đang ở đúng dự án và dán mã sau.
gcloud compute firewall-rules create ipv4-ipv6-hc \ --direction=INGRESS \ --network=ipv4-ipv6-network \ --action=ALLOW \ --rules=tcp:80,tcp:8080,tcp:443 \ --source-ranges=35.191.0.0/16,130.211.0.0/22,209.85.152.0/22,209.85.204.0/22 \ --target-tags=ipv6-server
- Sau khi hoàn tất, hãy xác minh rằng bạn thấy và nhập quy tắc tường lửa ipv6-ipv4-hc được đính kèm vào ipv4-ipv6-network
4. Định cấu hình cổng NAT
- Chuyển đến phần Dịch vụ mạng
- Chọn Cloud NAT rồi chọn bắt đầu
- Tên cổng sử dụng ipv4-ipv6-nat
- Mạng chọn ipv4-ipv6-network
- Chọn khu vực us-central1
- Trình định tuyến trên đám mây chọn Tạo trình định tuyến mới
- Tạo trang bộ định tuyến bằng cách định cấu hình như sau:
- Tên ipv4-ipv6-nat-router
- Giữ nguyên mọi thứ khác ở chế độ mặc định rồi chọn tạo
- Quay lại trang Tạo cổng vào Cloud NAT, để lại các tuỳ chọn khác vì chúng là tuỳ chọn tạo
5. Định cấu hình các thực thể trong VPC riêng tư
VPC riêng tư của mẫu Thực thể
- Mở Cloud Shell.
- Xác minh rằng bạn đang sử dụng đúng dự án nếu có nhiều dự án
- Sao chép và dán nội dung sau
gcloud compute instance-templates create ipv6-internal-server \ --region=us-central1 \ --network-interface=subnet=ipv6net,no-address,stack-type=IPV4_IPV6 \ --machine-type=n1-standard-1 \ --metadata=^,@^startup-script=\#\!/bin/bash$'\n'\#\ package\ updates\ \ \ \ \ \ $'\n'apt\ update\ -y$'\n'apt\ install\ nginx\ -y$'\n'systemctl\ start\ nginx$'\n'systemctl\ enable\ nginx$'\n'systemctl\ status\ nginx\ \|\ grep\ Active$'\n'chown\ -R\ \$USER:\$USER\ /var/www$'\n'cd\ /var/www/html/$'\n'echo\ \'\<\!DOCTYPE\ html\>\'\ \>\ /var/www/html/index.html$'\n'echo\ \'\<html\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<head\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<title\>Awesome\ web\ app\</title\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<meta\ charset=\"UTF-8\"\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\</head\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<body\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<h1\>IPv6\ server\</h1\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\<h3\>You\ are\ successful\</h3\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\</body\>\'\ \>\>\ /var/www/html/index.html$'\n'echo\ \'\</html\>\'\ \>\>\ /var/www/html/index.html$'\n' --tags=ipv6-server,http-server,https-server \ --create-disk=auto-delete=yes,boot=yes,device-name=ipv6-internal-server,image=projects/debian-cloud/global/images/debian-11-bullseye-v20230306,mode=rw,size=20,type=pd-balanced
- Truy cập Compute Engine
- Chọn Mẫu thực thể
- Trong cửa sổ mẫu thực thể, hãy đảm bảo bạn thấy mẫu mà bạn vừa tạo
- Nhấp vào tên của mẫu và cuộn xuống để xem cấu hình.
- Trong phần Network interfaces (Giao diện mạng), hãy đảm bảo bạn thấy Stack Type (Loại ngăn xếp) là IPv4 and IPv6 (IPv4 và IPv6)
Tạo một nhóm thực thể trong VPC riêng tư
- Truy cập Compute Engine
- Chọn mở rộng Nhóm thực thể
- Chọn Kiểm tra tình trạng
- Chọn tạo quy trình kiểm tra tình trạng
- Trên trang Tạo quy trình kiểm tra tình trạng, hãy sử dụng các thông tin sau:
- Tên sử dụng ipv6-server-hc
- Giao thức TCP Cổng 80
- Di chuyển đến phần Tiêu chí về tình trạng
- Kiểm tra khoảng thời gian 10, Thời gian chờ 5
- Ngưỡng tốt 2, ngưỡng không tốt 4
- Di chuyển đến cuối rồi chọn tạo
- Truy cập Compute Engine
- Chọn Nhóm thực thể
- Chọn Tạo nhóm thực thể
- Chọn Nhóm phiên bản được quản lý mới (có trạng thái)
- Tên sử dụng ipv6-server-igp
- Đối với Mẫu thực thể, hãy sử dụng ipv6-internal-server
- Đối với số lượng thực thể, hãy sử dụng 2
- Đối với Vị trí, hãy sử dụng Single Zone (Một vùng), đảm bảo khu vực là us-central1
- Di chuyển xuống phần Tự động khắc phục:
- Sử dụng tính năng kiểm tra tình trạng ipv6-server-hc
- Đối với độ trễ ban đầu, loại 120
- Giữ nguyên mọi thứ khác theo mặc định rồi chọn create
Quá trình tạo nhóm thực thể sẽ mất vài phút
Xác minh nhóm thực thể và máy ảo
Sau khi hoàn tất Nhóm thực thể, hãy xác minh
- Truy cập vào Compute Engine rồi chọn Instance groups (Nhóm phiên bản)
- Chọn tên của nhóm thực thể mà bạn vừa tạo ipv6-server-igp
- Đảm bảo rằng bạn nhìn thấy những thông tin sau:
- Instance theo trạng thái 2 trường hợp (Vui lòng dành chút thời gian để chạy toàn bộ quá trình kiểm tra tình trạng nếu quá trình đó chưa cho thấy tình trạng ở trạng thái tốt)
- Thực thể theo tình trạng 100% khoẻ mạnh
Tiếp theo, hãy chuyển thẳng đến các máy ảo trong nhóm thực thể này và kiểm thử một số máy ảo
- Chọn các phiên bản máy ảo, bạn sẽ thấy hai máy ảo có tên bắt đầu bằng ipv6-server-igp
- Di chuyển qua cột IP nội bộ và thấy cả địa chỉ IPV4 và IPV6. Hãy ghi lại cả hai địa chỉ cho mỗi máy chủ.
- Bên cạnh máy ảo đầu tiên, hãy chọn SSH. Thao tác này sẽ mở một phiên SSH trực tiếp đến máy chủ.
- Trong cửa sổ SSH, hãy nhập
curl localhost
. Bạn sẽ nhận được phản hồi từ máy chủ web chạy trên máy ảo hiển thị HTML như bên dưới:
- Tiếp theo, hãy nhập
ip addr
để hiển thị thông tin địa chỉ. Xác minh rằng giao diện exxx có cùng địa chỉ IPv4 và IPv6 mà bạn đã ghi lại từ trước trong bước 6 cho máy ảo này - Thực hiện
ping -c 4 XXXX
từ máy ảo này đến địa chỉ IPv4 của máy ảo thứ hai, sau đó thực hiện tương tự bằng địa chỉ IPv6 của máy ảo thứ hai.
- <Tùy chọn> bạn có thể tạo SSH vào máy ảo thứ hai và thực hiện quy trình kiểm thử tương tự. Thử ping các địa chỉ IPv4 và IPv6 của VM 1.
Tạo một thực thể IPv4 độc lập chỉ trong VPC riêng tư
- Chuyển đến Compute Engine
- Chọn VM Instances (Thực thể máy ảo) rồi chọn create instance (tạo thực thể)
- Điền vào trang cấu hình như sau:
- Tên chỉ sử dụng ipv4
- Chọn khu vực europe-west1
- Di chuyển xuống, mở rộng Tuỳ chọn nâng cao rồi mở rộng Mạng. Bây giờ, hãy sử dụng đoạn mã sau: trong phần Giao diện mạng
- Chọn mũi tên thả xuống bên cạnh mặc định để xem các tuỳ chọn chỉnh sửa giao diện
- Đối với Mạng, hãy thay đổi thành ipv4-ipv6-network
- Mạng phụ ipv4
- Địa chỉ IPv4 bên ngoài, chọn Không có
- Chọn xong
- Di chuyển đến cuối rồi chọn tạo
- Quá trình tạo máy ảo sẽ mất vài phút. Máy ảo này nằm trong một mạng con chỉ có IPv4 và không được chỉ định địa chỉ IP bên ngoài. Để xác minh, hãy truy cập vào trang Phiên bản máy ảo rồi tìm máy ảo có tên là ipv4-only
- Chọn SSH để SSH vào máy ảo có tên là ipv4-only
- Thực hiện
ping -c 4 X.X.X.X
đến các địa chỉ IPv4 riêng tư của bất kỳ máy ảo nào đã tạo trước đó, bắt đầu bằng tên ipv6-server-igp. Bạn có thể ping thành công các địa chỉ IPv4 nội bộ của các máy ảo này.
6. Tạo và cân bằng tải ứng dụng bằng địa chỉ IPv4 và IPv6 trong VPC riêng tư
Tạo hai IP tĩnh bên ngoài
- Chuyển đến phần Mạng VPC
- Chọn Địa chỉ IP rồi chọn đặt trước địa chỉ tĩnh bên ngoài
- Đối với địa chỉ IPv4, hãy sử dụng thông tin sau:
- Tên ipv4-lb-ip
- Phiên bản IP IPv4
- Nhập Toàn cầu
- di chuyển đến cuối rồi chọn đặt trước
- Đối với địa chỉ IPv6, hãy lặp lại bước 2 và sử dụng như sau:
- Tên ipv6-lb-ip
- Phiên bản IP IPv6
- Nhập Toàn cầu
- cuộn xuống cuối rồi chọn reserve
Ghi lại các địa chỉ IP này. Bạn sẽ cần các tệp này để kiểm thử khả năng kết nối trong phần cuối cùng.
Tạo ứng dụng bên ngoài LB
- Chuyển đến phần Dịch vụ mạng
- Chọn tạo trình cân bằng tải
- Trong phần Loại trình cân bằng tải, hãy chọn Trình cân bằng tải ứng dụng (HTTP/HTTPS), rồi chọn tiếp theo
- Trong mục Giao diện công khai hoặc nội bộ, hãy chọn Giao diện công khai (bên ngoài) rồi chọn tiếp theo
- Trong phần Triển khai trên toàn cầu hoặc một khu vực, hãy chọn Phù hợp nhất cho tải công việc trên toàn cầu, sau đó chọn tiếp theo.
- Trong mục Tạo trình cân bằng tải, hãy chọn Trình cân bằng tải ứng dụng bên ngoài toàn cầu, rồi chọn tiếp theo.
- Chọn định cấu hình
- Ở trên cùng trong phần Tạo Trình cân bằng tải ứng dụng bên ngoài toàn cầu, hãy sử dụng tên ipv4-ipv6-lb-demo
- Tiếp theo, chọn Cấu hình giao diện người dùng và sử dụng:
- Tên ipv4-fe-lb
- Giao thức HTTP
- Phiên bản IP IPv4
- Địa chỉ IP chọn ipv4-lb-ip để gán địa chỉ IP IPv4 bên ngoài tĩnh mà chúng ta đã tạo
- Cổng 80
- Chọn xong
- Trong giao diện người dùng, hãy định cấu hình và tệp đính kèm IPv6, chọn Thêm IP và cổng giao diện người dùng:
- Tên ipv6-fe-lb
- Giao thức HTTP
- Phiên bản IP IPv6
- Địa chỉ IP chọn ipv6-lb-ip để chỉ định IP IPv6 tĩnh bên ngoài mà chúng ta đã tạo
- Cổng 80
- Chọn xong
- Chọn Cấu hình phụ trợ ở ngăn bên phải trong phần dịch vụ phụ trợ và bộ chứa phụ trợ rồi chọn Tạo dịch vụ phụ trợ rồi dùng các thao tác sau:
- Tên server-backend
- Loại phần phụ trợ Nhóm thực thể
- Giao thức HTTP
- Nhóm thực thể ipv6-server-igp
- Số cổng 80, 8080
- Bỏ chọn Bật Cloud CDN
- Kiểm tra tình trạng chọn ipv6-server-hc
- Cuộn xuống cuối rồi chọn tạo
- Sau đó, chọn ok
- Di chuyển xuống cuối trang rồi chọn tạo. Khi quá trình này hoàn tất, bạn sẽ thấy thông báo như sau
- Nhấp vào tên của LB mới và ghi lại địa chỉ ipv4 và ipv6 trong phần giao diện người dùng. Bạn sẽ cần những thông tin này cho bài kiểm thử cuối cùng.
7. Tạo một thực thể duy nhất có Địa chỉ IPv4 và IPv6 bên ngoài và nội bộ
Tạo mối quan hệ độc lập với địa chỉ IPv4 và IPv6 bên ngoài
- Chuyển đến Compute Engine
- Chọn VM Instances (Thực thể máy ảo) rồi chọn create instance (tạo thực thể)
- Điền vào trang cấu hình như sau:
- Sử dụng tên external-ipv4-ipv6
- Chọn khu vực us-east1
- Di chuyển xuống, mở rộng Tuỳ chọn nâng cao rồi mở rộng Mạng. Bây giờ, hãy sử dụng mã sau:
- Trong phần Giao diện mạng, hãy chọn Mạng external-ipv6-network
- Mạng con ipv6-external
- Loại ngăn xếp IP IPv4 và IPv6 (ngăn xếp kép)
- Địa chỉ IPv4 bên ngoài, hãy chọn Ephemeral (Tạm thời)
- Chọn xong
- Di chuyển xuống dưới cùng rồi chọn create
- Quá trình tạo máy ảo sẽ mất vài phút. Máy ảo này nằm trong mạng con IPv4_IPv6 có quyền truy cập địa chỉ IPv6 bên ngoài. Để xác minh, hãy truy cập trang Phiên bản máy ảo rồi tìm máy ảo có tên external-ipv4-ipv6
- Chọn tuỳ chọn SSH để kết nối SSH vào máy ảo external-ipv4-ipv6
- Nhập
ip addr
để kiểm tra địa chỉ IPv4 và IPv6 được chỉ định cho máy ảo của bạn - Chuyển đến địa chỉ IPv4 của ipv4-ipv6-lb-demo
- Trong loại phiên SSH của máy ảo external-ipv4-ipv6, hãy nhập
curl X.X.X.X
, trong đó X.X.X.X là địa chỉ IPv4 của bộ cân bằng tải ipv4-ipv6-lb-demo. Bạn sẽ thấy HTML của trang web đang chạy trên các máy chủ trong ipv4-ipv6-network - Trong loại phiên máy ảo SSH external-ipv4-ipv6
curl [X:X:X:X]:80
của bạn, trong đó X:X:X:X là địa chỉ IPv6 của trình cân bằng tải ipv4-ipv6-lb-demo. Tệp này sẽ có dạng như saucurl [2600:1901:X:XXXX::]:80
Bạn sẽ thấy HTML của trang web đang chạy trên các máy chủ trong mạng ipv4-ipv6
8. Dọn dẹp
Để dọn dẹp dự án, bạn có thể chạy các lệnh sau.
gcloud compute instances delete external-ipv4-ipv6 --zone=us-east1-b --quiet gcloud compute instances delete ipv4-only --zone=europe-west1-b --quiet gcloud compute forwarding-rules delete ipv4-fe-lb --global --quiet gcloud compute forwarding-rules delete ipv6-fe-lb --global --quiet gcloud compute target-http-proxies delete ipv4-ipv6-lb-demo-target-proxy --quiet gcloud compute target-http-proxies delete ipv4-ipv6-lb-demo-target-proxy-2 --quiet gcloud compute url-maps delete ipv4-ipv6-lb-demo --quiet gcloud compute backend-services delete server-backend --global --quiet gcloud compute addresses delete ipv4-lb-ip --global --quiet gcloud compute addresses delete ipv6-lp-ip --global --quiet gcloud compute instance-groups managed delete ipv6-server-igp --zone us-central1-a --quiet gcloud compute instance-templates delete "ipv6-internal-server" --quiet gcloud compute health-checks delete ipv6-server-hc --quiet gcloud compute routers nats delete ipv4-ipv6-nat --router=ipv4-ipv6-nat-router --region=us-central1 --quiet gcloud compute routers delete ipv4-ipv6-nat-router --region=us-central1 --quiet gcloud compute firewall-rules delete external-ipv6-network-allow-ipv6-custom external-ipv6-network-allow-ipv6-ssh external-ipv6-network-allow-rdp external-ipv6-network-allow-ipv6-rdp external-ipv6-network-allow-ssh external-ipv6-network-allow-ipv6-icmp external-ipv6-network-allow-custom external-ipv6-network-allow-icmp --quiet gcloud compute firewall-rules delete ipv4-ipv6-hc ipv4-ipv6-network-allow-custom ipv4-ipv6-network-allow-ipv6-icmp ipv4-ipv6-network-allow-icmp ipv4-ipv6-network-allow-ssh ipv4-ipv6-network-allow-rdp ipv4-ipv6-network-allow-ipv6-ssh ipv4-ipv6-network-allow-ipv6-rdp ipv4-ipv6-network-allow-ipv6-custom --quiet gcloud compute networks subnets delete ipv4 --region=europe-west1 --quiet gcloud compute networks subnets delete ipv6net --region=us-central1 --quiet gcloud compute networks subnets delete ipv6-external --region=us-east1 --quiet gcloud compute networks delete external-ipv6-network --quiet gcloud compute networks delete ipv4-ipv6-network --quiet
9. Xin chúc mừng
Xin chúc mừng! Bạn đã khám phá thành công cả hai tuỳ chọn kết nối mạng IPv4 và IPv6!
Tài liệu tham khảo
- Tài liệu: Định địa chỉ IP
- Tài liệu: Bật IPv6 trên mạng con.
- Tài liệu: Chấm dứt IPv6 cho HTTP(S bên ngoài), Proxy SSL và TCP bên ngoài
Thủ công, cập nhật lần gần đây nhất vào tháng 3 năm 2023
Phòng thí nghiệm kiểm tra lần gần đây nhất vào tháng 3 năm 2023