Rychlý start: Nasazení Azure IoT Operations Preview do clusteru Kubernetes s podporou arc
Důležité
Azure IoT Operations Preview – Služba Azure Arc je aktuálně ve verzi PREVIEW. Tento software ve verzi Preview byste neměli používat v produkčních prostředích.
Právní podmínky, které platí pro funkce Azure, které jsou ve verzi beta, verzi Preview nebo které zatím nejsou veřejně dostupné, najdete v Dodatečných podmínkách použití pro Microsoft Azure verze Preview.
V tomto rychlém startu nasadíte sadu služeb IoT do clusteru Kubernetes s podporou Azure Arc, abyste mohli vzdáleně spravovat zařízení a úlohy. Operace Azure IoT je sada digitálních operací služeb, které zahrnují Azure IoT Orchestrator Preview. Tento rychlý start vás provede nasazením těchto služeb do clusteru Kubernetes pomocí nástroje Orchestrator. Na konci rychlého startu máte cluster, který můžete spravovat z cloudu, který generuje ukázková data pro použití v následujících rychlých startech.
Mezi služby nasazené v tomto rychlém startu patří:
- Azure IoT Orchestrator Preview
- Azure IoT MQ Preview
- Azure IoT OPC UA Broker Preview se simulovaným termostatovým aktivem pro zahájení generování dat
- Azure IoT Data Processor Preview s ukázkovým kanálem pro zahájení směrování simulovaných dat
- Azure IoT Akri Preview
- Azure Device Registry Preview
- Azure IoT Layered Network Management Preview
- Pozorovatelnost
Následující rychlé starty v této sérii vycházejí z této série, které definují ukázkové prostředky, kanály zpracování dat a vizualizace. Pokud chcete nasadit operace Azure IoT pro spouštění vlastních úloh, přečtěte si téma Příprava clusteru Kubernetes s podporou Azure Arc a nasazení rozšíření Azure IoT Operations Preview do clusteru Kubernetes.
Než začnete
Tato série rychlých startů vám pomůže co nejrychleji začít s operacemi Azure IoT, abyste mohli vyhodnotit kompletní scénář. Ve skutečném vývojovém nebo produkčním prostředí by tyto úlohy provádělo více týmů, které spolupracují, a některé úkoly můžou vyžadovat zvýšená oprávnění.
Pro co nejlepší nové uživatelské prostředí doporučujeme použít bezplatný účet Azure, abyste měli oprávnění vlastníka k prostředkům v těchto rychlých startech. Poskytujeme také postup použití GitHub Codespaces jako virtuálního prostředí, ve kterém můžete rychle začít nasazovat prostředky a spouštět příkazy bez nutnosti instalovat nové nástroje na vlastní počítače.
Požadavky
Pro účely tohoto rychlého startu vytvoříte cluster Kubernetes pro příjem nasazení operací Azure IoT.
Pokud chcete tento rychlý start spustit znovu s clusterem, který už má nasazené operace Azure IoT, projděte si kroky v části Vyčištění prostředků a před pokračováním odinstalujte operace Azure IoT.
Než začnete, připravte následující požadavky:
Předplatné Azure. Pokud nemáte předplatné Azure, vytvořte si ho zdarma , než začnete.
Účet GitHub.
Visual Studio Code nainstalovaný na vývojovém počítači Další informace naleznete v tématu Stažení editoru Visual Studio Code.
Jaký problém vyřešíme?
Operace Azure IoT je sada datových služeb, které běží v clusterech Kubernetes. Chcete, aby se tyto clustery spravily vzdáleně z cloudu a mohly bezpečně komunikovat s cloudovými prostředky a koncovými body. Tyto obavy řešíme s následujícími úlohami v tomto rychlém startu:
- Vytvořte cluster Kubernetes a připojte ho ke službě Azure Arc pro vzdálenou správu.
- Vytvořte službu Azure Key Vault pro správu tajných kódů pro váš cluster.
- Nakonfigurujte cluster s úložištěm tajných kódů a instančním objektem pro komunikaci s cloudovými prostředky.
- Nasazení operací Azure IoT do clusteru
Připojení clusteru Kubernetes do Služby Azure Arc
Operace Azure IoT by měly fungovat na jakémkoli clusteru Kubernetes, který odpovídá standardům CNCF (Cloud Native Computing Foundation). Pro účely tohoto rychlého startu použijte GitHub Codespaces k hostování clusteru.
V této části vytvoříte nový cluster a připojíte ho k Azure Arc. Pokud chcete znovu použít cluster, do kterého jste nasadili operace Azure IoT, přečtěte si kroky v části Vyčištění prostředků a před pokračováním odinstalujte operace Azure IoT.
Pomocí GitHub Codespaces můžete vyzkoušet operace Azure IoT v clusteru Kubernetes bez nutnosti instalovat cokoli na místním počítači. Azure-Samples /explore-iot-operations codespace je předem nakonfigurovaný pomocí:
- K3s běžící v K3d pro jednoduchý cluster Kubernetes
- Azure CLI
- Kubectl pro správu prostředků Kubernetes
- Další užitečné nástroje, jako je Helm a k9s
Důležité
Codespaces se dají snadno nastavit a rozhodit později, ale nejsou vhodné pro vyhodnocení výkonu nebo testování škálování. Ke zkoumání používejte jen GitHub Codespaces.
K vytvoření prostředí codespace a clusteru použijte následující kroky:
Vytvořte v GitHub Codespaces prostor kódu.
Zadejte následující doporučené tajné kódy pro váš codespace:
Parametr Hodnota SUBSCRIPTION_ID ID vašeho předplatného Azure RESOURCE_GROUP Název nové skupiny prostředků Azure, ve které se cluster vytvoří. UMÍSTĚNÍ Oblast Azure blízko vás. Ve verzi Public Preview jsou podporovány následující oblasti: eastus, eastus2, westus2, westus3, westus3, westeurope nebo northeurope. Tip
Hodnoty, které zadáte jako tajné kódy v tomto kroku, se uloží na účet GitHubu, aby se použily v tomto a budoucím codespaces. Také se automaticky přidají jako proměnné prostředí v terminálu codespace a tyto proměnné prostředí můžete použít v příkazech rozhraní příkazového řádku v další části.
Kromě toho tento kódspace automaticky vytvoří proměnnou
CLUSTER_NAME
prostředí, která je nastavena s názvem codespace.Vyberte Vytvořit nový prostor kódu.
Jakmile je codespace připravený, vyberte tlačítko nabídky v levém horním rohu a pak vyberte Otevřít v desktopové aplikaci VS Code.
Pokud se zobrazí výzva, nainstalujte rozšíření GitHub Codespaces pro Visual Studio Code a přihlaste se k GitHubu.
V editoru Visual Studio Code vyberte Zobrazit>terminál.
Pomocí tohoto terminálu spusťte všechny příkazy příkazového řádku a rozhraní příkazového řádku pro správu clusteru.
Připojení clusteru ke službě Azure Arc:
V terminálu codespace se přihlaste k Azure CLI:
az login
Tip
Pokud používáte prostředí Codespace GitHubu v prohlížeči místo desktopové verze VS Code, vrátí spuštění
az login
chybu localhost. Chybu opravíte tak, že:- Otevřete codespace v desktopové verzi VS Code a vraťte se do terminálu prohlížeče a spusťte
az login
ho znovu. - Nebo po zobrazení chyby localhost v prohlížeči zkopírujte adresu URL z prohlížeče a spusťte
curl "<URL>"
ji na nové kartě terminálu. Měla by se zobrazit odpověď JSON se zprávou "Přihlásili jste se k Microsoft Azure!".
- Otevřete codespace v desktopové verzi VS Code a vraťte se do terminálu prohlížeče a spusťte
Nastavte kontext předplatného Azure pro všechny příkazy:
az account set -s $SUBSCRIPTION_ID
Zaregistrujte požadované poskytovatele prostředků ve vašem předplatném:
Poznámka:
Tento krok stačí spustit jenom jednou pro každé předplatné.
az provider register -n "Microsoft.ExtendedLocation" az provider register -n "Microsoft.Kubernetes" az provider register -n "Microsoft.KubernetesConfiguration" az provider register -n "Microsoft.IoTOperationsOrchestrator" az provider register -n "Microsoft.IoTOperationsMQ" az provider register -n "Microsoft.IoTOperationsDataProcessor" az provider register -n "Microsoft.DeviceRegistry"
Pomocí příkazu az group create vytvořte ve svém předplatném Azure skupinu prostředků pro uložení všech prostředků:
az group create --location $LOCATION --resource-group $RESOURCE_GROUP --subscription $SUBSCRIPTION_ID
Pomocí příkazu az connectedk8s connect povolte cluster Kubernetes a spravujte ho jako součást skupiny prostředků Azure:
az connectedk8s connect -n $CLUSTER_NAME -l $LOCATION -g $RESOURCE_GROUP --subscription $SUBSCRIPTION_ID
Tip
Hodnota
$CLUSTER_NAME
se automaticky nastaví na název vašeho codespace. Pokud chcete použít jiný název, nahraďte proměnnou prostředí.objectId
Získejte aplikaci Microsoft Entra ID, kterou služba Azure Arc používá, a uložte ji jako proměnnou prostředí.export OBJECT_ID=$(az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv)
Pomocí příkazu az connectedk8s enable-features povolte podporu vlastního umístění v clusteru. Tento příkaz používá
objectId
aplikaci Microsoft Entra ID, kterou používá služba Azure Arc.az connectedk8s enable-features -n $CLUSTER_NAME -g $RESOURCE_GROUP --custom-locations-oid $OBJECT_ID --features cluster-connect custom-locations
Ověření clusteru
Pomocí rozšíření Azure IoT Operations pro Azure CLI ověřte, že je hostitel clusteru správně nakonfigurovaný pro nasazení pomocí příkazu verify-host na hostiteli clusteru:
az iot ops verify-host
Tento pomocný příkaz zkontroluje připojení ke koncovým bodům Azure Resource Manageru a služby Microsoft Container Registry.
Nasazení Azure IoT Operations Preview
V této části pomocí příkazu az iot ops init nakonfigurujete cluster tak, aby mohl bezpečně komunikovat s komponentami operací Azure IoT a trezorem klíčů a pak nasadit operace Azure IoT.
V terminálu Codespaces spusťte následující příkazy rozhraní příkazového řádku.
Vytvořte trezor klíčů. V tomto scénáři použijeme stejný název a skupinu prostředků jako váš cluster. Názvy služby Keyvault mají maximální délku 24 znaků, takže v případě potřeby následující příkaz zkrátí
CLUSTER_NAME
proměnnou prostředí.az keyvault create --enable-rbac-authorization false --name ${CLUSTER_NAME:0:24} --resource-group $RESOURCE_GROUP
Tip
Pro tajné kódy můžete použít existující trezor klíčů, ale ověřte, že je model oprávnění nastavený na zásady přístupu k trezoru. Toto nastavení můžete zkontrolovat na webu Azure Portal v části Konfigurace accessu existujícího trezoru klíčů. Nebo pomocí příkazu az keyvault show zkontrolujte, že
enableRbacAuthorization
je false.Nasazení operací Azure IoT
az iot ops init --simulate-plc --cluster $CLUSTER_NAME --resource-group $RESOURCE_GROUP --kv-id $(az keyvault show --name ${CLUSTER_NAME:0:24} -o tsv --query id)
Pokud se zobrazí chyba s informací , že pro přístup k vašemu prostředku je potřeba spravovat vaše zařízení, spusťte
az login
to znovu a ujistěte se, že se přihlašujete interaktivně pomocí prohlížeče.Tip
Pokud jste předtím spustili
az iot ops init
, automaticky se vytvořila registrace aplikace v Microsoft Entra ID za vás. Tuto registraci můžete znovu použít místo toho, abyste pokaždé vytvořili novou. Pokud chcete použít existující registraci aplikace, přidejte volitelný parametr--sp-app-id <APPLICATION_CLIENT_ID>
.
Zobrazení prostředků v clusteru
Během nasazování můžete sledovat prostředky použité v clusteru. Pomocí příkazů kubectl můžete sledovat změny v clusteru nebo, protože je cluster povolený arc, můžete použít Azure Portal.
Pokud chcete zobrazit pody v clusteru, spusťte následující příkaz:
kubectl get pods -n azure-iot-operations
Dokončení nasazení může trvat několik minut. Pokračujte spuštěním get pods
příkazu a aktualizujte zobrazení.
Pokud chcete cluster zobrazit na webu Azure Portal, postupujte následovně:
Na webu Azure Portal přejděte do skupiny prostředků, která obsahuje váš cluster.
V přehledu skupiny prostředků vyberte název clusteru.
V clusteru vyberte rozšíření v části Nastavení nabídky.
Uvidíte, že ve vašem clusteru běží rozšíření typu microsoft.iotoperations.x, což je název skupiny pro všechny komponenty operací Azure IoT a službu orchestrace. Tato rozšíření mají jedinečnou příponu, která identifikuje vaše nasazení. Na předchozím snímku obrazovky je tato přípona -z2ewy.
Existuje také rozšíření označované jako akvsecretsprovider. Toto rozšíření je zprostředkovatel tajných kódů, který jste nakonfigurovali a nainstalovali do clusteru
az iot ops init
pomocí příkazu. Během testování můžete komponenty operací Azure IoT odstranit a přeinstalovat, ale rozšíření zprostředkovatele tajných kódů ponechte v clusteru.Poznamenejte si úplný název rozšíření s názvem mq-.... Tento název použijete v následujících rychlých startech.
Jak jsme tento problém vyřešili?
V tomto rychlém startu jste nakonfigurovali cluster Kubernetes s podporou Arc, aby mohl bezpečně komunikovat s komponentami operací Azure IoT. Potom jste tyto komponenty nasadili do clusteru. V tomto testovacím scénáři máte jeden cluster Kubernetes, který pravděpodobně běží místně na vašem počítači. V produkčním scénáři ale můžete stejným postupem nasadit úlohy do mnoha clusterů napříč mnoha lokalitami.
Vyčištění prostředků
Pokud budete pokračovat k dalšímu rychlému startu, ponechte všechny prostředky.
Pokud chcete odstranit nasazení operací Azure IoT, ale naplánujte jeho přeinstalaci v clusteru, nezapomeňte v clusteru zachovat poskytovatele tajných kódů.
Ve skupině prostředků na webu Azure Portal vyberte cluster.
Na stránce prostředku clusteru vyberte Rozšíření.
Vyberte všechna rozšíření typu microsoft.iotoperations.x a microsoft.deviceregistry.assets a pak vyberte Odinstalovat. Neodinstalujte rozšíření zprostředkovatele tajných kódů.
Vraťte se do skupiny prostředků a vyberte prostředek vlastního umístění a pak vyberte Odstranit.
Pokud chcete odstranit všechny prostředky, které jste vytvořili pro účely tohoto rychlého startu, odstraňte cluster Kubernetes, ve kterém jste nasadili operace Azure IoT, a odeberte skupinu prostředků Azure, která cluster obsahovala.