快速入门:使用适用于 Azure Kubernetes 服务 (AKS) 的 Azure Linux 容器主机创建群集

适用于 AKS 的 Azure Linux 容器主机提供快速启动时间、可预测的更新,以及具有紧密 AKS 生命周期集成的强安全性默认值。 Microsoft拥有从内核到 CVE 响应的完整堆栈,从而简化操作并减少客户开销。 有关详细信息,请参阅 Azure Linux for AKS

在此快速入门中,您将学习如何:

  • 安装 Kubernetes CLI kubectl
  • 创建 Azure 资源组。
  • 创建和部署 Azure Linux 容器主机群集。
  • 配置 kubectl 以连接到 Azure Linux 容器主机群集。

Note

Azure Linux 4.0 现在位于 preview 中,严格限制为评估和测试目的。 它不适合生产用途。

先决条件

  • 需要最新版本的 Azure CLI。 运行 az --version 即可查找版本。 如果需要进行安装或升级,请参阅安装 Azure CLI

设置环境变量。

设置以下环境变量,确保在整个部署中进行一致的命名。 在本快速入门中,我们将资源组名称设置为 testAzureLinuxResourceGroup,将群集名称设置为 testAzureLinuxCluster,并将位置设置为 chinanorth3

export RESOURCE_GROUP=testAzureLinuxResourceGroup
export CLUSTER_NAME=testAzureLinuxCluster
export LOCATION=chinanorth3

创建资源组

若要使用 Azure Linux 容器主机创建群集,请使用:

  • Azure资源组:在其中部署和管理Azure资源的逻辑容器。
  • AKS:托管的 Kubernetes 服务,可让你快速创建生产就绪的 Kubernetes 群集。

创建资源组时,需要指定位置。 此位置为:

  • 资源组元数据的存储位置。
  • 如果在创建资源时未指定其他区域,则资源在 Azure 中运行的位置。

使用具有前面设置的 az group create 资源组名称和区域环境变量的命令创建资源组。

az group create --name $RESOURCE_GROUP --location $LOCATION

示例输出:

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup",
  "location": "chinanorth3",
  "managedBy": null,
  "name": "testAzureLinuxResourceGroup",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "tags": null,
  "type": "Microsoft.Resources/resourceGroups"
}

创建 Azure Linux 容器主机群集

使用 az aks create 命令和 --os-sku 参数创建 AKS 群集,以便使用 Azure Linux 映像预配 Azure Linux 容器主机。 以下示例在资源组 testAzureLinuxResourceGrouptestAzureLinuxCluster> Azure Linux 容器主机群集:

az aks create --name $CLUSTER_NAME --resource-group $RESOURCE_GROUP --os-sku AzureLinux

示例输出:

{
  "id": "/subscriptions/xxxxx/resourceGroups/testAzureLinuxResourceGroup/providers/Microsoft.ContainerService/managedClusters/testAzureLinuxCluster",
  "location": "chinanorth3",
  "name": "testAzureLinuxCluster",
  "properties": {
    "provisioningState": "Succeeded"
  },
  "type": "Microsoft.ContainerService/managedClusters"
}

片刻之后,该命令将会完成,并返回有关群集的 JSON 格式信息。

使用 kubectl 连接到群集

  1. 使用 kubectl 命令将 az aks get-credentials 配置为连接到你的 Kubernetes 群集。 以下示例使用前面创建的资源组和群集名称获取 Azure Linux 容器主机群集的凭据:

    az aks get-credentials --resource-group $RESOURCE_GROUP --name $CLUSTER_NAME
    
  2. 使用 kubectl get nodes 命令验证与群集的连接,以返回群集节点的列表:

    kubectl get nodes
    

    示例输出:

    NAME                           STATUS   ROLES   AGE     VERSION
    aks-nodepool1-00000000-0       Ready    agent   10m     v1.34.4
    aks-nodepool1-00000000-1       Ready    agent   10m     v1.34.4
    

    所有节点都显示Ready状态,确认Azure Linux 容器主机群集正在运行且可访问。

清理资源

如果不打算继续使用此群集,请删除资源组,以避免使用 az group delete 命令持续产生费用。 删除资源组会删除 AKS 群集和所有关联的资源。

az group delete --name $RESOURCE_GROUP --yes --no-wait

现在已运行 Azure Linux 容器主机群集,接下来可以: