Vytvoření kontroleru dat Azure Arc pomocí rozhraní příkazového řádku

Předpoklady

Projděte si téma Plánování nasazení datových služeb s podporou služby Azure Arc, kde najdete přehled informací.

Instalace nástrojů

Než začnete, nainstalujte arcdata rozšíření pro Azure (az) CLI.

Instalace rozšíření (arcdata) pro Azure (az) CLI

Bez ohledu na to, kterou cílovou platformu zvolíte, musíte před vytvořením kontroleru dat nastavit následující proměnné prostředí. Tyto proměnné prostředí se stanou přihlašovacími údaji používanými pro přístup k metrikám a řídicím panelům protokolů po vytvoření kontroleru dat.

Nastavení proměnných prostředí

Následuje dvě sady proměnných prostředí potřebné pro přístup k metrikám a řídicím panelům protokolů.

Proměnné prostředí zahrnují hesla pro služby protokolů a metrik. Hesla musí mít alespoň osm znaků a musí obsahovat znaky ze tří z následujících čtyř kategorií: velká písmena latinky, malá písmena latinky, číslice a jiné než alfanumerické znaky.

## variables for Metrics and Monitoring dashboard credentials
export AZDATA_LOGSUI_USERNAME=<username for Kibana dashboard>
export AZDATA_LOGSUI_PASSWORD=<password for Kibana dashboard>
export AZDATA_METRICSUI_USERNAME=<username for Grafana dashboard>
export AZDATA_METRICSUI_PASSWORD=<password for Grafana dashboard>

Připojení do clusteru Kubernetes

Připojení a ověřte se v clusteru Kubernetes a před zahájením vytváření kontroleru dat Azure Arc vyberte existující kontext Kubernetes. Způsob připojení ke clusteru nebo službě Kubernetes se liší. Informace o připojení k serveru rozhraní Kubernetes API najdete v dokumentaci k distribuci nebo službě Kubernetes, kterou používáte.

Zkontrolujte, jestli máte aktuální připojení Kubernetes, a pomocí následujících příkazů potvrďte aktuální kontext.

kubectl cluster-info
kubectl config current-context

Vytvoření kontroleru dat Azure Arc

Následující části obsahují pokyny pro konkrétní typy platforem Kubernetes. Postupujte podle pokynů pro vaši platformu.

Tip

Pokud nemáte žádný cluster Kubernetes, můžete ho vytvořit v Azure. Postupujte podle pokynů v rychlém startu: Nasazení datových služeb s podporou Služby Azure Arc – přímo připojený režim – Azure Portal a projděte si celý proces.

Pak postupujte podle pokynů v části Vytvoření ve službě Azure Kubernetes Service (AKS).

Vytvoření ve službě Azure Kubernetes Service (AKS)

Ve výchozím nastavení profil nasazení AKS používá managed-premium třídu úložiště. managed-premium Třída úložiště funguje jenom v případě, že máte virtuální počítače nasazené pomocí imagí virtuálních počítačů, které mají disky Premium.

Pokud budete jako třídu úložiště používat managed-premium , můžete spuštěním následujícího příkazu vytvořit kontroler dat. Zástupné symboly v příkazu nahraďte názvem vaší skupiny prostředků, ID předplatného a umístěním Azure.

az arcdata dc create --profile-name azure-arc-aks-premium-storage --k8s-namespace <namespace> --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect --use-k8s

#Example:
#az arcdata dc create --profile-name azure-arc-aks-premium-storage --k8s-namespace arc --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect --use-k8s

Pokud si nejste jistí, jakou třídu úložiště použít, měli byste použít default třídu úložiště, která se podporuje bez ohledu na typ virtuálního počítače, který používáte. To prostě nebude poskytovat nejrychlejší výkon.

Pokud chcete použít default třídu úložiště, můžete spustit tento příkaz:

az arcdata dc create --profile-name azure-arc-aks-default-storage --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect

#Example:
#az arcdata dc create --profile-name azure-arc-aks-default-storage  --k8s-namespace arc --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Vytvoření v AKS v Azure Stack HCI

