Hiba elhárítása: „Az Azure Functions-futtatókörnyezet nem érhető el”

Ez a cikk az Alábbi, az Azure Portalon megjelenő hibasztring hibaelhárítását ismerteti:

"Hiba: Az Azure Functions-futtatókörnyezet nem érhető el. A tárkonfiguráció részleteiért kattintson ide."

Ez a probléma akkor fordul elő, ha a Functions-futtatókörnyezet nem indul el. Ennek leggyakoribb oka, hogy a függvényalkalmazás nem fér hozzá a tárfiókhoz. További információ: Tárfiókok követelményei.

A cikk további része segít a hiba konkrét okainak elhárításában, többek között az egyes esetek azonosításában és megoldásában.

A tárfiók törölve lett

Minden függvényalkalmazás működéséhez egy tárfiók szükséges. Ha törli a fiókot, a függvények nem fognak működni.

Először keresse meg a tárfiók nevét az alkalmazásbeállítások között. WEBSITE_CONTENTAZUREFILECONNECTIONSTRING Vagy AzureWebJobsStorage egy kapcsolati sztring részeként tartalmazza a tárfiók nevét. További információkért tekintse meg az Azure Functions alkalmazásbeállításokra vonatkozó hivatkozását.

Keresse meg a tárfiókot az Azure Portalon, és ellenőrizze, hogy létezik-e még. Ha törölték, hozza létre újra a tárfiókot, és cserélje le a kapcsolati sztring. A függvénykód elveszik, és újra kell üzembe helyeznie.

A tárfiók alkalmazásbeállításai törölve lettek

Az előző lépésben, ha nem talál tárfiókot kapcsolati sztring, valószínűleg törölték vagy felülírták. Az alkalmazásbeállítások törlése leggyakrabban akkor fordul elő, ha üzembehelyezési pontok vagy Azure Resource Manager-szkriptek használatával állítja be az alkalmazásbeállításokat.

Kötelező alkalmazásbeállítások

További információkért tekintse meg az Azure Functions alkalmazásbeállításokra vonatkozó hivatkozását.

Útmutató

  • Ezen beállítások egyikét sem ellenőrizze a pontbeállításnál . Az üzembehelyezési pontok felcserélése esetén a függvényalkalmazás megszakad.
  • Ne módosítsa ezeket a beállításokat az automatizált üzemelő példányok részeként.
  • Ezeket a beállításokat meg kell adni, és érvényesnek kell lenniük a létrehozáskor. A beállításokat nem tartalmazó automatizált üzembe helyezés olyan függvényalkalmazást eredményez, amely nem fog futni, még akkor sem, ha a beállításokat később adja hozzá.

A tárfiók hitelesítő adatai érvénytelenek

A tárkulcsok újragenerálása esetén frissíteni kell a korábban tárgyalt tárfiók-kapcsolati sztring. További információ a tárkulcsok kezeléséről: Azure Storage-fiók létrehozása.

A tárfiók nem érhető el

A függvényalkalmazásnak hozzáféréssel kell rendelkeznie a tárfiókhoz. A függvényalkalmazások tárfiókhoz való hozzáférését gyakran megakadályozó problémák:

A napi végrehajtási kvóta megtelt

Ha napi végrehajtási kvótát konfigurált, a függvényalkalmazás átmenetileg le van tiltva, ami miatt a portál számos vezérlője elérhetetlenné válik.

Ha ellenőrizni szeretné a kvótát az Azure Portalon, válassza a Platformszolgáltatások>függvényalkalmazás Gépház a függvényalkalmazásban. Ha túllépte a beállított napi használati kvótát , a következő üzenet jelenik meg:

"A függvényalkalmazás elérte a napi használati kvótát, és a következő 24 órás időtartamig leállt."

A probléma megoldásához távolítsa el vagy növelje a napi kvótát, majd indítsa újra az alkalmazást. Ellenkező esetben az alkalmazás végrehajtása a következő napig le lesz tiltva.

Tűzfal mögötti alkalmazás

Előfordulhat, hogy a függvényalkalmazás az alábbi okok valamelyike miatt nem érhető el:

Az Azure Portal közvetlenül a futó alkalmazásba indít hívásokat a függvények listájának lekéréséhez, és HTTP-hívásokat indít a Kudu-végpontra. A Platformszolgáltatások lap platformszintű beállításai továbbra is elérhetők.

Az A Standard kiadás konfiguráció ellenőrzése:

  1. Nyissa meg annak az alhálózatnak a hálózati biztonsági csoportját (NSG), ahol az A Standard kiadás található.
  2. Ellenőrizze a bejövő szabályokat, hogy engedélyezze az alkalmazást elérő számítógép nyilvános IP-címéről érkező forgalmat.

