Share via


Event Grid-bővítmény telepítése az Azure Arc-kompatibilis Kubernetes-fürtön

Ez a cikk végigvezeti az Event Grid Azure Arc-kompatibilis Kubernetes-fürtön való telepítésének lépésein.

A rövidség kedvéért ez a cikk az "Event Grid on Kubernetes bővítményre" hivatkozik, mint "Event Grid a Kubernetesen" vagy csak "Event Grid".

Fontos

Az Event Grid a Kubernetesen és az Azure Arcon jelenleg nyilvános előzetes verzióban érhető el. Erre az előzetes verzióra nem vonatkozik szolgáltatói szerződés, és a használata nem javasolt éles számítási feladatok esetén. Előfordulhat, hogy néhány funkció nem támogatott, vagy korlátozott képességekkel rendelkezik. További információ: Kiegészítő használati feltételek a Microsoft Azure előzetes verziójú termékeihez.

Támogatott Kubernetes-disztribúciók

Az alábbiakban azokat a kubernetes-disztribúciókat találja, amelyeken az Event Grid üzembe helyezhető és futtatható.

  1. Az Azure AKS támogatja a Kubernetes-disztribúciókat.
  2. RedHat OpenShift tárolóplatform.

Event Grid-bővítmény

Az Event Grid-szolgáltatáspéldány kubernetes-fürtön való telepítésének művelete egy Azure Arc-fürtbővítmény létrehozása, amely egy Event Grid-közvetítőt és egy Event Grid-operátort is üzembe helyez. A közvetítő és az operátor funkciójára vonatkozó további információkért lásd: Event Grid a Kubernetes-összetevőkön. Az Azure Arc-fürtbővítmény szolgáltatás életciklus-felügyeletet biztosít az Azure Resource Manager (ARM) vezérlősík-műveleteinek használatával az Azure Arc-kompatibilis Kubernetes-fürtökön üzembe helyezett Event Grid számára.

Megjegyzés

A szolgáltatás előzetes verziója csak az Event Grid-bővítmény egyetlen példányát támogatja egy Kubernetes-fürtön, mivel az Event Grid-bővítmény jelenleg fürt hatókörű bővítményként van definiálva. Az Event Grid esetében még nem támogatott a névtérre kiterjedő üzemelő példányok használata, amelyek lehetővé teszik több példány fürtben való üzembe helyezését. További információ: Bővítmény hatóköre.

Előfeltételek

Az Event Grid telepítésének megkezdése előtt győződjön meg arról, hogy a következő előfeltételek teljesülnek.

  1. Az egyik támogatott Kubernetes-disztribúción futó fürt.
  2. Azure-előfizetés.
  3. PKI-tanúsítványok , amelyeket az Event Grid-közvetítővel való HTTPS-kapcsolat létrehozásához kell használni.
  4. Csatlakoztassa a fürtöt az Azure Archoz.

Támogatás igénylése

Ha problémába ütközik, a gyakori feltételekkel kapcsolatos segítségért tekintse meg a Hibaelhárítás című szakaszt. Ha továbbra is problémákat tapasztal, hozzon létre egy Azure-támogatás kérést.

PKI-tanúsítványra vonatkozó követelmények

Az Event Grid-közvetítő (kiszolgáló) kétféle ügyfelet szolgál ki. A kiszolgálóhitelesítés a tanúsítványok használatával történik. Az ügyfélhitelesítés tanúsítványokkal vagy SAS-kulcsokkal történik az ügyfél típusa alapján.

  • Az Event Grid-közvetítőhöz vezérlősík-kéréseket intéző Event Grid-operátorok hitelesítése tanúsítványok használatával történik.
  • Az Event Grid-közzétevők, amelyek egy Event Grid-témakör eseményeit közzétevők, hitelesítve lesznek a témakör SAS-kulcsaival.