Konfigurace úložiště (Azure Stack HCI s využitím AKS-HCI)

Pokud používáte Azure Stack HCI s AKS-HCI, vytvořte vlastní třídu úložiště s fsType.

fsType: ext4

Tento typ použijte k nasazení kontroleru dat. Úplné pokyny najdete v tématu Vytvoření vlastní třídy úložiště pro AKS na disku Azure Stack HCI.

Ve výchozím nastavení profil nasazení používá třídu úložiště s názvem default a typ LoadBalancerslužby .

Spuštěním následujícího příkazu můžete vytvořit kontroler dat pomocí default třídy úložiště a typu LoadBalancerslužby .

az arcdata dc create --profile-name azure-arc-aks-hci  --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect

#Example:
#az arcdata dc create --profile-name azure-arc-aks-hci  --k8s-namespace arc --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Vytvoření v Azure Red Hat OpenShiftu (ARO)

Vytvoření vlastního profilu nasazení

Použijte profil azure-arc-azure-openshift pro Azure RedHat Open Shift.

az arcdata dc config init --source azure-arc-azure-openshift --path ./custom

Vytvoření kontroleru dat

Spuštěním následujícího příkazu můžete vytvořit kontroler dat:

az arcdata dc create --profile-name azure-arc-azure-openshift  --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect

#Example
#az arcdata dc create --profile-name azure-arc-azure-openshift  --k8s-namespace arc --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Vytvoření na platformě OCP (Red Hat OpenShift Container Platform)

Určení třídy úložiště

Pokud chcete zjistit, kterou třídu úložiště použít, spusťte následující příkaz.

kubectl get storageclass

Vytvoření vlastního profilu nasazení

Spuštěním následujícího příkazu vytvořte nový soubor vlastního azure-arc-openshift profilu nasazení na základě profilu nasazení. Tento příkaz vytvoří adresář custom v aktuálním pracovním adresáři a vlastní soubor control.json profilu nasazení v tomto adresáři.

Použijte profil azure-arc-openshift pro platformu OpenShift Container Platform.

az arcdata dc config init --source azure-arc-openshift --path ./custom

Nastavení třídy úložiště

Teď nastavte požadovanou třídu úložiště nahrazením <storageclassname> v následujícím příkazu názvem třídy úložiště, kterou chcete použít, která byla určena spuštěním výše uvedeného kubectl get storageclass příkazu.

az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.data.className=<storageclassname>"
az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.logs.className=<storageclassname>"

#Example:
#az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.data.className=mystorageclass"
#az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.logs.className=mystorageclass"

Nastavení loadbalanceru (volitelné)

Ve výchozím nastavení azure-arc-openshift se profil nasazení používá NodePort jako typ služby. Pokud používáte cluster OpenShift, který je integrovaný s nástrojem pro vyrovnávání zatížení, můžete konfiguraci změnit tak, aby používala LoadBalancer typ služby pomocí následujícího příkazu:

az arcdata dc config replace --path ./custom/control.json --json-values "$.spec.services[*].serviceType=LoadBalancer"

Vytvoření kontroleru dat

Teď jste připraveni vytvořit kontroler dat pomocí následujícího příkazu.

Poznámka:

Parametr --path by měl odkazovat na adresář obsahující soubor control.json, ne na samotný soubor control.json.

Poznámka:

Při nasazování na Platformu kontejneru OpenShift zadejte hodnotu parametru --infrastructure . Možnosti jsou: aws, azure, alibaba, gcp, onpremises.

az arcdata dc create --path ./custom  --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect --infrastructure <infrastructure>

#Example:
#az arcdata dc create --path ./custom  --k8s-namespace arc --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect --infrastructure onpremises

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Vytvoření v open source, upstreamu Kubernetes (kubeadm)

Ve výchozím nastavení profil nasazení kubeadm používá třídu úložiště s názvem local-storage a typem NodePortslužby . Pokud je to přijatelné, můžete přeskočit níže uvedené pokyny, které nastaví požadovanou třídu úložiště a typ služby a okamžitě spustí az arcdata dc create následující příkaz.

