Aracılığıyla paylaş


Azure IoT Katmanlı Ağ Yönetimi Önizlemesi için örnek ağ ortamı oluşturma

Önemli

Azure Arc tarafından etkinleştirilen Azure IoT İşlemleri Önizlemesi şu anda ÖNİzLEME aşamasındadır. Bu önizleme yazılımını üretim ortamlarında kullanmamalısınız.

Beta veya önizleme aşamasında olan ya da başka bir şekilde henüz genel kullanıma sunulmamış olan Azure özelliklerinde geçerli olan yasal koşullar için bkz. Microsoft Azure Önizlemeleri için Ek Kullanım Koşulları.

Azure IoT Katmanlı Ağ Yönetimi Önizleme hizmetini kullanmak için yalıtılmış bir ağ ortamı yapılandırmanız gerekir. Örneğin, ISA-95/Purdue Ağ mimarisi. Bu sayfada, yalıtıma nasıl ulaşmak istediğinize bağlı olarak bir test ortamı ayarlamak için birkaç örnek sağlanır.

  • Fiziksel segmentasyon - Ağlar fiziksel olarak ayrılmıştır. Bu durumda, hem İnternet'e yönelik ağa hem de yalıtılmış ağa bağlanmak için Katmanlı Ağ Yönetimi'nin bir çift NIC (Ağ Arabirimi Kartı) konağına dağıtılması gerekir.
  • Mantıksal segmentasyon - Ağ, VLAN, alt ağ veya güvenlik duvarı gibi yapılandırmalarla mantıksal olarak segmentlere ayrılmıştır. Katmanlı Ağ Yönetimi tek bir uç noktaya sahiptir ve kendi ağ katmanına ve yalıtılmış katmana görünür olacak şekilde yapılandırılmıştır.

Her iki yaklaşım da, ağ trafiğini üst katmandaki Katmanlı Ağ Yönetimi örneğine yönlendirmek için yalıtılmış ağ katmanında özel bir DNS yapılandırmanızı gerektirir.

Önemli

Katmanlı Ağ Yönetimi belgelerinde özetlenen ağ ortamları, Katmanlı Ağ Yönetimi'ni test etme örnekleridir. Bu, üretim için ağ ve küme topolojinizi nasıl derlediğinize ilişkin bir öneri değildir.

Yalıtılmış ağı fiziksel segmentasyon ile yapılandırma

Aşağıdaki örnek yapılandırma, en düşük fiziksel cihazlara sahip basit bir yalıtılmış ağdır.

Diagram of a physical device isolated network configuration.

  • Kablosuz erişim noktası yerel ağ ayarlamak için kullanılır ve İnternet erişimi sağlamaz.
  • Düzey 4 kümesi , İnternet'e ve yerel ağa bağlanan bir çift ağ arabirim kartı (NIC) fiziksel makinesinde barındırılan tek düğüm bir kümedir.
  • Düzey 3 kümesi , fiziksel makinede barındırılan tek düğüm bir kümedir. Bu cihaz kümesi yalnızca yerel ağa bağlanır.

Katmanlı Ağ Yönetimi, çift NIC kümesine dağıtılır. Yerel ağdaki küme, Azure ve Arc hizmetlerine erişmek için ara sunucu olarak Katmanlı Ağ Yönetimi'ne bağlanır. Buna ek olarak, etki alanı adı çözümlemesi sağlamak ve trafiği Katmanlı Ağ Yönetimi'ne yönlendirmek için yerel ağda özel bir DNS gerekir. Daha fazla bilgi için bkz . Özel DNS yapılandırma.

Yalıtılmış Ağı mantıksal kesimleme ile yapılandırma

Aşağıdaki diyagramda, her düzeyin alt ağlarla mantıksal olarak segmentlere ayrıldığı yalıtılmış bir ağ ortamı gösterilmektedir. Bu test ortamında her düzeyde birden çok küme vardır. Kümeler AKS Edge Essentials veya K3S olabilir. Düzey 4 ağındaki Kubernetes kümesinin doğrudan İnternet erişimi vardır. Düzey 3 ve altındaki Kubernetes kümelerinin İnternet erişimi yoktur.

Diagram of a logical segmentation isolated network.

Bu test kurulumundaki birden çok ağ düzeyi, bir ağ içindeki alt ağlar kullanılarak gerçekleştirilir:

  • Düzey 4 alt ağı (10.104.0.0/16) - Bu alt ağın İnternet erişimi vardır. Tüm istekler internet üzerindeki hedeflere gönderilir. Bu alt ağ, 10.104.0.10 IP adresine sahip tek bir Windows 11 makinesine sahiptir.
  • Düzey 3 alt ağı (10.103.0.0/16) - Bu alt ağın İnternet erişimi yoktur ve yalnızca Düzey 4'teki 10.104.0.10 IP adresine erişimi olacak şekilde yapılandırılmıştır. Bu alt ağ, IP adresi 10.103.0.33 olan bir Windows 11 makinesi ve DNS sunucusunu barındıran bir Linux makinesi içerir. DNS sunucusu, Özel DNS yapılandırma'daki adımlar kullanılarak yapılandırılır. DNS yapılandırmasındaki tüm etki alanları 10.104.0.10 adresine eşlenmelidir.
  • Düzey 2 alt ağı (10.102.0.0/16) - Düzey 3 gibi bu alt ağın İnternet erişimi yoktur. Yalnızca düzey 3'teki 10.103.0.33 IP adresine erişimi olacak şekilde yapılandırılır. Bu alt ağ, 10.102.0.28 IP adresine sahip bir Windows 11 makinesi ve dns sunucusunu barındıran bir Linux makinesi içerir. Bu ağda 10.102.0.28 IP adresine sahip bir Windows 11 makinesi (düğüm) vardır. DNS yapılandırmasındaki tüm etki alanları 10.103.0.33 adresine eşlenmelidir.

Bu tür bir ağ ortamını ayarlamak için aşağıdaki örneklere bakın.

En düşük donanımla mantıksal segmentlere ayırma örneği

Bu örnekte her iki makine de İnternet'e bağlanan bir erişim noktasına (AP) bağlıdır. Düzey 4 konak makinesi İnternet'e erişebilir. Düzey 3 konağı, AP'nin yapılandırmasıyla İnternet'e erişim için engellenir. Örneğin, güvenlik duvarı veya istemci denetimi. Her iki makine de aynı ağda olduğundan, düzey 4 kümesinde barındırılan Katmanlı Ağ Yönetimi örneği varsayılan olarak 3. düzey makine ve kümeye görünür. Etki alanı adı çözümlemesi sağlamak ve trafiği Katmanlı Ağ Yönetimi'ne yönlendirmek için yerel ağda fazladan bir özel DNS ayarlanması gerekir. Daha fazla bilgi için bkz . Özel DNS yapılandırma.

Diagram of a logical isolated network configuration.

Azure'da mantıksal segmentlere ayırma örneği

Bu örnekte, Azure'da bir sanal ağ ve Linux sanal makinesi ile bir test ortamı oluşturulur.

Önemli

Sanal ortam yalnızca araştırma ve değerlendirme içindir. Daha fazla bilgi için bkz . Azure IoT İşlemleri Önizlemesi için doğrulanmış ortamlar .

  1. Azure aboneliğinizde bir sanal ağ oluşturun. En az iki katman için alt ağlar oluşturun (düzey 4 ve düzey 3). Screenshot for virtual network in Azure.
  2. Sıçrama kutusu veya geliştirici makinesinin katmanlar arasında makineye veya kümeye uzaktan erişmesi için ek bir alt ağ oluşturmak isteğe bağlıdır. bu kurulum, ikiden fazla ağ katmanı oluşturmayı planlıyorsanız kullanışlıdır. Aksi takdirde, sıçrama kutusu makinesini düzey 4 ağına bağlayabilirsiniz.
  3. Her düzey için ağ güvenlik grupları oluşturun ve buna göre alt ağa ekleyin.
  4. Düzey 4 güvenlik grubu için varsayılan değeri kullanabilirsiniz.
  5. Düzey 3 (ve alt düzey) güvenlik grubu için ek gelen ve giden kuralları yapılandırmanız gerekir.
    • Tüm ağ trafiğini reddetmek için gelen ve giden güvenlik kuralları ekleyin.
    • Daha yüksek bir öncelikle, 4. düzey alt ağın IP aralığından gelen ve giden ağ trafiğine izin vermek için gelen ve giden güvenlik kuralları ekleyin.
    • [İsteğe bağlı] Sıçrama kutusu alt ağı oluşturursanız, bu alt ağa gelen ve giden trafiğe izin vermek için gelen ve giden kuralları oluşturun. Screenshot for level 3 security group.
  6. Düzey 3 ve düzey 4'te Linux VM'leri oluşturun.

Özel DNS yapılandırma

Düzey 3 ve altı için özel bir DNS gereklidir. Kümeden kaynaklanan ağ trafiği için DNS çözümlemesinin üst düzey Katmanlı Ağ Yönetimi örneğine işaret edilmesini sağlar. Mevcut veya üretim ortamında, DNS tasarımınıza aşağıdaki DNS çözümlemelerini ekleyin. Katmanlı Ağ Yönetimi hizmeti ve Azure IoT İşlemleri için bir test ortamı ayarlamak istiyorsanız aşağıdaki örneklere başvurabilirsiniz.

CoreDN'leri yapılandırma

DNS kurulumuna birçok farklı yolla ulaşılsa da, bu örnekte K3S kümeleri için varsayılan DNS sunucusu olan CoreDNS tarafından sağlanan bir uzantı mekanizması kullanılır. Çözümlenmesi gereken izin verilenler listesindeki URL'ler CoreDNS'ye eklenir.

