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.
V tomto kurzu se dozvíte, jak vytvořit cluster Apache Kafka s povoleným REST proxy v Azure HDInsight pomocí Azure CLI. Azure HDInsight je spravovaná opensourcová analytická služba určená pro podniky. Apache Kafka je opensourcová distribuovaná streamovací platforma. Často se používá jako zprostředkovatel zpráv, protože nabízí funkce podobné frontě pro publikování a odběr zpráv. Proxy rest Kafka umožňuje interakci s clusterem Kafka prostřednictvím rozhraní REST API přes PROTOKOL HTTP. Azure CLI je multiplatformní prostředí příkazového řádku Microsoftu pro správu prostředků Azure.
Rozhraní Apache Kafka API je přístupné pouze prostředkům ve stejné virtuální síti. Ke clusteru se dostanete přímo pomocí SSH. Pokud chcete k platformě Apache Kafka připojit jiné služby, sítě nebo virtuální počítače, musíte nejprve vytvořit virtuální síť a pak v síti vytvořit prostředky. Další informace najdete v tématu Připojení k Apache Kafka pomocí virtuální sítě.
V tomto kurzu se naučíte:
- Požadavky na proxy server REST Kafka
- Vytvoření clusteru Apache Kafka pomocí Azure CLI
Pokud ještě nemáte předplatné Azure, vytvořte si napřed bezplatný účet.
Požadavky
Aplikace registrovaná v rámci Microsoft Entra ID. Klientské aplikace, které zapisujete pro interakci s proxy serverem REST Kafka, budou k ověření v Azure používat ID a tajný kód této aplikace. Další informace najdete v tématu Registrace aplikace pomocí Microsoft identity platform.
Skupina zabezpečení Microsoft Entra, ve které je jako člen vaše registrovaná aplikace. Tato skupina zabezpečení se použije k řízení, které aplikace smí interagovat s proxy serverem REST. Další informace o vytváření skupin Microsoft Entra naleznete v tématu Vytvoření základní skupiny a přidání členů pomocí Microsoft Entra ID.
Azure CLI. Ujistěte se, že máte aspoň verzi 2.0.79. Podívejte se na Instalace Azure CLI.
Vytvoření clusteru Apache Kafka
Přihlaste se ke svému předplatnému Azure.
az login # If you have multiple subscriptions, set the one to use # az account set --subscription "SUBSCRIPTIONID"Nastavte proměnné prostředí. Použití proměnných v tomto kurzu je založeno na Bash. Pro jiná prostředí budou potřeba mírné variace.
Proměnná Popis názevSkupinyZdrojů Nahraďte RESOURCEGROUPNAME názvem nové skupiny prostředků. poloha Umístění nahraďte oblastí, ve které se cluster vytvoří. Pro seznam platných umístění použijte az account list-locationspříkazNázev clusteru Nahraďte CLUSTERNAME globálně jedinečným názvem nového clusteru. účet úložiště Nahraďte STORAGEACCOUNTNAME názvem nového účtu úložiště. httpPassword Heslo nahraďte heslem pro přihlášení ke clusteru, správce. sshPassword Heslo nahraďte heslem pro uživatelské jméno zabezpečeného prostředí sshuser. securityGroupName Nahraďte SECURITYGROUPNAME názvem klientské skupiny zabezpečení Microsoft Entra pro proxy serveru REST Kafka. Proměnná bude předána parametru --kafka-client-group-nameproaz-hdinsight-create.securityGroupID Nahraďte SECURITYGROUPID klientským ID skupiny zabezpečení Microsoft Entra pro proxy serveru REST Kafka. Proměnná bude předána parametru --kafka-client-group-idproaz-hdinsight-create.Úložný kontejner Kontejner úložiště, který bude cluster používat, ponechte jako as-is pro tento tutoriál. Tato proměnná se nastaví s názvem clusteru. workernodeCount Počet pracovních uzlů v clusteru, ponechejte as-is pro účely tohoto kurzu. K zajištění vysoké dostupnosti vyžaduje Kafka minimálně 3 pracovní uzly. typ clusteru Typ clusteru HDInsight ponechte as-is pro účely tohoto kurzu. verze clusteru Verzi clusteru HDInsight ponechte nastavenou na as-is pro účely tohoto kurzu. Kafka REST Proxy vyžaduje minimální verzi clusteru 4.0. componentVersion Verze Kafka, ponechte as-is pro účely tohoto kurzu. Kafka REST Proxy vyžaduje minimální verzi komponenty 2.1. Aktualizujte proměnné požadovanými hodnotami. Pak zadejte příkazy rozhraní příkazového řádku pro nastavení proměnných prostředí.
export resourceGroupName=RESOURCEGROUPNAME export location=LOCATION export clusterName=CLUSTERNAME export storageAccount=STORAGEACCOUNTNAME export httpPassword='PASSWORD' export sshPassword='PASSWORD' export securityGroupName=SECURITYGROUPNAME export securityGroupID=SECURITYGROUPID export storageContainer=$(echo $clusterName | tr "[:upper:]" "[:lower:]") export workernodeCount=3 export clusterType=kafka export clusterVersion=4.0 export componentVersion=kafka=2.1Vytvořte skupinu prostředků zadáním následujícího příkazu:
az group create \ --location $location \ --name $resourceGroupNameVytvořte účet Azure Storage zadáním následujícího příkazu:
# Note: kind BlobStorage is not available as the default storage account. az storage account create \ --name $storageAccount \ --resource-group $resourceGroupName \ --https-only true \ --kind StorageV2 \ --location $location \ --sku Standard_LRSExtrahujte primární klíč z účtu služby Azure Storage a uložte ho do proměnné zadáním následujícího příkazu:
export storageAccountKey=$(az storage account keys list \ --account-name $storageAccount \ --resource-group $resourceGroupName \ --query [0].value -o tsv)Zadáním následujícího příkazu vytvořte kontejner Azure Storage:
az storage container create \ --name $storageContainer \ --account-key $storageAccountKey \ --account-name $storageAccountVytvořte cluster HDInsight. Před zadáním příkazu si poznamenejte následující parametry:
Požadované parametry pro clustery Kafka:
Parametr Popis --typ Hodnota musí být Kafka. --workernode-data-disks-per-node Počet datových disků, které se mají použít na pracovní uzel. HdInsight Kafka se podporuje jenom s datovými disky. Tento kurz používá hodnotu 2. Požadované parametry pro proxy serveru REST Kafka:
Parametr Popis --kafka-management-node-size Velikost uzlu. V tomto kurzu se používá hodnota Standard_D4_v2. --kafka-client-group-id ID klientské skupiny zabezpečení Microsoft Entra pro proxy serveru REST Kafka. Hodnota se předává z proměnné $securityGroupID. --kafka-client-group-name Název klientské skupiny zabezpečení Microsoft Entra pro proxy serveru REST Kafka. Hodnota se předá z proměnné $securityGroupName. --verze Verze clusteru HDInsight musí být minimálně 4.0. Hodnota se předává z proměnné $clusterVersion. --verze-komponenty Verze Kafka musí být minimálně 2.1. Hodnota se předá z proměnné $componentVersion. Pokud chcete vytvořit cluster bez proxy serveru REST, odstraňte
--kafka-management-node-size--kafka-client-group-ida--kafka-client-group-namezaz hdinsight createpříkazu.Pokud máte existující virtuální síť, přidejte parametry
--vnet-namea--subnetjejich hodnoty.
Zadáním následujícího příkazu vytvořte cluster:
az hdinsight create \ --name $clusterName \ --resource-group $resourceGroupName \ --type $clusterType \ --component-version $componentVersion \ --http-password $httpPassword \ --http-user admin \ --location $location \ --ssh-password $sshPassword \ --ssh-user sshuser \ --storage-account $storageAccount \ --storage-account-key $storageAccountKey \ --storage-container $storageContainer \ --version $clusterVersion \ --workernode-count $workernodeCount \ --workernode-data-disks-per-node 2 \ --kafka-management-node-size "Standard_D4_v2" \ --kafka-client-group-id $securityGroupID \ --kafka-client-group-name "$securityGroupName"Dokončení procesu vytváření clusteru může trvat několik minut. Obvykle kolem 15.
Čištění zdrojů
Jakmile budete s článkem hotovi, můžete cluster odstranit. S HDInsight jsou vaše data uložená ve službě Azure Storage, takže můžete cluster bezpečně odstranit, když se nepoužívá. Za cluster HDInsight se vám také účtují poplatky, i když se nepoužívá. Vzhledem k tomu, že poplatky za cluster jsou mnohokrát vyšší než poplatky za úložiště, dává smysl odstranit clustery, když se nepoužívají.
Pokud chcete odebrat prostředky, zadejte všechny nebo některé z následujících příkazů:
# Remove cluster
az hdinsight delete \
--name $clusterName \
--resource-group $resourceGroupName
# Remove storage container
az storage container delete \
--account-name $storageAccount \
--name $storageContainer
# Remove storage account
az storage account delete \
--name $storageAccount \
--resource-group $resourceGroupName
# Remove resource group
az group delete \
--name $resourceGroupName
Další kroky
Teď, když jste úspěšně vytvořili cluster s povoleným proxy serverem Apache Kafka v Azure HDInsight pomocí Azure CLI, použijte kód Pythonu k interakci s proxy serverem REST: