Giới thiệu Lab
Trong lab này, bạn sẽ học cách cấu hình và kiểm thử Load Balancer công khai và Application Gateway.
Lab này yêu cầu một Azure subscription. Loại subscription của bạn có thể ảnh hưởng đến tính khả dụng của các tính năng trong lab. Bạn có thể thay đổi region, nhưng các bước được viết dựa trên East US.
Tình huống
Tổ chức của bạn có một website công khai. Bạn cần cân bằng tải các yêu cầu đến từ internet qua các máy ảo khác nhau. Bạn cũng cần phục vụ hình ảnh và video từ các máy ảo riêng biệt. Bạn dự định triển khai Azure Load Balancer và Azure Application Gateway. Tất cả tài nguyên đều nằm trong cùng một region.
Kỹ năng
- Task 1: Dùng template để chuẩn bị hạ tầng.
- Task 2: Cấu hình Azure Load Balancer.
- Task 3: Cấu hình Azure Application Gateway.
Task 1: Dùng Template để Chuẩn Bị Hạ Tầng
Trong task này, bạn sẽ dùng template để triển khai một virtual network, một network security group và ba máy ảo.
-
1
Tải xuống các file lab \Allfiles\Lab06 (template và parameters).
-
2
Đăng nhập vào Azure portal —
https://portal.azure.com. -
3
Tìm kiếm và chọn
Deploy a custom template. -
4
Trên trang custom deployment, chọn Build your own template in the editor.
-
5
Trên trang chỉnh sửa template, chọn Load file.
-
6
Tìm và chọn file \Allfiles\Labs\06\az104-06-vms-template.json rồi chọn Open.
-
7
Chọn Save.
-
8
Chọn Edit parameters và tải file \Allfiles\Labs\06\az104-06-vms-parameters.json.
-
9
Chọn Save.
-
10
Dùng thông tin sau để điền vào các trường trên trang custom deployment, để nguyên các trường còn lại theo giá trị mặc định.
Setting Value Subscription Azure subscription của bạn Resource group az104-rg6(Nếu cần, chọn Create new)Password Nhập mật khẩu bảo mật Lưu ý: Nếu nhận được lỗi VM size không khả dụng, hãy chọn SKU có sẵn trong subscription của bạn và có ít nhất 2 core. -
11
Chọn Review + create rồi chọn Create.
Lưu ý: Chờ deployment hoàn tất trước khi chuyển sang task tiếp theo. Quá trình triển khai mất khoảng 5 phút.Lưu ý: Xem lại các tài nguyên đang được triển khai. Sẽ có một virtual network với ba subnet, mỗi subnet có một máy ảo.
Task 2: Cấu Hình Azure Load Balancer
Trong task này, bạn triển khai Azure Load Balancer đứng trước hai máy ảo Azure trong virtual network. Load Balancer trong Azure cung cấp kết nối layer 4 qua các tài nguyên như máy ảo. Cấu hình Load Balancer bao gồm địa chỉ IP frontend để nhận kết nối, backend pool và các rule xác định cách kết nối đi qua load balancer.
Sơ đồ kiến trúc — Load Balancer
-
1
Trong Azure portal, tìm kiếm và chọn
Load balancers, sau đó nhấn + Create và chọn Standard load balancer từ menu thả xuống. -
2
Tạo load balancer với các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định) rồi nhấn Next : Frontend IP configuration:
Setting Value Subscription Azure subscription của bạn Resource group az104-rg6 Name az104-lbRegion Cùng region bạn đã triển khai các VM SKU Standard Type Public Tier Regional
-
3
Trên tab Frontend IP configuration, nhấn Add a frontend IP configuration và dùng các cài đặt sau:
Setting Value Name az104-feIP type IP address Gateway Load balancer None Public IP address Select Create new (use the instructions in the next step) -
4
Trên popup Add a public IP address, dùng các cài đặt sau rồi nhấn Save hai lần. Khi hoàn tất nhấn Next : Backend pools >.
Setting Value Name az104-lbpipSKU Standard Tier Regional Assignment Static Routing Preference Microsoft network Lưu ý: SKU Standard cung cấp địa chỉ IP tĩnh. Địa chỉ IP tĩnh được gán khi tạo tài nguyên và được giải phóng khi xóa tài nguyên. -
5
Trên tab Backend pools, nhấn Add a backend pool với các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định). Nhấn Add rồi Save. Nhấn Next : Inbound rules >.
Setting Value Name az104-beVirtual network az104-06-vnet1 (az104-rg6) Backend Pool Configuration NIC Click Add to add a virtual machine az104-06-vm0 check the box az104-06-vm1 check the box Lưu ý: Khi tạo public IP address, hãy xác nhận Region khớp với region bạn đã triển khai các VM (North Europe). Portal có thể tự chọn region khác như East US 2 — hãy thay đổi nếu cần trước khi tiếp tục. -
6
Nếu có thời gian, xem lại các tab khác, rồi nhấn Review + create. Đảm bảo không có lỗi validation, sau đó nhấn Create.
-
7
Chờ load balancer triển khai xong rồi nhấn Go to resource.
Thêm Rule để Xác Định Cách Phân Phối Lưu Lượng Đến
-
8
Trong blade Settings, chọn Load balancing rules.
-
9
Chọn + Add. Thêm load balancing rule với các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định). Khi cấu hình rule, hãy dùng các biểu tượng thông tin để tìm hiểu từng cài đặt. Khi hoàn tất nhấn Save.
Setting Value Name az104-lbruleIP Version IPv4 Frontend IP Address az104-fe Backend pool az104-be Protocol TCP Port 80Backend port 80Health probe Create new Name az104-hpProtocol TCP Port 80Interval 5Close the create health probe window Save Session persistence None Idle timeout (minutes) 4Enable TCP reset Disabled Enable Floating IP Disabled Outbound source network address translation (SNAT) Recommended -
10
Chọn Frontend IP configuration từ trang Load Balancer. Sao chép địa chỉ IP công khai.
-
11
Mở tab trình duyệt khác và truy cập địa chỉ IP đó. Xác nhận cửa sổ trình duyệt hiển thị thông báo Hello World from az104-06-vm0 hoặc Hello World from az104-06-vm1.
-
12
Làm mới trang để xác nhận thông báo thay đổi sang máy ảo còn lại. Điều này minh họa load balancer đang luân phiên qua các máy ảo.
Lưu ý: Bạn có thể cần làm mới nhiều lần hoặc mở cửa sổ trình duyệt mới ở chế độ InPrivate.
Task 3: Cấu Hình Azure Application Gateway
Trong task này, bạn triển khai Azure Application Gateway đứng trước hai máy ảo Azure. Application Gateway cung cấp cân bằng tải layer 7, Web Application Firewall (WAF), SSL termination và mã hóa đầu cuối cho các tài nguyên trong backend pool. Application Gateway định tuyến hình ảnh đến một máy ảo và video đến máy ảo còn lại.
Sơ đồ kiến trúc — Application Gateway
-
1
Trong Azure portal, tìm kiếm và chọn
Virtual networks. -
2
Trên blade Virtual networks, trong danh sách virtual network, nhấn az104-06-vnet1.
-
3
Trên blade virtual network az104-06-vnet1, trong phần Settings, nhấn Subnets, rồi nhấn + Subnet.
-
4
Thêm subnet với các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định).
Setting Value Name subnet-appgwStarting address 10.60.3.224Size /27— Ensure the starting address is still 10.60.3.224 -
5
Trong phần Private subnet, để nguyên tùy chọn Enable private subnet (no default outbound access) được chọn.
-
6
Nhấn Add.
Lưu ý: Subnet này sẽ được dùng bởi Azure Application Gateway. Application Gateway yêu cầu một subnet riêng có kích thước /27 hoặc lớn hơn. -
7
Trong Azure portal, tìm kiếm và chọn
Application gateways, trên blade Application gateways nhấn + Create. -
8
Trên tab Basics, điền các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định):
Setting Value Subscription Azure subscription của bạn Resource group az104-rg6Application gateway name az104-appgwRegion Cùng Azure region bạn đã dùng ở Task 1 Tier Standard V2 Enable autoscaling No Instance count 2IP address type IPv4 only HTTP2 Disabled Virtual network az104-06-vnet1 Subnet subnet-appgw (10.60.3.224/27) -
9
Nhấn Next : Frontends > và điền các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định). Khi hoàn tất, nhấn OK.
Setting Value Frontend IP address type Public Public IP address Add new Name az104-gwpipAvailability zone ZoneRedundant Lưu ý: Application Gateway có thể có cả địa chỉ IP công khai và địa chỉ IP riêng. -
10
Nhấn Next : Backends > rồi nhấn Add a backend pool. Điền các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định). Khi hoàn tất nhấn Add.
Setting Value Name az104-appgwbeAdd backend pool without targets No Virtual machine az104-06-nic1 (10.60.1.4) Virtual machine az104-06-nic2 (10.60.2.4) -
11
Nhấn Add a backend pool. Đây là backend pool cho hình ảnh. Điền các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định). Khi hoàn tất nhấn Add.
Setting Value Name az104-imagebeAdd backend pool without targets No Virtual machine az104-06-nic1 (10.60.1.4) -
12
Nhấn Add a backend pool. Đây là backend pool cho video. Điền các cài đặt sau (để nguyên các cài đặt còn lại theo mặc định). Khi hoàn tất nhấn Add.
Setting Value Name az104-videobeAdd backend pool without targets No Virtual machine az104-06-nic2 (10.60.2.4) -
13
Chọn Next : Configuration > rồi chọn Add a routing rule. Điền đầy đủ thông tin.
Setting Value Rule name az104-gwrulePriority 10Listener name az104-listenerFrontend IP Public IPv4 Protocol HTTP Port 80Listener type Basic -
14
Chuyển sang tab Backend targets. Chọn Add sau khi điền xong thông tin cơ bản.
Setting Value Backend target az104-appgwbeBackend settings az104-http(create new)Lưu ý: Dành một phút đọc thông tin về Cookie-based affinity và Connection draining. -
15
Trong phần Path-based routing, chọn Add multiple targets to create a path-based rule. Bạn sẽ tạo hai rule. Nhấn Add sau rule đầu tiên rồi nhấn Add sau rule thứ hai.
Rule — định tuyến đến backend hình ảnh
Setting Value Path /image/*Target name imagesBackend settings az104-http Backend target az104-imagebeRule — định tuyến đến backend video
Setting Value Path /video/*Target name videosBackend settings az104-http Backend target az104-videobe -
16
Kiểm tra lại các thay đổi, rồi chọn Next : Tags >. Không cần thay đổi gì ở bước này.
-
17
Chọn Next : Review + create > rồi nhấn Create.
Lưu ý: Chờ Application Gateway được tạo. Quá trình này mất khoảng 5–10 phút. Trong khi chờ, bạn có thể xem lại một số đường dẫn tự học ở cuối trang. -
18
Sau khi application gateway triển khai xong, tìm kiếm và chọn az104-appgw.
-
19
Trong tài nguyên Application gateway, ở phần Monitoring, chọn Backend health.
-
20
Đảm bảo cả hai máy chủ trong backend pool đều hiển thị trạng thái Healthy.
-
21
Trên blade Overview, sao chép giá trị của Frontend public IP address.
-
22
Mở cửa sổ trình duyệt khác và kiểm thử URL —
http://<frontend ip address>/image/. Xác nhận bạn được chuyển đến máy chủ hình ảnh (vm1). -
23
Mở cửa sổ trình duyệt khác và kiểm thử URL —
http://<frontend ip address>/video/. Xác nhận bạn được chuyển đến máy chủ video (vm2).Lưu ý: Bạn có thể cần làm mới nhiều lần hoặc mở cửa sổ trình duyệt mới ở chế độ InPrivate.
Dọn Dẹp Tài Nguyên
Nếu bạn đang làm việc với subscription của riêng mình, hãy dành một phút để xóa các tài nguyên lab. Điều này đảm bảo tài nguyên được giải phóng và chi phí được tối thiểu hóa. Cách dễ nhất để xóa tài nguyên lab là xóa resource group của lab.
- Trong Azure portal, chọn resource group, chọn Delete the resource group, nhập tên resource group, rồi nhấn Delete. Khi hộp thoại xác nhận thứ hai xuất hiện, nhấn Delete một lần nữa.
# Using Azure PowerShell Remove-AzResourceGroup -Name resourceGroupName
# Using the CLI az group delete --name resourceGroupName
Tổng Kết
Azure Load Balancer là lựa chọn xuất sắc để phân phối lưu lượng mạng qua nhiều máy ảo ở tầng truyền tải (OSI layer 4 — TCP và UDP).
Public Load Balancer dùng để cân bằng tải lưu lượng internet đến các VM. Load balancer nội bộ (private) được dùng khi chỉ cần IP riêng ở frontend.
Load balancer Basic dành cho ứng dụng quy mô nhỏ không cần tính sẵn sàng cao hoặc dự phòng. Load balancer Standard dành cho hiệu suất cao và độ trễ cực thấp.
Azure Application Gateway là load balancer lưu lượng web (OSI layer 7) giúp bạn quản lý lưu lượng đến các ứng dụng web.
Tier Standard của Application Gateway cung cấp đầy đủ chức năng L7 bao gồm cân bằng tải. Tier WAF bổ sung tường lửa để kiểm tra lưu lượng độc hại.
Application Gateway có thể đưa ra quyết định định tuyến dựa trên các thuộc tính bổ sung của yêu cầu HTTP, ví dụ URI path hoặc host headers.