Az Event Grid-közvetítővel és az Event Grid-operátorral való biztonságos HTTPS-kommunikáció kialakításához PKI-tanúsítványokat használunk az Event Grid-bővítmény telepítése során. Az alábbi PKI-tanúsítványokra vonatkozó általános követelmények:

  1. A tanúsítványoknak és kulcsoknak X.509-tanúsítványoknak és adatvédelmi szempontból továbbfejlesztett PEM-nek kell lenniük.

  2. Az Event Grid-közvetítő (kiszolgáló) tanúsítványának a telepítés során történő konfigurálásához meg kell adnia a következőket:

    1. Hitelesítésszolgáltatói tanúsítvány
    2. Nyilvános tanúsítvány
    3. Titkos kulcs
  3. Az Event Grid-operátori (ügyfél-) tanúsítvány konfigurálásához meg kell adnia a következőket:

    1. Hitelesítésszolgáltatói tanúsítvány
    2. Nyilvános tanúsítvány
    3. Titkos kulcs

    A közzétételi ügyfelek az Event Grid-közvetítő hitelesítésszolgáltatói tanúsítványával érvényesíthetik a kiszolgálót, amikor eseményeket tesznek közzé egy témakörben.

    Fontos

    Bár egy ügyfélhez társított tartomány több nyilvános tanúsítványt is kiadhat különböző hitelesítésszolgáltatóktól, a Kubernetesen futó Event Grid csak egyetlen hitelesítésszolgáltatói tanúsítvány feltöltését teszi lehetővé az ügyfelek számára az Event Grid telepítésekor. Ennek következtében az Event Grid-operátor tanúsítványait ugyanannak a hitelesítésszolgáltatónak kell kiállítania (aláírnia), hogy a tanúsítványlánc érvényesítése sikeres legyen, és sikeresen létrejönjön egy TLS-munkamenet.

  4. A kiszolgáló- és ügyféltanúsítványok common name (CN) konfigurálásakor győződjön meg arról, hogy azok eltérnek a hitelesítésszolgáltatói tanúsítványhoz megadott CN-től.

    Fontos

    A korai megvalósíthatósági igazolási szakaszok esetében az önaláírt tanúsítványok lehetnek lehetőség, de általában a hitelesítésszolgáltató (CA) által aláírt megfelelő PKI-tanúsítványokat kell kiszerelni és használni.