A portált olyan számítógépről is használhatja, amely az alkalmazást futtató virtuális hálózathoz vagy a virtuális hálózaton futó virtuális géphez csatlakozik.

A bejövő szabálykonfigurációval kapcsolatos további információkért tekintse meg az App Service-környezet hálózatkezelési szempontjainak "Hálózati biztonsági csoportok" szakaszát.

Tárolóhibák Linux rendszeren

A linuxos tárolóban futó függvényalkalmazások esetében a hiba a Azure Functions runtime is unreachable tárolóval kapcsolatos problémák miatt fordulhat elő. A következő eljárással tekintse át a tárolónaplók hibáit:

  1. Keresse meg a függvényalkalmazás Kudu-végpontját, amely a következő helyen https://<FUNCTION_APP>.scm.azurewebsites.nettalálható: az <FUNCTION_APP> alkalmazás neve.

  2. Töltse le a Docker-naplókat .zip fájlt, és tekintse át a helyi számítógépen található tartalmat.

  3. Ellenőrizze azokat a naplózott hibákat, amelyek azt jelzik, hogy a tároló nem indítható el sikeresen.

A tároló lemezképe nem érhető el

Hibák akkor fordulhatnak elő, ha a hivatkozott tárolórendszerkép nem érhető el, vagy nem indul el megfelelően. Ellenőrizze azokat a naplózott hibákat, amelyek azt jelzik, hogy a tároló nem indítható el sikeresen.

Ki kell javítania azokat a hibákat, amelyek megakadályozzák, hogy a tároló elinduljon a függvényalkalmazáshoz.

Ha a tárolórendszerkép nem található, hibaüzenet jelenik meg manifest unknown a Docker-naplókban. Ebben az esetben az Azure Functions futtatókörnyezeti verzióinak megcélzásáról dokumentált Azure CLI-parancsokkal módosíthatja a hivatkozott tárolórendszerképet. Ha egyéni tárolórendszerképet helyezett üzembe, ki kell javítania a lemezképet, és újra üzembe kell helyeznie a frissített verziót a hivatkozott beállításjegyzékben.

Az alkalmazástároló ütköző portokat

Előfordulhat, hogy a függvényalkalmazás nem válaszoló állapotban van az indításkor ütköző porthozzárendelés miatt. Ez a következő esetekben fordulhat elő:

  • A tároló különálló szolgáltatásokkal rendelkezik, amelyekben egy vagy több szolgáltatás kapcsolódik a függvényalkalmazással azonos porthoz.
  • Hozzáadott egy Azure Hybrid Csatlakozás iont, amely ugyanazt a portértéket használja, mint a függvényalkalmazás.

Alapértelmezés szerint a tároló, amelyben a függvényalkalmazás fut, portot :80használ. Ha az ugyanabban a tárolóban lévő más szolgáltatások is portot :80próbálnak használni, a függvényalkalmazás nem indulhat el. Ha a naplók portütközéseket mutatnak, módosítsa az alapértelmezett portokat.

Gazdagépazonosító ütközése

A Functions-futtatókörnyezet 3.x verziójától kezdve a rendszer figyelmeztetésként észleli és naplózza a gazdagép-azonosító ütközését . A 4.x verzióban hiba van naplózva, és a gazdagép leáll. Ha a futtatókörnyezet nem indul el a függvényalkalmazáshoz, tekintse át a naplókat. Ha figyelmeztetés vagy hiba lép fel a gazdagépazonosító ütközéseivel kapcsolatban, kövesse a gazdagépazonosítóval kapcsolatos szempontok megoldási lépéseit.

Írásvédett alkalmazás beállításai

A csakolvasható App Service-alkalmazások beállításainak módosítása a függvényalkalmazást elérhetetlen állapotba helyezheti.

ASP.NET hitelesítési felülbírálások

Csak a Functions-gazdagéppel folyamatban futó C#-alkalmazásokra vonatkozik.

Ha ASP.NET hitelesítést konfigurál egy Functions indítási osztályban, felülbírálhatja azOkat a szolgáltatásokat, amelyek szükségesek ahhoz, hogy az Azure Portal kommunikáljon a gazdagéppel. Ez magában foglalja, de nem kizárólagosan a hívásokat.AddAuthentication() Ha a gazdagép hitelesítési szolgáltatásai felül vannak bírálva, és a portál nem tud kommunikálni a gazdagéppel, az alkalmazást elérhetetlennek tekinti. Ez a probléma a következőhöz hasonló hibákat okozhat: No authentication handler is registered for the scheme 'ArmToken'..

Következő lépések

További információ a függvényalkalmazások monitorozásáról: