Share via


Az Azure Operator Service Manager ajánlott eljárásai a hálózati függvények előkészítéséhez és üzembe helyezéséhez

A Microsoft számos bevált eljárást fejlesztett ki a hálózati függvények (NF-ek) Azure Operator Service Manager használatával történő kezelésére. Ez a cikk irányelveket tartalmaz, amelyeket az NF-szállítók, a telco-operátorok és partnereik követhetnek a kialakítás optimalizálásához. Tartsa szem előtt ezeket a gyakorlatokat az NF-k előkészítésekor és üzembe helyezésekor.

Általános szempontok

Javasoljuk, hogy először a legegyszerűbb NF-eket (egy vagy két diagramot) helyezze üzembe a gyorsútmutatók használatával, hogy megismerkedjen a teljes folyamattal. A további iterációkban hozzáadhatja a szükséges konfigurációs adatokat. A rövid útmutatók végighaladtával vegye figyelembe a következő szempontokat:

  • Az összetevők strukturálása a tervezett használathoz igazodva. Érdemes lehet elkülöníteni a globális összetevőket azoktól az összetevőktől, amelyeket hely vagy példány szerint szeretne megkülönböztetni.
  • Győződjön meg arról, hogy több NF szolgáltatásösszetétele a hálózat igényeinek megfelelő paraméterekkel rendelkezik. Előfordulhat például, hogy egy 1000 értéket tartalmazó diagramot csak 100-et szab testre. Győződjön meg arról, hogy a konfigurációs csoport sémája (CGS) rétegben (a következő szakaszokban részletesebben is lefedve) csak 100-et tesz elérhetővé.
  • Gondolja át, hogyan szeretné elkülöníteni az infrastruktúrát (például fürtöket) vagy az összetevők tárolóit, valamint a szállítók közötti hozzáférést, különösen egyetlen szolgáltatáson belül. Adja meg, hogy a közzétevői erőforrások készlete megfeleljen ennek a modellnek.
  • Az Azure Operator Service Manager-hely egy logikai fogalom, egy üzembehelyezési cél ábrázolása. Ilyen például egy Kubernetes-fürt a tárolóalapú hálózati függvényekhez (CNF-ekhez), vagy egy Azure Operator Nexus kiterjesztett egyéni hely a virtualizált hálózati függvényekhez (VNF-ekhez). Ez nem egy fizikai peremhálózati hely ábrázolása, ezért olyan eseteket használ, amelyekben több hely osztozik ugyanazon a fizikai helyen.
  • Az Azure Operator Service Manager különböző API-kat biztosít, így egyszerűen kombinálható az ADO-val vagy más folyamateszközökkel.

