Bộ công cụ phát triển ngăn xếp Azure – Loại bỏ các hạn chế về mạng

Quá trình này được xác nhận là hoạt động cho Azure Stack phiên bản 1910.

Vậy là bạn đã có trong tay Bộ công cụ phát triển ngăn xếp Azure (ASDK), hy vọng ít nhất có thông số kỹ thuật của biến thể Dell EMC phiên bản PaaS thấp hơn hoặc cao hơn và bạn đã thử nghiệm nó được một thời gian. Bạn đã rất phấn khích, đã khởi động một số máy ảo, được cung cấp từ thị trường, triển khai cụm Kubernetes từ mẫu, triển khai Ứng dụng web và API, đồng thời tận hưởng một số điều thú vị với Azure Functions.

ASDK_Specs.png

Tất cả những điều này thật tuyệt vời và có thể mang đến cho bạn ý tưởng tuyệt vời về cách Azure Stack có thể hoạt động cho bạn, nhưng sẽ đến lúc bạn muốn xem nó sẽ tích hợp như thế nào với phần còn lại của công ty bạn. Một trong những hạn chế về thiết kế của ASDK là nó nằm trong ranh giới Mạng được xác định bằng phần mềm (SDN), giới hạn quyền truy cập vào cơ sở hạ tầng Azure Stack và mọi khối lượng công việc của đối tượng thuê được triển khai trong đó để được truy cập từ máy chủ ASDK. Khối lượng công việc của người thuê có thể định tuyến đến mạng công ty của bạn, tuy nhiên không có gì có thể truyền trở lại.

Có một quy trình được ghi lại để cho phép truy cập VPN vào ASDK nhằm cho phép nhiều người truy cập cổng thông tin đối tượng thuê và quản trị viên từ máy của họ cùng một lúc, nhưng điều này không cho phép truy cập vào các tài nguyên đã triển khai và cũng không cho phép các tài nguyên hiện có khác của bạn môi trường máy chủ để kết nối với chúng.

Có một số blog đã tồn tại kể từ những ngày xem trước kỹ thuật của Azure Stack, tuy nhiên, chúng hiện chưa đầy đủ hoặc không chính xác, không hoạt động trong mọi môi trường hoặc yêu cầu phải có kiến ​​thức mạng nâng cao để tuân theo. Mục tiêu của blog này là cung cấp phương pháp mở môi trường ASDK để mang lại trải nghiệm cho người thuê giống như bạn sẽ nhận được với Azure Stack nhiều nút đầy đủ được triển khai trong mạng công ty của bạn.

Lưu ý: Khi triển khai môi trường sản xuất Azure Stack, bạn phải cung cấp phạm vi mạng ‘VIP công cộng’ sẽ hoạt động như IP bên ngoài cho các dịch vụ được triển khai trong Azure Stack. Phạm vi này có thể là nội bộ của mạng công ty của bạn hoặc phạm vi IP công cộng thực sự. Hầu hết các doanh nghiệp triển khai trong mạng công ty của họ trong khi hầu hết các nhà cung cấp dịch vụ đều triển khai với IP công cộng để nhân rộng trải nghiệm Azure. Đầu ra của quá trình này sẽ mang lại trải nghiệm tương tự như Azure Stack được triển khai trong mạng nội bộ của bạn.

Phần còn lại của blog này giả định rằng bạn đã triển khai ASDK của mình và hoàn thành tất cả các hoạt động bình thường sau triển khai như đăng ký và triển khai các nhà cung cấp tài nguyên PaaS.

Loại bỏ các hạn chế về mạng

Quá trình này được thiết kế để không gây gián đoạn cho môi trường ASDK và có thể được khôi phục hoàn toàn mà không cần triển khai lại.

Trong môi trường ASDK có hai bộ chuyển đổi Hyper-V. Công tắc công cộng và Công tắc SDN.

  • Công tắc công cộng được gắn vào mạng nội bộ/công ty của bạn và cung cấp cho bạn khả năng RDP tới máy chủ để quản lý ASDK.
  • Bộ chuyển mạch SDN là bộ chuyển mạch được quản lý SDN Hyper-V 2016, cung cấp tất cả kết nối mạng cho tất cả cơ sở hạ tầng ASDK và máy ảo thuê đang và sẽ được triển khai.

Không có tiêu đề.png