Telepítés a Azure Portal használatával

  1. A Azure Portal keresse meg az Azure Arcot (felül található mező)

  2. Válassza a Kubernetes-fürtöt az Infrastruktúra szakasz bal oldali menüjében

  3. A fürtök listájában keresse meg azt, amelyikre telepíteni szeretné az Event Gridet, és jelölje ki. Megjelenik a fürt Áttekintés lapja.

    A Kubernetes-fürt kiválasztása

  4. A bal oldali menü Beállítások csoportjában válassza a Bővítmények lehetőséget.

  5. Válassza a + Hozzáadás lehetőséget. Megjelenik egy oldal, amelyen az elérhető Azure Arc Kubernetes-bővítmények láthatók.

    Fürtbővítmények – Hozzáadás gomb

  6. Az Új erőforrás lapon válassza az Event Grid lehetőséget a Kubernetes-bővítményen.

    Event Grid kiválasztása a Kubernetes-bővítményen

  7. A Kubernetes-bővítmény eseményrácsán válassza a Létrehozás lehetőséget.

    Válassza a Kubernetes-bővítmény létrehozása lehetőséget

  8. Az Event Grid telepítése lap Alapok lapján kövesse az alábbi lépéseket.

    1. A Projekt részletei szakaszban csak olvasható előfizetési és erőforráscsoport-értékek láthatók, mivel az Azure Arc-bővítmények ugyanabban az Azure-előfizetésben és erőforráscsoportban vannak üzembe helyezve, amelyre a csatlakoztatott fürt telepítve van.

    2. Adjon meg egy nevet az Event Grid bővítménynév mezőjében. Ennek a névnek egyedinek kell lennie az ugyanazon az Azure Arc-fürtön üzembe helyezett többi Azure Arc-bővítmény között.

    3. A Release névtér esetében meg kell adnia egy Kubernetes-névtér nevét, amelyben az Event Grid-összetevők üzembe lesznek helyezve. Előfordulhat például, hogy egyetlen névteret szeretne használni a fürtön üzembe helyezett összes Azure Arc-kompatibilis szolgáltatáshoz. Az alapértelmezett érték az eventgrid-system. Ha a megadott névtér nem létezik, akkor az ön számára jön létre.

    4. Az Event Grid-közvetítő részletei szakaszban megjelenik a szolgáltatás típusa. Az Event Grid-közvetítő, amely az az összetevő, amely elérhetővé teszi azokat a témakörvégpontokat, amelyeknek az eseményeket küldi, a FürtIP típusú Kubernetes-szolgáltatásként lesz közzétéve. Ezért az összes témakörhöz rendelt IP-címek a fürthöz konfigurált privát IP-területet használják.

    5. Adja meg a közvetítőhöz használni kívánt tárosztálynevet , amelyet a Kubernetes-disztribúció támogat. Ha például AKS-t használ, használhatja azurefileaz Azure Standard Storage-t. Az AKS által támogatott előre definiált tárolási osztályokról további információt az AKS-ben található Tárolási osztályok című témakörben talál. Ha más Kubernetes-disztribúciókat használ, tekintse meg a Kubernetes-terjesztési dokumentációt a támogatott előre definiált tárolási osztályokról, vagy a saját módjáról.

    6. Tárterület mérete. Az alapértelmezett érték 1 GiB. A tárterület méretének meghatározásakor vegye figyelembe a betöltési arányt. A MiB/másodpercben mért betöltési arány az események méretének és az Event Grid-közvetítő összes témakörében a közzétételi sebesség (másodpercenkénti események) időértékével mérve kulcsfontosságú tényező a tárterület lefoglalása során. Az események átmeneti jellegűek, és a kézbesítésük után ezekhez az eseményekhez nincs tárterület-használat. Bár a betöltési sebesség a tárolás fő illesztőprogramja, nem ez az egyetlen. A témakört és az esemény-előfizetés konfigurációját tároló metaadatok szintén tárterületet használnak, de ehhez általában kevesebb tárterületre van szükség, mint az Event Grid által betöltött és kézbesített események.

    7. Memóriakorlát. Az alapértelmezett érték 1 GiB.

    8. Memóriakérés. Az alapértelmezett érték 200 MiB. Ez a mező nem szerkeszthető.

      Event Grid-bővítmény telepítése – Alapismeretek lap

    9. Válassza a Tovább: Konfiguráció lehetőséget a lap alján.

  9. Az Event Grid telepítése lap Konfiguráció lapján hajtsa végre a következő lépéseket:

    1. Engedélyezze a HTTP-kommunikációt (nem biztonságos). Jelölje be ezt a jelölőnégyzetet, ha nem biztonságos csatornát szeretne használni, amikor az ügyfelek kommunikálnak az Event Grid-közvetítővel.

      Fontos

      Ennek a beállításnak az engedélyezése lehetővé teszi, hogy az Event Grid-közvetítővel folytatott kommunikáció HTTP-t használjon átvitelként. Ezért a közzétételi ügyfél és az Event Grid-operátor nem kommunikál biztonságosan az Event Grid-közvetítővel. Ezt a lehetőséget csak a fejlesztés korai szakaszaiban érdemes használni.

    2. Ha nem engedélyezte a HTTP-kommunikációt, jelölje ki az összes beszerzett PKI-tanúsítványfájlt, és megfeleljen a PKI-tanúsítvány követelményeinek.

      Event Grid-bővítmény telepítése – Konfigurációs oldal

    3. Válassza a Következő: Figyelés lehetőséget az oldal alján.

  10. Az Event Grid telepítése lap Figyelés lapján hajtsa végre a következő lépéseket:

    1. Válassza a Metrikák engedélyezése (nem kötelező) lehetőséget. Ha ezt a lehetőséget választja, a Kubernetes-en futó Event Grid a Prometheus exposition formátum használatával teszi elérhetővé a témakörök és esemény-előfizetések metrikáit.

      Event Grid-bővítmény telepítése – Monitorozás lap

    2. Válassza a Tovább: Címkék lehetőséget a Címkék lapra való navigáláshoz.

  11. A Címkék lapon hajtsa végre a következő lépéseket:

    1. Szükség esetén definiálja a címkéket.

      Event Grid-bővítmény telepítése – Címkék lap

    2. Válassza az oldal alján található Véleményezés + létrehozás lehetőséget.

  12. A Felülvizsgálat + létrehozás lapon válassza a Létrehozás lehetőséget.

    Event Grid-bővítmény telepítése – Lap áttekintése és létrehozása

    Fontos

    Az Event Grid telepítése egy aszinkron művelet, amely hosszabb ideig futhat a Kubernetes-fürtön, mint amikor értesítést kap az Azure Portalon az üzembe helyezés befejezéséről. Várjon legalább 5 percet, miután megjelenik egy értesítés arról, hogy "Az üzembe helyezés befejeződött" üzenet jelenik meg, mielőtt megpróbál létrehozni egy egyéni helyet (következő lépés). Ha rendelkezik hozzáféréssel a Kubernetes-fürthöz, egy bash-munkamenetben a következő parancs végrehajtásával ellenőrizheti, hogy az Event Grid-közvetítő és az Event Grid operátor podjai Fut állapotban vannak-e, ami azt jelzi, hogy a telepítés befejeződött:

    kubectl get pods -n \<release-namespace-name\>
    

    A minta kimenete a következő:

    NAME                                  READY   STATUS    RESTARTS   AGE
    eventgrid-broker-568f75976-wxkd2      1/1     Running   0          2m28s
    eventgrid-operator-6c4c6c675d-ttjv5   1/1     Running   0          2m28s    
    

    Fontos

    Az Event Grid-témakörök üzembe helyezésének megkísérlése előtt létre kell hozni egy egyéni helyet. Egyéni hely létrehozásához az "Üzembe helyezés befejeződött" értesítés megjelenítése után az alsó 5 percben kiválaszthatja a Környezet lapot. Másik lehetőségként létrehozhat egy egyéni helyet a Azure Portal használatával. További információt az Egyéni hely dokumentációjában talál.

  13. Az üzembe helyezés sikerességét követően a Bővítmények lapon megjelenik egy bejegyzés, amely az Event Grid-bővítményhez megadott névvel rendelkezik. Ha a Függőben állapot jelenik meg a Telepítés állapotra, várjon néhány percet, majd válassza a Frissítés lehetőséget az eszköztáron.

    Event Grid-bővítmény – telepítve