Pokud chcete profil nasazení přizpůsobit tak, aby určil konkrétní třídu úložiště nebo typ služby, začněte vytvořením nového souboru vlastního profilu nasazení na základě profilu nasazení kubeadm spuštěním následujícího příkazu. Tento příkaz vytvoří adresář custom v aktuálním pracovním adresáři a vlastní soubor control.json profilu nasazení v tomto adresáři.

az arcdata dc config init --source azure-arc-kubeadm --path ./custom 

Dostupné třídy úložiště můžete vyhledat spuštěním následujícího příkazu.

kubectl get storageclass

Teď nastavte požadovanou třídu úložiště nahrazením <storageclassname> v následujícím příkazu názvem třídy úložiště, kterou chcete použít, která byla určena spuštěním výše uvedeného kubectl get storageclass příkazu.

az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.data.className=<storageclassname>"
az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.logs.className=<storageclassname>"

#Example:
#az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.data.className=mystorageclass"
#az arcdata dc config replace --path ./custom/control.json --json-values "spec.storage.logs.className=mystorageclass"

Ve výchozím nastavení se profil nasazení kubeadm používá NodePort jako typ služby. Pokud používáte cluster Kubernetes, který je integrovaný s nástrojem pro vyrovnávání zatížení, můžete konfiguraci změnit pomocí následujícího příkazu.

az arcdata dc config replace --path ./custom/control.json --json-values "$.spec.services[*].serviceType=LoadBalancer"

Teď jste připraveni vytvořit kontroler dat pomocí následujícího příkazu.

Poznámka:

Při nasazování na Platformu kontejneru OpenShift zadejte hodnotu parametru --infrastructure . Možnosti jsou: aws, azure, alibaba, gcp, onpremises.

az arcdata dc create --path ./custom  --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect --infrastructure <infrastructure>

#Example:
#az arcdata dc create --path ./custom - --k8s-namespace <namespace> --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect --infrastructure onpremises

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Vytvoření ve službě AWS Elastic Kubernetes Service (EKS)

Ve výchozím nastavení je gp2 třída úložiště EKS a typ služby je LoadBalancer.

Spuštěním následujícího příkazu vytvořte kontroler dat pomocí zadaného profilu nasazení EKS.

az arcdata dc create --profile-name azure-arc-eks  --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect

#Example:
#az arcdata dc create --profile-name azure-arc-eks  --k8s-namespace <namespace> --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Vytvoření ve službě Google Cloud Kubernetes Engine Service (GKE)

Ve výchozím nastavení je standard třída úložiště GKE a typ služby je LoadBalancer.

Spuštěním následujícího příkazu vytvořte kontroler dat pomocí zadaného profilu nasazení GKE.

az arcdata dc create --profile-name azure-arc-gke --k8s-namespace <namespace> --use-k8s --name arc --subscription <subscription id> --resource-group <resource group name> --location <location> --connectivity-mode indirect

#Example:
#az arcdata dc create --profile-name azure-arc-gke --k8s-namespace <namespace> --use-k8s --name arc --subscription xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx --resource-group my-resource-group --location eastus --connectivity-mode indirect

Po spuštění příkazu pokračujte monitorováním stavu vytváření.

Monitorování stavu vytváření

Vytvoření kontroleru trvá několik minut. Průběh můžete sledovat v jiném okně terminálu pomocí následujících příkazů:

Poznámka:

Následující ukázkové příkazy předpokládají, že jste vytvořili kontroler dat s názvem arc-dc a obor názvů Kubernetes .arc Pokud jste použili různé hodnoty, aktualizujte skript odpovídajícím způsobem.

kubectl get datacontroller/arc-dc --namespace arc
kubectl get pods --namespace arc

Stav vytváření libovolného podu můžete také zkontrolovat spuštěním příkazu, který je podobný níže. To je užitečné zejména při řešení jakýchkoli problémů.

kubectl describe po/<pod name> --namespace arc

#Example:
#kubectl describe po/control-2g7bl --namespace arc

Řešení potíží s vytvářením

Pokud při vytváření narazíte na nějaké potíže, prohlédnou si průvodce odstraňováním potíží.