Közzétevői szempontok

  • Javasoljuk, hogy NF-szállítónként hozzon létre egyetlen közzétevőt. Ez a gyakorlat optimális támogatást, karbantartást és szabályozási élményt nyújt az összes beszállító számára, és leegyszerűsíti a hálózati szolgáltatás kialakítását, ha több szállító több NF-éből áll.

  • Miután tesztelte és jóváhagyta az Azure Operator Service Manager közzétevői erőforrásainak és összetevőinek kívánt készletét éles használatra, javasoljuk, hogy a teljes készletet nem módosíthatóként jelölje meg a véletlen módosítások elkerülése és a konzisztens üzembe helyezés biztosítása érdekében. Fontolja meg a nem módosítható képességeket az éles környezetben használt erőforrások és összetevők és a tesztelési és fejlesztési célokra használt erőforrások és összetevők megkülönböztetése érdekében. Lekérdezheti a közzétevő erőforrásainak állapotát és az összetevő-jegyzékeket annak megállapításához, hogy mely erőforrások vannak módosíthatatlanként megjelölve. További információ: Publisher-bérlők, előfizetések, régiók és előzetes verzió kezelése.

    Tartsa szem előtt a következő logikát:

    • Ha a Hálózati szolgáltatástervező függvény (NSDV) nem módosíthatóként van megjelölve, a CGS-t is módosíthatatlanként kell megjelölni. Ellenkező esetben az üzembe helyezési hívás meghiúsul.
    • Ha a hálózati függvények tervezési verziója (NFDV) nem módosíthatóként van megjelölve, az összetevő-jegyzékfájlt is módosíthatatlanként kell megjelölni. Ellenkező esetben az üzembe helyezési hívás meghiúsul.
    • Ha csak az összetevőjegyzék vagy a CGS van módosíthatatlanként megjelölve, az üzembe helyezési hívás sikeres lesz, függetlenül attól, hogy az NFDV és az NSDV nem módosíthatóként van-e megjelölve.
    • Ha módosíthatatlanként jelöl meg egy összetevő-jegyzékfájlt, azzal biztosítja, hogy a jegyzékben felsorolt összes összetevő (általában diagramok, képek és Azure Resource Manager-sablonok [ARM-sablonok]) is módosíthatók legyenek a szükséges engedélyek kikényszerítésével az összetevő-tárolóban.
  • Fontolja meg a megállapodás szerinti elnevezési konvenciók és szabályozási technikák használatát a fennmaradó hiányosságok megoldásához.

Hálózati függvénydefiníciós csoport és verzió szempontjai

A hálózati függvénydefiníciós csoport (NFDG) azt a legkisebb összetevőt jelöli, amelyet önállóan szeretne felhasználni több szolgáltatásban. Az NFDG minden része mindig együtt lesz üzembe helyezve. Ezeket a részeket nevezik networkFunctionApplications. Természetes például egy több Helm-diagramból és lemezképből álló NF előkészítése egyetlen NFDG-ként, ha ezeket az összetevőket mindig együtt helyezi üzembe. Azokban az esetekben, amikor több NFs mindig együtt van üzembe helyezve, ésszerű, hogy mindegyikhez egyetlen NFDG legyen. Egyetlen NFDG-nek több NFDV-je is lehet.

A tárolóalapú hálózati függvénydefiníciós verziók (CNF NFDV-k) esetében a networkFunctionApplications lista csak helm-csomagokat tartalmazhat. Érdemes több helm-csomagot is tartalmazni, ha mindig együtt vannak üzembe helyezve és törölve.

Virtualizált hálózati függvénydefiníciós verziók (VNF NFDV-k) esetén a networkFunctionApplications listának tartalmaznia kell legalább egy VhdImageFile és egy ARM-sablont. Az ARM-sablonnak egyetlen virtuális gépet kell üzembe helyeznie. Ha több virtuális gépet szeretne üzembe helyezni egyetlen VNF-hez, mindenképpen használjon külön ARM-sablonokat minden egyes virtuális géphez.

Az ARM-sablon csak a következő erőforrás-szolgáltatóktól telepíthet Resource Manager-erőforrásokat:

  • Microsoft.Compute
  • Microsoft.Network
  • Microsoft.NetworkCloud
  • Microsoft.Storage
  • Microsoft.NetworkFabric
  • Microsoft.Authorization
  • Microsoft.ManagedIdentity

Megjegyzés:

Az előző listán kívül mást tartalmazó ARM-sablonok esetében a PUT-hívások és a VNF-re való ismételt üzembe helyezése érvényesítési hibát eredményez.

Gyakori használati esetek, amelyek a hálózati függvények alverziójának vagy főverziójának frissítését váltják ki

  • A CGS/konfigurációs csoport értékeinek (CGV-k) frissítése egy meglévő kiadáshoz, amely aktiválja a módosítást deployParametersMappingRuleProfile.
  • Az NFDV-ben keményen kódolt értékek frissítése.
  • Az inaktív összetevők megjelölése, hogy megakadályozzák az üzembe helyezésüket.applicationEnablement: Disabled
  • Új NF-kiadás, például diagramok és képek.