Máy chủ ASDK có các NIC được gắn vào cả bộ chuyển mạch Công cộng và SDN, đồng thời được thiết lập NAT để cho phép truy cập ra bên ngoài vào mạng công ty và (trong trường hợp được kết nối) vào internet.

Thay vì thực hiện bất kỳ thay đổi nào đối với máy chủ có thể gây khó khăn cho việc khôi phục sau này, chúng tôi sẽ triển khai một máy ảo hoàn toàn mới có NAT thứ hai, hoạt động theo hướng ngược lại. Điều này làm cho việc khôi phục trở thành một trường hợp đơn giản để ngừng hoạt động máy ảo đó trong tương lai.

Trên Máy chủ ASDK, hãy mở Trình quản lý Hyper-V và triển khai máy ảo Windows Server 2016 mới. Bạn có thể đặt các tệp VM vào một thư mục mới trong CSV C:\ClusterStorage\Volume1.

NewVM.png

VM có thể là Thế hệ 1 hoặc Thế hệ 2, điều này không tạo ra sự khác biệt cho mục đích của chúng tôi ở đây. Tôi vừa sử dụng mặc định Gen 1 vì nó phù hợp với Azure.

Đặt Bộ nhớ khởi động ở mức tối thiểu 2048MB và không sử dụng Bộ nhớ động.

StartupMemory.png

Gắn mạng vào SdnSwitch.

SDNSwitch.png

Nhấp qua các tùy chọn Đĩa cứng, sau đó trên Tùy chọn cài đặt, chỉ định ISO Máy chủ 2016. Thông thường, bạn sẽ có sẵn một máy chủ trên máy chủ để thực hiện triển khai ASDK, vì vậy hãy chỉ sử dụng nó.


2016ISO.png

Hoàn tất trình hướng dẫn nhưng không bật nguồn VM.

Mặc dù chúng tôi đã gắn NIC của VM vào Mạng SDN nhưng do mạng đó được quản lý bởi cơ sở hạ tầng SDN của Máy chủ 2016 nên theo mặc định, mạng này sẽ không thể giao tiếp với bất kỳ tài nguyên VM nào khác được gắn vào mạng đó. Đầu tiên chúng ta phải biến VM này thành một phần của họ SDN đó.

Trong cửa sổ PowerShell nâng cao trên máy chủ ASDK của bạn, hãy chạy như sau:

$ Cách ly = Get-VM -VMName ‘AzS-DC01’ | Nhận-VMNetworkAdapter | Get-VMNetworkAdapterIsolation

$VM = Get-VM -VMName ‘AzS-Router1’

$VMNetAd CHƯƠNG = $VM | Nhận-VMNetworkAdapter

$IsolationSettings = @{

    IsolationMode = ‘Vlan’

    AllowUntaggedTraffic = $true

    DefaultIsolationID = $Isolation.DefaultIsolationID

    MultiTenantStack = ‘tắt’

}

$VMNetAd CHƯƠNG | Set-VMNetworkAdapterIsolation @IsolationSettings

Set-PortProfileId -resourceID ([System.Guid]::Empty.tostring()) -VMName $VM.Name -VMNetworkAdapterName $VMNetAdapter.Name

Bây giờ NIC này là một phần của cơ sở hạ tầng SDN, chúng ta có thể tiếp tục thêm NIC thứ hai và kết nối nó với Switch công cộng.

PublicSwitch.png


Bây giờ bạn có thể bật máy ảo và cài đặt hệ điều hành Server 2016 – máy ảo này không cần phải nối miền. Sau khi hoàn tất, hãy mở bảng điều khiển tới VM từ Trình quản lý Hyper-V.

Mở cài đặt mạng và đổi tên các NIC để dễ nhận dạng hơn.

NIC.png

Cung cấp cho NIC SDN các cài đặt sau:

Địa chỉ IP: 192.168.200.201

Mạng con: 255.255.255.0

Cổng mặc định: 192.168.200.1

Máy chủ DNS: 192.168.200.67

Địa chỉ IP là IP không được sử dụng trên phạm vi cơ sở hạ tầng.

Cổng mặc định là Địa chỉ IP của Máy chủ ASDK, vẫn xử lý lưu lượng gửi đi.

Máy chủ DNS là Địa chỉ IP của AzS-DC01, xử lý độ phân giải DNS cho tất cả các dịch vụ Azure Stack.

IPSSettings1.png

