Instalace a spuštění kontejnerů Docker pro rozhraní API detektoru anomálií

Poznámka

Nedávno se změnilo umístění Image kontejneru. Přečtěte si tento článek, kde najdete aktualizované umístění pro tento kontejner.

Kontejnery umožňují používat rozhraní API detektoru anomálií ve vašem vlastním prostředí. Kontejnery jsou skvělé pro splnění určitých požadavků na zabezpečení a zásady správného řízení dat. V tomto článku se dozvíte, jak stáhnout, nainstalovat a spustit kontejner detektoru anomálií.

Detektor anomálií nabízí jeden kontejner Docker pro použití v místním rozhraní API. Použít kontejner pro:

  • Použití algoritmů detektoru anomálií pro vaše data
  • Monitorujte streamovaná data a zjišťují anomálie při jejich výskytu v reálném čase.
  • Detekuje anomálie v celé sadě dat jako dávku.
  • Detekuje body změny trendu ve vaší datové sadě jako dávku.
  • Upravte citlivost algoritmu pro detekci anomálií, aby lépe vyhovovala vašim datům.

Podrobné informace o tomto rozhraní API najdete v těchto tématech:

Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.

Požadavky

Než začnete používat kontejnery detektoru anomálií, musíte splnit následující předpoklady:

Vyžadováno Účel
Docker Engine Potřebujete modul Docker nainstalovaný na hostitelském počítači. Docker poskytuje balíčky, které nakonfigurují prostředí Dockeru v systému macOS, Windows a Linux. Základní informace o Dockeru a kontejnerech najdete v článku Docker Overview (Přehled Dockeru).

Docker musí být nakonfigurovaný tak, aby umožňoval kontejnerům připojit se a odeslat fakturační data do Azure.

v Windows musí být docker taky nakonfigurovaný tak, aby podporoval kontejnery Linux.

Znalost pomocí Docker Měli byste mít základní znalosti konceptů Docker, jako jsou registry, úložiště, kontejnery a image kontejnerů, a taky znalosti základních docker příkazů.
Prostředek detektoru anomálií Aby bylo možné tyto kontejnery použít, je nutné mít následující:

Prostředek detektoru anomálií Azure, který získá přidružený klíč rozhraní API a identifikátor URI koncového bodu. Obě hodnoty jsou k dispozici na stránkách přehled detektoru anomálií Azure Portal a klíče a jsou požadovány ke spuštění kontejneru.

{API_KEY}: jeden ze dvou dostupných klíčů prostředků na stránce klíče

{ENDPOINT_URI}: koncový bod uvedený na stránce Přehled

Shromažďují se požadované parametry.

Existují tři primární parametry pro všechny požadované kontejnery Cognitive Services. Podmínky licenční smlouvy s koncovým uživatelem (EULA) musí být k dispozici s hodnotou accept . Kromě toho je potřeba adresa URL koncového bodu i klíč rozhraní API.

Identifikátor URI koncového bodu {ENDPOINT_URI}

Hodnota identifikátoru URI koncového bodu je k dispozici na stránce Přehled Azure Portal odpovídajícího prostředku služby pro rozpoznávání. Přejděte na stránku Přehled , najeďte myší na koncový bod a Copy to clipboard zobrazí se ikona. Zkopírujte a použijte tam, kde je to potřeba.

Shromáždit identifikátor URI koncového bodu pro pozdější použití

Klíče {API_KEY}

Tento klíč se používá ke spuštění kontejneru a je k dispozici na stránce klíčů Azure Portal odpovídajícího prostředku služby pro rozpoznávání. Přejděte na stránku klíče a klikněte na Copy to clipboard ikonu.

Získat jeden ze dvou klíčů pro pozdější použití

Důležité

Tyto klíče předplatného se používají pro přístup ke službě rozpoznávání rozhraní API. Nesdílejte své klíče. Bezpečně je uložte, například pomocí Azure Key Vault. Tyto klíče doporučujeme také pravidelně obnovovat. K volání rozhraní API je potřeba jenom jeden klíč. Při opětovném generování prvního klíče můžete použít druhý klíč pro pokračování přístupu ke službě.

Hostitelský počítač

Hostitel je počítač s procesorem x64, na kterém běží kontejner Docker. Může to být počítač v místním prostředí nebo hostská služba Docker v Azure, například:

Požadavky na kontejner a doporučení

V následující tabulce jsou popsány minimální a doporučené PROCESORové jádra a paměť pro přidělení kontejneru detektoru anomálií.

QPS (dotazy za sekundu) Minimum Doporučeno
10 QPS 4 jádra, 1 GB paměti 8 jader 2 – GB paměti
20 QPS 8 jader, 2 GB paměti 16 jader 4 – GB paměti

Každé jádro musí mít aspoň 2,6 GHz nebo rychlejší.

Základní a paměť odpovídají --cpus --memory nastavení a, která se používají jako součást docker run příkazu.

Získat image kontejneru pomocí docker pull