Megjegyzés:

A szükséges módosítások minimális száma minden alkalommal, amikor egy adott NF hasznos adatai megváltoznak. Egy kisebb vagy nagyobb NF-kiadáshoz az új CGS-paraméterek közzététele nélkül csak az összetevő-jegyzék frissítése, az új képek és diagramok leküldése és az NFDV-verzió ütközése szükséges.

A hálózati szolgáltatás tervezési csoportjának és verziójának szempontjai

A hálózati szolgáltatástervezési csoport (NSDG) egy vagy több NFDG-ből és minden infrastruktúra-összetevőből (például Nexus Azure Kubernetes Service [NAKS]/Azure Kubernetes Service [AKS] fürtökből és virtuális gépekből) álló összetett, egyszerre üzembe helyezett. A helyhálózati szolgáltatás (SNS) egyetlen NSDV-ra hivatkozik. Az ilyen kialakítás garantálja a hálózati szolgáltatás konzisztens és megismételhető üzembe helyezését egy adott helyre egyetlen SNS PUT-ből.

Példa egy NSDG-ra:

  • Hitelesítési kiszolgálói függvény (AUSF) NF
  • Egyesített adatkezelés (UDM) NF
  • Rendszergazda AUSF/UDM-et támogató virtuális gép
  • Unity Cloud (UC) munkamenet-kezelési függvény (SMF) NF
  • NAKS-fürt, amelyre az AUSF, az UDM és az SMF telepítve van

Ez az öt összetevő egyetlen NSDG-t alkot. Egyetlen NSDG több NSDV-vel is rendelkezhet.

Általános használati esetek, amelyek elindítják a Hálózati szolgáltatás tervezési verziójának alverziója vagy főverzió frissítését

  • CGS-k létrehozása vagy törlése.
  • Az üzembe helyezett NF-ekhez társított NF ARM-sablon módosításai.
  • Az infrastruktúra ARM-sablonjának változásai, például AKS/NAKS vagy virtuális gép.

Megjegyzés:

Az NFDV változásai nem indíthatnak NSDV-frissítést. Az NFDV-értéket paraméterként kell elérhetővé tenni a CGS-ben, így az operátorok a CGV-k használatával szabályozhatják a telepítést.

Konfigurációs csoport sémájának szempontjai

Javasoljuk, hogy mindig egyetlen CGS-vel kezdje a teljes NF-hez. Ha vannak helyspecifikus vagy példányspecifikus paraméterek, akkor is javasoljuk, hogy tartsa őket egyetlen CGS-ben. Ha több összetevő (ritkán NFs, gyakrabban infrastruktúra) vagy konfigurációk vannak megosztva több NF-ben, javasoljuk több CGS-re való felosztást. A CGS-k száma határozza meg a CGV-k számát.

Eset

  • A FluentD, a Kibana és a Splunk (közös külső összetevők) mindig üzembe vannak helyezve az NSD-n belüli összes NF-ben. Javasoljuk, hogy ezeket az összetevőket egyetlen NFDG-be csoportosítsa.
  • Az NSD több NF-et tartalmaz, amelyek mindegyike rendelkezik néhány konfigurációval (üzembe helyezési hely, közzétevő neve és néhány diagramkonfiguráció).

Ebben a forgatókönyvben azt javasoljuk, hogy egyetlen globális CGS használatával tegye közzé a közös NF- és külső összetevők konfigurációit. Igény szerint meghatározhatja az NF-specifikus CGS-t.