Cung cấp cho NIC Mạng Công cộng một Địa chỉ IP chưa được sử dụng trên mạng công ty của bạn. Đừng sử dụng DHCP cho việc này vì bạn không muốn đặt cổng mặc định. Trong trường hợp của tôi, mạng nội bộ của tôi là 192.168.1.0/24 và tôi đã cung cấp octet cuối cùng giống như SDN NIC để tôi dễ nhớ hơn.

IPSettings2.png

Trên VM, mở cửa sổ PowerShell nâng cao và chạy lệnh sau:

NetNAT mới -Tên “NATSwitch” -InternalIPInterfaceAddressPrefix ” 192.168.1.0/24 ” -Verbose

Trường hợp dải IP khớp với cài đặt mạng con của mạng nội bộ của bạn.

Mặc dù chúng tôi có tuyến mặc định được thiết lập cho Máy chủ ASDK, Azure Stack cũng sử dụng Cân bằng tải phần mềm như một phần của cơ sở hạ tầng SDN, AzS-SLB01. Để tất cả hoạt động chính xác, chúng ta cần thiết lập một số tuyến tĩnh từ VM mới để chuyển lưu lượng truy cập thích hợp đến SLB.

Chạy phần sau trên máy ảo mới của bạn để thêm các tuyến tĩnh thích hợp:

phạm vi $ = 2.,48

foreach ($r trong $range) { tuyến đường thêm -p “192.168.102.$($r)” mặt nạ 255.255.255.255 192.168.200.64 }

phạm vi $ = 1..8

foreach ($r trong $range) { tuyến đường thêm -p “192.168.105.$($r)” mặt nạ 255.255.255.255 192.168.200.64 }
Vậy là tất cả quá trình thiết lập trên VM mới đã hoàn tất.

Tiếp theo, bạn sẽ cần thêm định tuyến thích hợp vào mạng nội bộ hoặc máy khách của mình. Cách thực hiện việc này tùy thuộc vào bạn, tuy nhiên, bạn sẽ cần thiết lập các lộ trình sau:

Mỗi:

192.168.100.0/24

192.168.101.0/24

192.168.102.0/24

192.168.103.0/24

192.168.104.0/24

192.168.105.0/24

192.168.200.0/24

… cần sử dụng IP chuyển mạch công cộng của máy ảo mới mà bạn đã triển khai làm Cổng của họ.

Trong trường hợp của tôi, tôi đã định cấu hình cái này trên bộ định tuyến của mình như bên dưới (bấm để mở rộng).


RouterConfig.png

Bạn sẽ cần DNS để có thể phân giải các mục trong môi trường ASDK từ mạng công ty của bạn. Bạn có thể thiết lập bộ chuyển tiếp từ cơ sở hạ tầng DNS hiện có của mình tới 192.168.200.67 (AzS-DC01) hoặc bạn có thể thêm 192.168.200.67 làm máy chủ DNS bổ sung trong cài đặt mạng của máy khách hoặc máy chủ.

Cuối cùng, trên Máy chủ ASDK, hãy mở MMC và thêm phần đính vào Chứng chỉ cục bộ.

Xuất hai chứng chỉ sau và nhập chúng vào vùng chứa CA gốc đáng tin cậy trên bất kỳ máy nào mà bạn sẽ truy cập các dịch vụ ASDK từ đó.

MMCCerts.png

Bây giờ bạn có thể điều hướng đến https://portal.local.azurestack.external từ mạng nội bộ của mình.

Cổng thông tin.png

Nếu bạn triển khai bất kỳ dịch vụ Azure Stack nào, ví dụ như WebApp dịch vụ ứng dụng, bạn cũng sẽ có thể truy cập các dịch vụ đó qua mạng nội bộ của mình.

AppService.png

Ngay cả việc triển khai Ứng dụng chức năng HTTPTrigger từ Visual Studio giờ đây cũng hoạt động tương tự từ mạng nội bộ của bạn đến Azure Stack giống như đối với Public Azure (nhấp để mở rộng).

Triển khaiFunctionFromVS.gif

Nếu bất cứ lúc nào bạn muốn đưa môi trường trở lại cấu hình mặc định, chỉ cần tắt nguồn VM mới mà bạn đã triển khai.

Thiết lập này cho phép thử nghiệm nhiều kịch bản mới không có sẵn với ASDK và có thể nâng cao đáng kể giá trị của việc chạy Bộ công cụ phát triển ngăn xếp Azure trong trung tâm dữ liệu của bạn, cho phép khả năng tương tác , di chuyển, tích hợp, kết hợpvà các kịch bản nhiều đám mây.