Telepítés az Azure CLI használatával

  1. Hozzon létre egy rendszerhéj-munkamenetet. Elindíthat egy munkamenetet a számítógépen, vagy megnyithat egy böngészőt a https://shell.azure.com(z) számára.

  2. Hozzon létre egy konfigurációs fájlt protected-settings-extension.json. Ez a fájl paraméterként lesz átadva az Event Grid-bővítmény létrehozásakor.

    A következő parancsban és az egyes konfigurációs sorokban cserélje le a elemet filename az operátor (ügyfél) vagy közvetítő (kiszolgáló) nyilvános tanúsítványát, hitelesítésszolgáltatói tanúsítványát vagy kulcsát tartalmazó névre. Minden megadott tanúsítványnak base64 kódolásúnak kell lennie sortörés nélkül. Ezért a parancs használata base64 --wrap=0 .

    echo "{ 
        \"eventgridoperator.identityCert.base64EncodedIdentityCert\":\"$(base64 <filename> --wrap=0)\",
        \"eventgridoperator.identityCert.base64EncodedIdentityKey\":\"$(base64 <filename> --wrap=0)\",
        \"eventgridoperator.identityCert.base64EncodedIdentityCaCert\":\"$(base64 <filename> --wrap=0)\",
        \"eventgridbroker.service.tls.base64EncodedServerCert\":  \"$(base64 <filename> --wrap=0)\" ,
        \"eventgridbroker.service.tls.base64EncodedServerKey\":  \"$(base64 <filename> --wrap=0)\" ,
        \"eventgridbroker.service.tls.base64EncodedServerCaCert\":  \"$(base64 <filename> --wrap=0)\" 
    }" > protected-settings-extension.json 
    

    Ha például a közvetítő nyilvános tanúsítványa (a fenti első konfigurációelem) neve client.cer, akkor az első konfigurációs sornak a következőhöz hasonlóan kell kinéznie:

    \"eventgridoperator.identityCert.base64EncodedIdentityCert\":\"$(base64 client.cer --wrap=0)\",    
    
  3. Hozzon létre egy konfigurációs fájlt settings-extension.json. Ez a fájl paraméterként lesz átadva az Event Grid-bővítmény létrehozásakor.

    Fontos

    A és serviceTypea értékeit ServiceAccount nem módosíthatja. Az előzetes verzióban az egyetlen kubernetes-szolgáltatástípus támogatott: ClusterIP.

    Adja storageClassName meg a közvetítőhöz használni kívánt tárolási osztályt, amelyet a Kubernetes-disztribúció támogat. Ha például AKS-t használ, használhatja azurefile az Azure Standard Storage-ot. További információ az AKS által támogatott előre definiált tárolási osztályokról: Tárolási osztályok az AKS-ben. Ha más Kubernetes-disztribúciókat használ, tekintse meg a Kubernetes-disztribúció dokumentációját az előre definiált támogatott tárolási osztályokról, vagy a saját megadásának módjáról.

    Úgy van beállítva reporterType , prometheus hogy a Prometheus-exposition formátum használatával engedélyezze a témakörök és esemény-előfizetések metrikáit.

    Fontos

    Az előzetes verzióban a Prometheus-ügyfél használata az egyetlen támogatott mechanizmus a metrikák lekéréséhez.

    echo "{
        \"Microsoft.CustomLocation.ServiceAccount\":\"eventgrid-operator\",
        \"eventgridbroker.service.serviceType\": \"ClusterIP\",
        \"eventgridbroker.dataStorage.storageClassName\": \"<storage_class_name>\",
        \"eventgridbroker.diagnostics.metrics.reporterType\":\"prometheus\"
    }" > settings-extension.json
    
  4. Hozzon létre egy Kubernetes-bővítményt, amely Event Grid-összetevőket telepít a fürtre.

    A és a paraméterek cluster-name esetében ugyanazokat a neveket kell használnia, mint amikor csatlakoztatta a fürtöt az Azure Archoz.resource-group

    release-namespace az a névtér, amelyben az Event Grid-összetevők üzembe lesznek helyezve. Az alapértelmezett érték az eventgrid-system. Érdemes lehet megadnia egy értéket, amely felülbírálja az alapértelmezett értéket. Előfordulhat például, hogy egyetlen névteret szeretne használni a fürtön üzembe helyezett összes Azure Arc-kompatibilis szolgáltatáshoz. Ha a megadott névtér nem létezik, akkor létrejön.

    Fontos

    Az előzetes verzióban cluster csak az Event Grid-bővítmények létrehozásakor vagy frissítésekor támogatott hatókör. Ez azt jelenti, hogy a szolgáltatás csak az Event Grid-bővítmény egyetlen példányát támogatja egy Kubernetes-fürtön. A névtér-hatókörű üzemelő példányok még nem támogatottak. További információ: Bővítmény hatóköre.

    az k8s-extension create \
        --cluster-type connectedClusters \
        --cluster-name <connected_cluster_name> \
        --resource-group <resource_group_of_connected_cluster> \
        --name <event_grid_extension_name> \
        --extension-type Microsoft.EventGrid \
        --scope cluster \
        --auto-upgrade-minor-version true \
        --release-train Stable \
        --release-namespace <namespace_name> \
        --configuration-protected-settings-file protected-settings-extension.json \
        --configuration-settings-file settings-extension.json    
    

    További információ a CLI-paranccsal kapcsolatban: az k8s-extension create. Figyelje meg, hogy a --config-file paraméterrel átadhatja az Event Gridhez kapcsolódó konfigurációs információkat tartalmazó json-fájl nevét. A HTTP támogatásához adja meg a következő beállítást.

    "eventgridbroker.service.supportedProtocols[0]": "http" 
    

    Íme egy minta settings-extension.json a fenti beállítással.

    {
        "Microsoft.CustomLocation.ServiceAccount": "eventgrid-operator",
        "eventgridbroker.service.serviceType": "ClusterIP",
        "eventgridbroker.service.supportedProtocols[0]": "http",
        "eventgridbroker.dataStorage.storageClassName": "default",
        "eventgridbroker.diagnostics.metrics.reporterType": "prometheus"
    }    
    
  5. Ellenőrizze, hogy az Event Grid-bővítmény telepítése sikeresen megtörtént-e.

    az k8s-extension show  --cluster-type connectedClusters --cluster-name <connected_cluster_name> --resource-group <resource_group_of_connected_cluster> --name <event_grid_extension_name>
    

    A installedState tulajdonságnak akkor kell lennie Installed , ha az Event Grid-bővítmény összetevői sikeresen üzembe helyezve.

Egyéni hely

Fontos

Az Event Grid-témakörök üzembe helyezésének megkísérlése előtt létre kell hozni egy egyéni helyet. Egyéni helyet a Azure Portal használatával hozhat létre.

Hibaelhárítás

Az Azure Arc connect-fürt problémái

Probléma: Amikor az Azure Arcra lép, és a bal oldali menüben a Kubernetes-fürt lehetőséget választja, a megjelenő oldalon nem jelenik meg a Kubernetes-fürt, ahol az Event Gridet telepíteni szeretném.

Megoldás: A Kubernetes-fürt nincs regisztrálva az Azure-ban. Kövesse a meglévő Kubernetes-fürt Azure Archoz való csatlakoztatását ismertető cikkben található lépéseket. Ha probléma merül fel ebben a lépésben, küldjön támogatási kérést az Azure Arc-kompatibilis Kubernetes-csapatnak.

Event Grid-bővítményekkel kapcsolatos problémák

Probléma: Amikor "Event Grid-bővítményt" próbál telepíteni, a következő üzenet jelenik meg: "Érvénytelen művelet – Az Event Grid egy példánya már telepítve van erre a csatlakoztatott Kubernetes-fürtre. Az Event Grid-bővítmény hatóköre a fürt szintjén van, ami azt jelenti, hogy egy fürtre csak egy példány telepíthető."

Magyarázat: Már telepítve van az Event Grid. Az Event Grid előzetes verziója csak egy fürtön üzembe helyezett Event Grid-bővítménypéldányt támogat.

Következő lépések

Hozzon létre egy egyéni helyet, majd kövesse a felhőesemények webhookokra való átirányítása a Kubernetesen Azure Event Grid című rövid útmutató utasításait.