Pomocí docker pull příkazu Stáhněte image kontejneru.

Kontejner Repository
rozpoznávání – služby – anomálie-detektor mcr.microsoft.com/azure-cognitive-services/decision/anomaly-detector:latest

Tip

K vypsání stažených imagí kontejneru můžete použít příkaz Docker images . Například následující příkaz vypíše ID, úložiště a značku jednotlivých stažených imagí kontejneru, které jsou formátovány jako tabulka:

docker images --format "table {{.ID}}\t{{.Repository}}\t{{.Tag}}"

IMAGE ID         REPOSITORY                TAG
<image-id>       <repository-path/name>    <tag-name>

Pull Docker pro kontejner detektoru anomálií

docker pull mcr.microsoft.com/azure-cognitive-services/anomaly-detector:latest

Jak používat kontejner

Jakmile je kontejner na hostitelském počítači, použijte následující postup pro práci s kontejnerem.

  1. Spusťte kontejners požadovaným nastavením fakturace. docker run K dispozici jsou další příklady příkazu.
  2. Dotazování koncového bodu předpovědi kontejneru

Spusťte kontejner s docker run

Ke spuštění kontejneru použijte příkaz Docker Run . Podrobnosti o tom, jak získat hodnoty a, najdete v článku shromáždění požadovaných parametrů {ENDPOINT_URI} {API_KEY} .

docker run K dispozici jsou příklady příkazů.

docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
mcr.microsoft.com/azure-cognitive-services/decision/anomaly-detector:latest \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Tento příkaz:

  • Spustí kontejner detektoru anomálií z image kontejneru.
  • Přiděluje jedno PROCESORové jádro a 4 gigabajty (GB) paměti.
  • Zveřejňuje port TCP 5000 a přiděluje pro kontejner pseudo TTY.
  • Po ukončení automaticky odstraní kontejner. Bitová kopie kontejneru je stále k dispozici na hostitelském počítači.

Důležité

Eula Billing ApiKey Aby bylo možné spustit kontejner, musí být zadány možnosti, a. v opačném případě se kontejner nespustí. Další informace najdete v tématu fakturace.

Spuštění více kontejnerů na stejném hostiteli

Pokud máte v úmyslu spustit více kontejnerů s vystavenými porty, ujistěte se, že každý kontejner spustíte s jiným portem. Například spusťte první kontejner na portu 5000 a druhý kontejner na portu 5001.

Nahraďte <container-registry> a hodnotou <container-name> kontejnerů, které používáte. Nemusí se jednat o stejný kontejner. Můžete mít kontejner detektoru anomálií a kontejner LUIS běžící na hostiteli společně nebo může být spuštěno více kontejnerů detektoru anomálií.

Spusťte první kontejner na portu hostitele 5000.

docker run --rm -it -p 5000:5000 --memory 4g --cpus 1 \
<container-registry>/microsoft/<container-name> \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Spusťte druhý kontejner na portu hostitele 5001.

docker run --rm -it -p 5001:5000 --memory 4g --cpus 1 \
<container-registry>/microsoft/<container-name> \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Každý další kontejner by měl být na jiném portu.

Zadání dotazu do prediktivního koncového bodu kontejneru

Kontejner poskytuje rozhraní API prediktivního koncového bodu pro dotazy založené na REST.

Pro rozhraní API kontejneru použijte hostitele http://localhost:5000.

Ověření, jestli je kontejner spuštěný

Existuje několik způsobů, jak ověřit, zda je kontejner spuštěn. Vyhledejte externí IP adresu a vystavený port příslušného kontejneru a otevřete svůj oblíbený webový prohlížeč. K ověření, že je kontejner spuštěný, použijte různé adresy URL žádostí níže. Níže uvedené příklady adres URL žádostí se http://localhost:5000 můžou lišit, ale váš konkrétní kontejner se může lišit. Pamatujte na to, že budete spoléhat na externí IP adresu vašeho kontejneru a vystavený port.

Adresa URL požadavku Účel
http://localhost:5000/ Kontejner poskytuje domovskou stránku.
http://localhost:5000/ready Požadováno pomocí GET, poskytuje ověření, že je kontejner připraven přijmout dotaz na model. Tento požadavek se dá použít k Kubernetesi živých a připravených sond.
http://localhost:5000/status Požadavek s funkcí GET ověří, zda je klíč rozhraní API použitý ke spuštění kontejneru platný, aniž by to způsobilo dotaz na koncový bod. Tento požadavek se dá použít k Kubernetesi živých a připravených sond.
http://localhost:5000/swagger V kontejneru je ke koncovým bodům a k funkci Vyzkoušet kompletní dokumentace. Pomocí této funkce můžete zadat nastavení do webového formuláře HTML a vytvořit dotaz bez nutnosti psát jakýkoli kód. Jakmile se dotaz vrátí, je k dispozici vzorový příkaz SLOŽENÉho příkazu, který předvádí hlavičku protokolu HTTP a požadovaný formát textu.

