Poznámka:
Přístup k této stránce vyžaduje autorizaci. Můžete se zkusit přihlásit nebo změnit adresáře.
Přístup k této stránce vyžaduje autorizaci. Můžete zkusit změnit adresáře.
Cluster Kubernetes s podporou Azure Arc je předpokladem pro nasazení operací Azure IoT. Tento článek popisuje, jak připravit cluster před nasazením operací Azure IoT. Tento článek obsahuje návody pro Ubuntu, Windows, Azure Local a Tanzu Kubernetes Grid (TKG).
Pokud chcete operace Azure IoT nasadit rychle a spustit ukázkovou úlohu v testovacím prostředí, projděte si rychlý start: Spuštění operací Azure IoT v GitHub Codespaces s využitím K3s.
Požadavky
Microsoft podporuje Azure Kubernetes Service (AKS) Edge Essentials pro nasazení ve Windows, K3s pro nasazení v Ubuntu, nasazení AKS v Azure Local a Tanzu Kubernetes release (TKr) v TKG. Pokud chcete nasadit operace Azure IoT do řešení s více uzly, použijte K3s na Ubuntu.
- Ubuntu
- AKS Edge Essentials
- AKS v Azure Local
- TKG s clusterem pro správu
K přípravě clusteru Kubernetes s podporou Azure Arc potřebujete:
Předplatné Azure s rolí vlastníka nebo kombinací rolí Přispěvatel a Správce uživatelských přístupů. Úroveň přístupu můžete zkontrolovat tak, že přejdete do svého předplatného, vyberete Řízení přístupu (IAM) na levé straně webu Azure Portal a pak vyberete Zobrazit můj přístup. Pokud nemáte předplatné Azure, vytvořte si ho zdarma , než začnete.
Skupina prostředků Azure. Pro každou skupinu prostředků je podporována pouze jedna instance operací Azure IoT. Pokud chcete vytvořit novou skupinu prostředků, použijte příkaz az group create . Seznam aktuálně podporovaných oblastí Azure najdete v tématu Podporované oblasti.
az group create --location <REGION> --resource-group <RESOURCE_GROUP> --subscription <SUBSCRIPTION_ID>Azure CLI verze 2.62.0 nebo novější nainstalovaná na počítači clusteru Použijte
az --versionke kontrole vaší verze aaz upgradek aktualizaci v případě potřeby. Další informace najdete v tématu Postup instalace Azure CLI.Nejnovější verze rozšíření Connectedk8s pro Azure CLI:
az extension add --upgrade --name connectedk8s
Hardware, který splňuje požadavky na systém:
- Podporovaná prostředí pro Azure IoT operace
- Požadavky na systém Kubernetes s podporou Azure Arc
- Požadavky na K3s.
Pokud plánujete nasadit Azure IoT Operations do víceuzlového clusteru s povolenou odolností proti chybám, projděte si požadavky na hardware a úložiště v části Příprava systému Linux pro svazky Edge.
Vytvoření clusteru a povolení služby Arc
Tato část obsahuje postup vytvoření clusterů v ověřených prostředích v Linuxu a Windows.
- Ubuntu
- AKS Edge Essentials
- AKS v Azure Local
- TKG s clusterem pro správu
Příprava clusteru K3s Kubernetes na Ubuntu:
Vytvořte cluster K3s s jedním uzlem nebo více uzly. Příklady najdete v úvodní příručce K3s nebo v projektech souvisejících s K3s.
Zkontrolujte, jestli se kubectl nainstaloval jako součást K3s. Pokud ne, postupujte podle pokynů k instalaci kubectl v Linuxu.
kubectl version --clientPostupujte podle pokynů k instalaci Helmu.
Vytvořte soubor yaml konfigurace K3s v
.kube/config:mkdir ~/.kube sudo KUBECONFIG=~/.kube/config:/etc/rancher/k3s/k3s.yaml kubectl config view --flatten > ~/.kube/merged mv ~/.kube/merged ~/.kube/config chmod 0600 ~/.kube/config export KUBECONFIG=~/.kube/config #switch to k3s context kubectl config use-context default sudo chmod 644 /etc/rancher/k3s/k3s.yamlSpuštěním následujícího příkazu zvyšte limity sledování uživatelů nebo instancí.
echo fs.inotify.max_user_instances=8192 | sudo tee -a /etc/sysctl.conf echo fs.inotify.max_user_watches=524288 | sudo tee -a /etc/sysctl.conf sudo sysctl -pPokud chcete dosáhnout lepšího výkonu, zvyšte limit popisovače souborů:
echo fs.file-max = 100000 | sudo tee -a /etc/sysctl.conf sudo sysctl -p
Aktivujte Arc pro váš cluster
Připojte cluster ke službě Azure Arc, abyste ho mohli spravovat vzdáleně.
Z počítače, který má
kubectlpřístup k vašemu clusteru, se přihlaste k Azure CLI pomocí uživatelského účtu Microsoft Entra, který má požadované role pro předplatné Azure:az loginPokud se v libovolném okamžiku zobrazí chyba s informací , že pro přístup k vašemu prostředku je potřeba spravovat vaše zařízení, spusťte
az loginto znovu a ujistěte se, že se přihlašujete interaktivně pomocí prohlížeče.Po přihlášení se v Azure CLI zobrazí všechna vaše předplatná a označí vaše výchozí předplatné hvězdičkou
*. Pokud chcete pokračovat s výchozím předplatným, vyberteEnter. V opačném případě zadejte číslo předplatného Azure, které chcete použít.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é. K registraci poskytovatelů prostředků potřebujete oprávnění k provedení
/register/actionoperace, která je součástí rolí Přispěvatel předplatného a Vlastník. Další informace najdete v tématu Poskytovatelé a typy prostředků Azure.az provider register -n "Microsoft.ExtendedLocation" az provider register -n "Microsoft.Kubernetes" az provider register -n "Microsoft.KubernetesConfiguration" az provider register -n "Microsoft.IoTOperations" az provider register -n "Microsoft.DeviceRegistry" az provider register -n "Microsoft.SecretSyncController"Pomocí příkazu az connectedk8s connect povolte cluster Kubernetes a spravujte ho jako součást skupiny prostředků Azure.
az connectedk8s connect --name <CLUSTER_NAME> -l <REGION> --resource-group <RESOURCE_GROUP> --subscription <SUBSCRIPTION_ID> --enable-oidc-issuer --enable-workload-identity --disable-auto-upgradeAby se zabránilo neplánovaným aktualizacím služby Azure Arc a systémovým rozšířením Arc, které operace Azure IoT používá jako závislosti, tento příkaz zakáže automatické aktualizace. Místo toho podle potřeby agenty ručně upgradujte.
Důležité
Pokud vaše prostředí používá proxy server nebo službu Azure Arc Gateway, upravte
az connectedk8s connectpříkaz s informacemi o proxy serveru:- Postupujte podle pokynů v Připojte se pomocí odchozího proxy serveru nebo Připojte clustery Kubernetes k Azure Arc pomocí služby Azure Arc Gateway.
- Přidejte
169.254.169.254do--proxy-skip-rangeparametruaz connectedk8s connectpříkazu. Azure Device Registry používá tento místní koncový bod k získání přístupových tokenů pro autorizaci.
Operace Azure IoT nepodporují proxy servery, které vyžadují důvěryhodný certifikát.
Získejte adresu URL poskytovatele clusteru.
az connectedk8s show --resource-group <RESOURCE_GROUP> --name <CLUSTER_NAME> --query oidcIssuerProfile.issuerUrl --output tsvUložte výstup tohoto příkazu, který se použije v dalších krocích.
Vytvořte konfigurační soubor k3s.
sudo nano /etc/rancher/k3s/config.yamlPřidejte do
config.yamlsouboru následující obsah a nahraďte<SERVICE_ACCOUNT_ISSUER>zástupný symbol adresou URL vystavitele vašeho clusteru.kube-apiserver-arg: - service-account-issuer=<SERVICE_ACCOUNT_ISSUER> - service-account-max-token-expiration=24hUložte soubor a ukončete editor nano.
Připravte se na povolení služby Azure Arc, vlastního umístění v clusteru Arc tím, že získáte ID objektu vlastního umístění a uložíte ho jako proměnnou prostředí OBJECT_ID. Abyste mohli úspěšně spustit příkaz, musíte být přihlášeni k Azure CLI pomocí uživatelského účtu Microsoft Entra, nikoli pomocí instančního objektu (service principal). Spusťte následující příkaz přesně tak, jak je napsaný, aniž byste změnili hodnotu GUID.
export OBJECT_ID=$(az ad sp show --id bc313c14-388c-4e7d-a58e-70017303ee3b --query id -o tsv)Poznámka:
Pokud se zobrazí chyba: "Nejde načíst identifikátor aplikace 'custom-locations'". Pokračuje se bez povolení této funkce. Nedostatečná oprávnění k dokončení operace: váš služební principál možná postrádá potřebná oprávnění k načtení ID objektu vlastního umístění. Přihlaste se k Azure CLI pomocí uživatelského účtu Microsoft Entra, který splňuje požadavky. Další informace najdete v tématu Vytváření a správa vlastních umístění.
Pomocí příkazu az connectedk8s enable-features povolte funkci "custom location" ve vašem clusteru Arc. Tento příkaz používá proměnnou prostředí OBJECT_ID uloženou z předchozího kroku k nastavení hodnoty pro parametr custom-locations-oid. Spusťte tento příkaz na počítači, na kterém jste nasadili cluster Kubernetes:
az connectedk8s enable-features -n <CLUSTER_NAME> -g <RESOURCE_GROUP> --custom-locations-oid $OBJECT_ID --features cluster-connect custom-locationsRestartujte K3s.
systemctl restart k3s
Konfigurace clusterů s více uzly pro Azure Container Storage
V clusterech s Ubuntu s více uzly s alespoň třemi uzly máte možnost povolit odolnost proti chybám pro úložiště se službou Azure Container Storage povolenou službou Azure Arc při nasazování operací Azure IoT.
Pokud chcete povolit odolnost proti chybám během nasazování, nakonfigurujte clustery podle kroků v části Příprava svazků Edge pro Linux pomocí clusteru Ubuntu s více uzly.
Pokud cluster spouštíte v jiné distribuci Kubernetes než k3s, projděte si pokyny k přípravě Linuxu s jinými platformami.
Rozšířená konfigurace
V tuto chvíli, když máte cluster Kubernetes s podporou Služby Azure Arc, ale před nasazením operací Azure IoT do něj možná budete chtít cluster nakonfigurovat pro pokročilé scénáře.
- Pokud chcete povolit funkce pozorovatelnosti v clusteru, postupujte podle kroků v části Nasazení prostředků pozorovatelnosti a nastavte protokoly.
- Pokud chcete v clusteru nakonfigurovat vlastního vystavitele certifikátu, postupujte podle kroků v tématu Správa > certifikátů Přineste si vlastního vystavitele.
Další kroky
Teď, když máte cluster Kubernetes s podporou Azure Arc, můžete nasadit operaci Azure IoT s testovacím nastavením nebo produkčním nastavením.
- Testovací nasazení: Doporučuje se pro rychlé vyhodnocení a vytváření prototypů před nasazením v produkčním prostředí. Testovací nasazení není vhodné pro produkční prostředí, nemá pozorovatelnost a posílení zabezpečení.
- Produkční nasazení: Doporučeno pro úlohy připravené pro produkční prostředí. Produkční nasazení je vhodné pro nasazení IoT z reálného světa s požadavky na dodržování předpisů a zabezpečení.