练习 - 在 Azure Kubernetes 服务群集上部署 KEDA

已完成

安装 Azure CLI aks-preview 扩展

  1. 在浏览器中打开 Azure Cloud Shell 并选择“Bash”

  2. 使用 az extension add 命令安装 aks-preview 扩展:

    az extension add --name aks-preview --allow-preview true
    
  3. 使用 az extension update 命令更新到最新版本的 aks-preview 扩展:

    az extension update --name aks-preview --allow-preview true
    

注册 AKS-KedaPreview 功能标志

  1. 使用 az feature register 命令注册 AKS-KedaPreview 特征标志:

    az feature register --name AKS-KedaPreview --namespace Microsoft.ContainerService
    

    状态显示为“已注册”需要几分钟时间

  2. 使用 az feature show 命令验证注册状态:

    az feature show --name AKS-KedaPreview --namespace Microsoft.ContainerService
    
  3. 当状态显示为“已注册”时,使用 az provider register 命令刷新 Microsoft.ContainerService 资源提供程序的注册

    az provider register --namespace Microsoft.ContainerService
    

在 AKS 群集上启用 KEDA 加载项

  1. 使用以下命令为资源组名称、位置和群集名称创建环境变量,以便在此模块中使用。 如果要使用自己的名称或位置,请将以下命令中的值替换为自己的值。

    RESOURCE_GROUP=myContosoRG
    LOCATION=westus2
    CLUSTER_NAME=myContosoCluster
    
  2. 使用 az group create 命令创建 Azure 资源组:

    az group create -n $RESOURCE_GROUP -l $LOCATION
    
  3. 使用 az aks create 命令和 --enable-keda 标志创建启用了 KEDA 加载项的 AKS 群集:

    az aks create -g $RESOURCE_GROUP -n $CLUSTER_NAME --enable-keda --generate-ssh-keys
    

    此命令可能需要几分钟才能完成运行。

  4. 使用 az aks get-credentials 命令连接到 AKS 群集:

    az aks get-credentials -n $CLUSTER_NAME -g $RESOURCE_GROUP
    
  5. 使用 az aks show 命令验证是否已在群集上安装 KEDA 加载项,并将 --query 标志设置为 workloadAutoScalerProfile.keda.enabled

    az aks show -n $CLUSTER_NAME -g $RESOURCE_GROUP --query "workloadAutoScalerProfile.keda.enabled"
    

    输出应类似于以下示例,其中显示群集上已安装 KEDA 加载项:

    true
    

创建用于 Redis 的 Azure 缓存实例

  1. 使用以下命令为 Redis 名称创建环境变量,以便在整个模块中使用:

    REDIS_NAME=contoso-redis-$RANDOM
    
  2. 使用 az redis create 命令创建 Azure Cache for Redis 实例:

    az redis create --location $LOCATION --name $REDIS_NAME --resource-group $RESOURCE_GROUP --sku Basic --vm-size c0 --enable-non-ssl-port
    

    此命令可能需要几分钟才能完成。

  3. 使用 az redis showaz redis list-keys 命令为 Redis 主机和密钥创建环境变量,以便在此模块中使用:

    REDIS_HOST=$(az redis show -n $REDIS_NAME -g $RESOURCE_GROUP -o tsv --query "hostName")
    REDIS_KEY=$(az redis list-keys --name $REDIS_NAME --resource-group $RESOURCE_GROUP -o tsv --query "primaryKey")