A közzéteendő paraméterek kiválasztása

  • A CGS-nek csak olyan paraméterekkel kell rendelkeznie, amelyeket az NF-ek (0/N-konfiguráció) vagy megosztott összetevők használnak.
  • A ritkán konfigurált paramétereknek meg kell határozniuk az alapértelmezett értékeket.
  • Ha több CGS-t használ, javasoljuk, hogy ne legyen átfedés a paraméterek között. Ha átfedésre van szükség, győződjön meg arról, hogy a paraméternevek egyértelműen megkülönböztethetők a CGS-k között.
  • Az API-n (Azure Operator Nexus, Azure Operator Service Manager) keresztül definiálható értékeket figyelembe kell venni a CGS-hez. Ellentétben például a konfigurációs értékekkel a CloudInit-fájlokon keresztül.
  • Ha nem biztos benne, a jó kiindulási pont a paraméter felfedése, és a CGS-ben meg van adva egy ésszerű alapértelmezett érték. Az alábbi példa a CGS mintáját és a megfelelő CGV hasznos adatokat mutatja be.
  • Egyetlen felhasználó által hozzárendelt felügyelt identitást kell használni az összes NF ARM-sablonban, és a CGS-en keresztül kell elérhetővé tenni.

CGS hasznos adatok:

{ 
  "type": "object", 
  "properties": { 
    "abc": { 
    "type": "integer", 
    "default": 30
    }, 
    "xyz": { 
    "type": "integer", 
    "default": 40
    },
    "qwe": {
    "type": "integer" //doesn't have defaults
    }
  }
  "required": "qwe"
}

Az operátor által átadott megfelelő CGV hasznos adat:

{
"qwe": 20
}

Az Azure Operator Service Manager által létrehozott CGV-hasznos adatok:

{
"abc": 30,
"xyz": 40,
"qwe": 20
}

Konfigurációs csoport értékeinek szempontjai

A CGV-erőforrás létrehozása előtt ellenőrizheti, hogy a mögöttes YAML- vagy JSON-fájl sémája és értékei megegyeznek-e a megfelelő CGS által várt értékkel. Ennek egyik lehetősége a Visual Studio Code YAML-bővítményének használata.

CLI-szempontok

Az Azure Operator Service Manager CLI-bővítménye segít az NFD-k és NSD-k közzétételében. Ezzel az eszközzel hozhat létre új NFD-ket és NSD-ket. Fontolja meg a parancssori felület használatát a kezdeti fájlok létrehozásához. Ezután a közzététel előtt szerkessze őket infrastruktúra-összetevők beépítéséhez.

Helyhálózati szolgáltatással kapcsolatos szempontok

Javasoljuk, hogy egyetlen SNS-t használjon a teljes webhelyhez, beleértve az infrastruktúrát is. Az SNS-nek minden szükséges infrastruktúrát üzembe kell helyeznie (például NAKS/AKS-fürtöket és virtuális gépeket), majd üzembe kell helyeznie a szükséges NF-eket. Az ilyen kialakítás garantálja a hálózati szolgáltatás konzisztens és megismételhető üzembe helyezését egy adott helyre egyetlen SNS PUT-ből.

Javasoljuk, hogy minden SNS egy felhasználó által hozzárendelt felügyelt identitással legyen üzembe helyezve, nem pedig rendszer által hozzárendelt felügyelt identitással. Ennek a felhasználó által hozzárendelt felügyelt identitásnak rendelkeznie kell az NFDV elérésére vonatkozó engedélyekkel, és magában kell rendelkeznie a felügyelt identitáskezelő szerepkörével. További információ: Felhasználó által hozzárendelt felügyelt identitás létrehozása és hozzárendelése.

Azure Operator Service Manager-erőforrás-leképezés használati esetenként

Az alábbi két forgatókönyv az Azure Operator Service Manager erőforrás-leképezését mutatja be.

Forgatókönyv: Önálló hálózati függvény

Egy egy vagy két alkalmazásösszetevővel rendelkező NF van üzembe helyezve egy NAKS-fürtben.