Domovská stránka kontejneru

Zastavení kontejneru

Pokud chcete vypnout kontejner, v prostředí příkazového řádku, kde je kontejner spuštěný, vyberte CTRL + C.

Řešení potíží

Pokud spouštíte kontejner s povoleným výstupním připojením a povolíte protokolování, kontejner generuje soubory protokolu, které jsou užitečné při řešení problémů, ke kterým dochází při spuštění nebo spuštění kontejneru.

Tip

Další informace a pokyny pro řešení potíží najdete v tématu Nejčastější dotazy k Cognitive Services kontejnerů.

Pokud máte potíže se spuštěním kontejneru služeb Cognitive Services, můžete zkusit použít diagnostický kontejner Microsoftu. S využitím tohoto kontejneru můžete diagnostikovat běžné chyby ve vašem vývojovém prostředí, které můžou bránit kontejnerům služeb Cognitive Services, aby fungovaly podle očekávání.

K získání kontejneru použijte následující příkaz pull Dockeru:

docker pull mcr.microsoft.com/azure-cognitive-services/diagnostic

Pak spusťte kontejner, {ENDPOINT_URI} nahraďte koncovým bodem a nahraďte {API_KEY} klíčem vašeho prostředku:

docker run --rm mcr.microsoft.com/azure-cognitive-services/diagnostic \
Eula=accept \
Billing={ENDPOINT_URI} \
ApiKey={API_KEY}

Kontejner otestujte síťové připojení ke koncovému bodu fakturace.

Fakturace

Kontejnery detektoru anomálií odesílají informace o fakturaci do Azure pomocí prostředku detektoru anomálií ve vašem účtu Azure.

Dotazy na kontejner se účtuly na cenové úrovni prostředku Azure, který se používá pro ApiKey parametr .

Azure Cognitive Services kontejnery nemají licenci ke spuštění bez připojení ke koncovému bodu měření nebo fakturace. Kontejnerům musíte za všech okolností povolit, aby s fakturačním koncovým bodem komunikovali fakturační údaje. Cognitive Services kontejnery neposílat zákaznická data, jako je obrázek nebo text, který se analyzuje, do Microsoftu.

Připojení k Azure

Kontejner ke spuštění potřebuje hodnoty argumentu fakturace. Tyto hodnoty umožňují kontejneru připojit se ke koncovému bodu fakturace. Kontejner hlásí využití přibližně každých 10 až 15 minut. Pokud se kontejner v povoleném časovém období nepřipojí k Azure, kontejner se bude dál spouštět, ale nebude obsluhovat dotazy, dokud se koncový bod fakturace neznoví. Pokus o připojení je proveden 10krát ve stejném časovém intervalu od 10 do 15 minut. Pokud se nemůže během 10 pokusů připojit ke koncovému bodu fakturace, kontejner přestane obsluhut žádosti. Příklad informací odeslaných Microsoftu k fakturaci najdete v nejčastějších dotazech Cognitive Services kontejnerů.

Argumenty fakturace

docker run Příkaz spustí kontejner, když jsou k dispozici všechny tři z následujících možností s platnými hodnotami:

Možnost Popis
ApiKey Klíč rozhraní API prostředku Cognitive Services, který se používá ke sledování fakturačních údajů.
Hodnota této možnosti musí být nastavená na klíč rozhraní API pro zřízený prostředek zadaný v Billing .
Billing Koncový bod prostředku Cognitive Services, který se používá ke sledování fakturačních údajů.
Hodnota této možnosti musí být nastavená na identifikátor URI koncového bodu pro zřízený prostředek Azure.
Eula Označuje, že jste přijali licenci pro kontejner.
Hodnota této možnosti musí být nastavená na příjem.

Další informace o těchto možnostech najdete v tématu konfigurace kontejnerů.

Souhrn

V tomto článku jste zjistili koncepty a pracovní postupy pro stažení, instalaci a spuštění kontejnerů detektoru anomálií. Souhrn:

  • Detekce anomálií poskytuje jeden kontejner pro Linux pro Docker, který zapouzdřuje detekci anomálií pomocí služby Batch vs streaming, očekávalo se odvození rozsahu a optimalizace citlivosti.
  • Image kontejneru se stáhnou z privátní Azure Container Registry vyhrazené pro kontejnery.
  • Image kontejneru se spouštějí v Docker.
  • Můžete použít REST API nebo SDK pro volání operací v kontejnerech detektoru anomálií zadáním identifikátoru URI hostitele kontejneru.
  • Při vytváření instance kontejneru je nutné zadat informace o fakturaci.

Důležité

Nemusíte spouštět kontejnery Cognitive Services bez připojení k Azure pro měření. Zákazníci musí povolit kontejnerům, aby ve všech časech komunikovaly informace o fakturaci. Kontejnery Cognitive Services neodesílají zákaznická data (např. Analyzovaná data časových řad) do Microsoftu.

Další kroky