连接远程的 Azure Kubernets Service 集群

2025-04-15#Kubernetes

AKS(Azure Kubernetes Service) 是 Azure 提供的 Kubernetes 集群服务。在日常开发和维护的过程中,常常需要登录到集群中排查问题。由于需要与 Azure 进行认证,因此需要一些特殊的配置。

配置 Kubectl 🔗

安装 kubectl 🔗

参考 Kubenetes 官网的 《Install Tools》,安装 kubectl 命令行工具。

安装 kubelogin 🔗

kubelogin 是一个实现了 Azure 认证的 Kubernetes 插件,项目主页见 https://github.com/Azure/kubelogin。虽然可以利用 Azure 命令行工具 az 通过如下命令安装

az aks install-cli

但可能会出现下载失败的情况。为此,可以直接在 Releases 页面下载特定平台下的压缩包,解压后使用。

登录认证 🔗

使用 az 与 Azure 进行验证:

az login

获取 AKS 的登录凭证。此时需要执行 Resource Group(RESOURCE_GROUP_NAME) 和 AKS集群的名字(AKS_NAME):

az aks get-credentials -g ${RESOURCE_GROUP_NAME} -n ${AKS_NAME}

注意,如果在 WSL 运行此命令,凭证也可能保存在 Windows 系统下的 C:\Users\<Windows-username>\.kube\config 目录下。为此,可将其链接到 WSL 环境中:

mkdir -p ~/.kube
ln -sf /mnt/c/Users/<Windows-username>/.kube/config ~/.kube/config

验证 🔗

列出所有的上下文,以便验证配置是否成功:

kubectl config get-context

其他工具 🔗

配置 ACR 🔗

使用 az login 登录后,再使用 az acr login 即可登录 Container Registry:

az acr login --name <acr_name>

使用 Helm 🔗

列出某个 ACR 的所有仓库:

az acr repository list --name <acr_name>

访问 Chart 时候,使用 oci 地址。比如下载 Chart:

helm pull oci://<acr_name>.azurecr.io/helm/<chart_name>:<chart_version>

加载中...