Erőforrások lebontása:

  • NFDG: Ha az összetevők egymástól függetlenül használhatók, akkor két NFDG,egy összetevőnként. Ha az összetevők mindig együtt vannak üzembe helyezve, akkor egyetlen NFDG lesz.
  • NFDV: Szükség szerint az előző "Gyakori használati esetek" szakaszban említett használati esetek alapján, amelyek NFDV-alverzió- vagy főverziófrissítéseket aktiválnak.
  • NSDG: Egyszemélyes. Egyesíti az NF-eket és a Kubernetes-fürtdefiníciókat.
  • NSDV: Szükség esetén az NSDV-al- vagy főverziófrissítéseket aktiváló előző "Gyakori használati esetek" szakaszban említett használati esetek alapján.
  • CGS: Önálló. Javasoljuk, hogy a CGS minden üzembe helyezett összetevőhöz és infrastruktúrához tartalmaz alszakaszokat a könnyebb felügyelet érdekében, és tartalmazza az NFD-k verzióit is.
  • CGV: A CGS-k száma alapján önálló.
  • SNS: NSDV-nként önálló.

Forgatókönyv: Több hálózati függvény

Több NF van üzembe helyezve néhány megosztott és független összetevővel egy NAKS-fürtben.

Erőforrások lebontása:

  • NFDG:
    • NFDG az összes megosztott összetevőhöz.
    • NFDG minden független összetevőhöz vagy NF-hez.
  • NFDV: Az NFDV-al- vagy főverziófrissítéseket aktiváló előző "Gyakori használati esetek" szakaszban említett használati esetenként több NFDG-nként.
  • NSDG: Egyszemélyes. Egyesíti az összes NF-t, megosztott és független összetevőt és infrastruktúrát (Kubernetes-fürt vagy bármely támogató virtuális gép).
  • NSDV: Szükség esetén az NSDV-al- vagy főverziófrissítéseket aktiváló előző "Gyakori használati esetek" szakaszban említett használati esetek alapján.
  • CGS:
    • Egyetlen. Globális minden olyan összetevőhöz, amely megosztott konfigurációs értékekkel rendelkezik.
    • NF CGS/NF, beleértve az NFD verzióját is.
    • A paraméterek teljes számától függően érdemes lehet az összes CGS-t egyetlen CGS-be egyesíteni.
  • CGV: Egyenlő a CGS-k számával.
  • SNS: NSDV-nként önálló.

Szoftverfrissítési szempontok

Feltételezve, hogy az NF-k támogatják a helyszíni/a szolgáltatáson belüli frissítéseket a CNF-ekhez:

  • Ha új diagramokat és rendszerképeket ad hozzá, az Azure Operator Service Manager telepíti az új diagramokat.
  • Ha egyes diagramok és képek el lettek távolítva, az Azure Operator Service Manager törli a már nem deklarált diagramokat az NFDV-ben.
  • Az Azure Operator Service Manager ellenőrzi, hogy az NFDV/NSDV ugyanabból az NFDG/NSDG-ből származik-e, és így ugyanaz a közzétevő. A közzétevők közötti frissítések nem támogatottak.

VNF-ekhez:

  • A helyszíni frissítések jelenleg nem támogatottak. Egymás mellett kell létrehoznia egy új VNF-et egy frissített képpel. Ezután törölje a régebbi VNF-et az SNS törlésével.
  • Ha a VNF virtuális gépek párjaként van üzembe helyezve a magas rendelkezésre állás érdekében, úgy tervezheti meg a hálózati szolgáltatást, hogy egyenként törölheti és frissítheti a virtuális gépeket. Az egyes virtuális gépek törlésének és frissítésének engedélyezéséhez a következő kialakítást javasoljuk:
    • Minden virtuális gép üzembe helyezése dedikált ARM-sablonnal történik.
    • Az ARM-sablonból két paramétert kell elérhetővé tenni a CGS-en keresztül: a virtuális gép nevét, hogy meg lehessen adni, hogy melyik példány elsődleges/másodlagos, és az üzembe helyezési szabályzat határozza meg, hogy engedélyezett-e a virtuális gép üzembe helyezése.
    • Az NFDV-ben, és templateParameters úgy kell parametrizálnia, deployParameters hogy az egyedi értékeket CGV-k használatával adja meg mindegyikhez.