Önemli

CoreDNS yaklaşımı yalnızca 3. düzeydeki Ubuntu konağındaki K3S kümesi için geçerlidir.

Düzey 4 Katmanlı Ağ Yönetimi Önizlemesi'nden yapılandırma haritası oluşturma

Düzey 4 kümesi ve Katmanlı Ağ Yönetimi hazır olduktan sonra aşağıdaki adımları gerçekleştirin.

  1. Aşağıdaki komutla Katmanlı Ağ Yönetimi hizmetinin IP adresini onaylayın:

    kubectl get services -n azure-iot-operations
    

    Çıkış aşağıdaki gibi görünmelidir. Hizmetin IP adresi şeklindedir 20.81.111.118.

    NAME          TYPE           CLUSTER-IP     EXTERNAL-IP     PORT(S)                      AGE
    lnm-level4   LoadBalancer   10.0.141.101   20.81.111.118   80:30960/TCP,443:31214/TCP   29s
    
  2. Yapılandırma eşlemelerini aşağıdaki komutla görüntüleyin:

    kubectl get cm -n azure-iot-operations
    

    Çıktı aşağıdaki örnekteki gibi görünmelidir:

    NAME                           DATA   AGE
    aio-lnm-level4-config          1      50s
    aio-lnm-level4-client-config   1      50s
    
  3. öğesini özelleştirin aio-lnm-level4-client-config. Bu yapılandırma, düzey 3 kümesinden en üst düzey Katmanlı Ağ Yönetimi örneğine trafiği iletmek için düzey 3 kurulumunun bir parçası olarak gereklidir.

    # set the env var PARENT_IP_ADDR to the ip address of level 4 LNM instance.
      export PARENT_IP_ADDR="20.81.111.118"
    
    # run the script to generate a config map yaml
      kubectl get cm aio-lnm-level4-client-config -n azure-iot-operations -o yaml | yq eval '.metadata = {"name": "coredns-custom", "namespace": "kube-system"}' -| sed 's/PARENT_IP/'"$PARENT_IP_ADDR"'/' > configmap-custom-level4.yaml
    

    Bu adım, adlı bir dosya oluşturur configmap-custom-level4.yaml

K3S'nin düzey 3 CoreDNS'sini yapılandırma

K3S kümesini ayarladıktan ve 3. düzey yalıtılmış katmana taşıdıktan sonra, düzey 3 K3S'nin CoreDNS'sini daha önce oluşturulmuş özelleştirilmiş istemci yapılandırmasıyla yapılandırın.

  1. öğesini configmap-custom-level4.yaml düzey 3 konağına veya kümeye uzaktan eriştiğiniz sisteme kopyalayın.

  2. Aşağıdaki komutları çalıştırın:

    # Create a config map called coredns-custom in the kube-system namespace
    kubectl apply -f configmap-custom-level4.yaml
    
    # Restart coredns
    kubectl rollout restart deployment/coredns -n kube-system
    
    # validate DNS resolution
    kubectl run -it --rm --restart=Never busybox --image=busybox:1.28 -- nslookup east.servicebus.windows.net
    
    # You should see the following output.
    kubectl run -it --rm --restart=Never busybox --image=busybox:1.28 -- nslookup east.servicebus.windows.net
    Server:    10.43.0.10
    Address 1: 10.43.0.10 kube-dns.kube-system.svc.cluster.local
    
    Name:      east.servicebus.windows.net
    Address 1: 20.81.111.118
    pod "busybox" deleted
    
    # Note: confirm that the resolved ip addresss matches the ip address of the level 4 Layered Network Management instance.
    
  3. Önceki adım, küme içindeki izin verilenler listesine alınan URL'leri çözümlemek için DNS yapılandırmasını 4. düzeye ayarlar. Küme dışındaki DNS'nin de aynı işlemi gerçekleştirdiğinden emin olmak için, trafiği K3S kümesi içindeki CoreDNS'ye iletmek için systemd-resolved'ı yapılandırmanız gerekir. K3S ana bilgisayarında aşağıdaki komutları çalıştırın: Aşağıdaki dizini oluşturun:

        sudo mkdir /etc/systemd/resolved.conf.d
    

    Aşağıdaki içeriklere sahip adlı lnm.conf bir dosya oluşturun. IP adresi, kube-system ad alanında çalışan kube-dns hizmetinin düzey 3 küme IP adresi olmalıdır.

    [Resolve]
    DNS=<PUT KUBE-DNS SERVICE IP HERE> 
    DNSStubListener=no
    

    DNS çözümleyicisini yeniden başlatın:

    sudo systemctl restart systemd-resolved
    

Azure IoT Katmanlı Ağ Yönetimi Önizlemesi nedir?