Magas rendelkezésre állás és vészhelyreállítási szempontok

Az Azure Operator Service Manager egy regionális szolgáltatás, amelyet a rendelkezésre állási zónákban helyeznek üzembe az őket támogató régiókban. Az összes régióban, ahol az Azure Operator Service Manager elérhető, tekintse meg az Azure-termékeket régiónként. A rendelkezésre állási zónákkal rendelkező Azure-régiók listáját a megfelelő Azure-régió kiválasztása című témakörben találja.

Vegye figyelembe a következő magas rendelkezésre állási és vészhelyreállítási követelményeket:

  • A georedundancia biztosításához győződjön meg arról, hogy minden régióban rendelkezik közzétevővel, ahol NF-eket szeretne üzembe helyezni. Fontolja meg a folyamatok használatát annak érdekében, hogy a közzétevői összetevők és erőforrások szinkronban legyenek a régiók között.
  • A közzétevő nevének régiónként egyedinek kell lennie a Microsoft Entra-bérlőnként.

Megjegyzés:

Ha egy régió elérhetetlenné válik, üzembe helyezhet (de nem frissíthet) egy NF-et egy másik régió közzétevői erőforrásainak használatával. Feltételezve, hogy az összetevők és az erőforrások azonosak a közzétevők között, csak az SNS-erőforrás hasznos adataiban kell módosítania az networkServiceDesignVersionOfferingLocation értéket.

resource sns 'Microsoft.HybridNetwork/sitenetworkservices@2023-09-01’ = {
 name: snsName
 location: location
 identity: {
  type: 'SystemAssigned'
 }
 properties: {
   publisherName: publisherName
   publisherScope: 'Private'
   networkServiceDesignGroupName: nsdGroup
   networkServiceDesignVersionName: nsdvName
   networkServiceDesignVersionOfferingLocation: location

Hibaelhárítási megfontolások

A telepítés és a frissítés során alapértelmezés szerint az atomi és a várakozási beállítások be vannak állítva true, és a művelet időtúllépése a következőre 27 minutesvan állítva. Az előkészítés során javasoljuk, hogy állítsa be az atomi jelzőt, hogy false megakadályozza a Helm sikertelen visszaállítását. Ennek optimális módja az NF ARM-sablonjában van.

Az ARM-sablonban adja hozzá a következő szakaszt:

"roleOverrideValues": [
    "{\"name\":\"NF_component_name>\",\"deployParametersMappingRuleProfile\":{\"helmMappingRuleProfile\":{\"options\":{\"installOptions\":{\"atomic\":\"false\",\"wait\":\"true\",\"timeout\":\"100\"},\"upgradeOptions\":{\"atomic\":\"true\",\"wait\":\"true\",\"timeout\":\"4\"}}}}}"
]

Az összetevő neve az NFDV-ben van definiálva:

     networkFunctionTemplate: {
      nfviType: 'AzureArcKubernetes'
      networkFunctionApplications: [
        {
          artifactType: 'HelmPackage'
          name: 'fed-crds'
          dependsOnProfile: null
          artifactProfile: {
            artifactStore: {
              id: acrArtifactStore.id
            }

Tisztítási szempontok

Törölje az operátor erőforrásait a következő sorrendben, hogy biztosan ne maradjon árva erőforrás:

  • SNS
  • Site
  • CGV

Fontos

Az NFDV törlése előtt győződjön meg arról, hogy az SNS törlődik.

Törölje a közzétevő erőforrásait a következő sorrendben, hogy biztosan ne maradjon árva erőforrás:

  • CGS
  • NSDV
  • NSDG
  • NFDV
  • NFDG
  • Lelet manifesztum
  • Műtárgy áruház
  • Publisher

További lépések