首页 / 平台管理 / 集群管理 / 集群 / 纳管集群 / 接入集群 / 接入 Azure AKS 集群

接入 Azure AKS 集群

将已部署的 Azure AKS 集群接入平台统一管理。

前提条件

准备操作环境

为遵守 Azure AKS 的安全规范,接下来的步骤都需要使用 Cloud Shell 操作。

  1. 确保与 Azure Console 的网络互通。

  2. 打开 Kubernetes 服务功能页 ,找到打算接入的集群,点击进入集群概述页。

  3. 点击 连接 按钮,会弹出 连接到 <接入集群名称> 的浮动窗口,按照其上的说明打开 Cloud Shell,配置操作环境。

获取集群信息

获取接入集群令牌

公有云集群的 KubeConfig 文件无法被直接用于接入集群。

请参考常见问题 如何获取集群信息? 获取接入集群令牌。

接入集群

  1. 在左侧导航栏中,单击 集群管理 > 集群

  2. 单击 接入集群

  3. 参照以下说明,配置相关参数。

    参数 说明
    镜像仓库 存储集群所需平台组件镜像的仓库。
    - 平台默认:部署 global 时配置的镜像仓库。
    - 私有仓库:提前搭建的并存放平台所需组件的镜像仓库。需输入访问镜像仓库的 私有镜像仓库地址端口用户名密码
    - 公共仓库:使用位于公网的镜像仓库服务,使用前,您需首先参考 更新公网镜像仓库云凭证 以获取仓库认证权限。
    集群信息 提示:请上传 KubeConfig 文件,由平台自动解析并填写。

    集群地址:接入集群对外暴露 API Server 的访问地址,用于平台访问接入集群的 API Server。

    CA 证书:接入集群的 CA 证书。

    认证方式:接入集群的认证方式,需要使用上一步创建的具备 集群管理权限令牌(Token)进行认证。
  4. 单击 检查连通性 以检查与接入集群的网络连通性并自动识别接入集群的类型,集群类型将以表单右上角角标的形式展现。

  5. 连通性检查通过后,单击 接入,并确认。

    提示

    • 单击处于 接入中 状态的集群右侧的 图标,可在弹出的 执行进度 对话框中,查看集群的执行进度(status.conditions)。
    • 集群接入成功后,在集群列表可查看集群的关键信息,集群的状态显示为正常,并可执行集群相关操作。

网络相关配置

为确保 global 集群与被接入集群网络互通,您须参考 接入集群网络相关配置

后续操作

部署插件

集群接入成功后,您可前往 插件管理 选择为集群部署必须的插件。

提示:由于 AKS 是托管集群,无 Master 节点,所以在平台界面无法查看 Kubernetes 组件监控数据,日志审计也无法查看数据。

纳管集群下命名空间

接入集群后,您可通过基于集群 创建项目 ,或通过 添加项目关联集群 的方式将集群添加至已有项目,可将新接入的集群关联至项目。

进而,通过 导入命名空间 操作,将集群下已有的 Kubernetes 命名空间纳入到平台的项目下进行管理。

Ingress(入站规则)及存储初始化

接入集群后,若需使用 Ingress (入站规则)及存储相关功能,请参考 Azure AKS 集群 Ingress 初始化配置 Azure AKS 集群存储初始化配置

常见问题

AKS node 外网 IP 安全组如何放行

Node 本身只有内网 IP,公网 IP 是前端的一个负载均衡 LB 上的配置,默认使用该公网出站。同时该 LB 受 AKS 主体控制,若直接手动修改该配置会导致异常,可以通过 Kubernetes > 属性 > 基础结构资源组 > 网络安全组 > 添加出站/入站所有规则 放行流量。

AKS 如何登陆 node 节点

查看 Kubelet、CNI、kernel 等系统组件的日志需要首先 SSH 登录到 Node 上,推荐使用 kubectl-node-shell 插件而不是为每个节点分配公网 IP 地址。

方案一:使用kubectl node-shell

官方链接

方案二:使用debug

官方链接

kubectl alpha debug node/aks-newadd-41368356-vmss000002 -it --image=mcr.microsoft.com/dotnet/runtime-deps:6.0
chroot /host

Azure alb 使用内网负载均衡

参考 官方链接

apiVersion: v1
kind: Service
metadata:
  name: internal-app
  namespace: cpaas-system
  annotations:
    service.beta.kubernetes.io/azure-load-balancer-internal: "true"
spec:
  type: LoadBalancer
  ports:
  - name: http-port
    port: 80
    protocol: TCP
  - name: https-port
    port: 443
    protocol: TCP
  selector:
    service.cpaas.io/name: deployment-aks-alb
    service_name: alb2-aks-alb

Azure alb 使用外网负载均衡

部署高可用 alb,访问地址填写外部 lb。

apiVersion: v1
kind: Service
metadata:
  name: azure-alb
  namespace: cpaas-system
spec:
  type: LoadBalancer
  ports:
  - name: http-port
    port: 80
    protocol: TCP
  - name: https-port
    port: 443
    protocol: TCP
  - name: prom-port
    port: 11780
    protocol: TCP
  - name: prom2-port
    port: 11781
    protocol: TCP
  - name: prom3-port
    port: 15012
    protocol: TCP
  selector:
    service_name: alb2-cpaas-system

如果提前就部署好了,可以使用如下命令修改。

kubectl edit helmrequest -n cpaas-system uat-cluster-aks-alb

接入集群后添加节点按钮置灰,如何添加节点?

不支持在平台界面添加节点,请于联系集群供应商添加。

接入集群的证书管理功能支持哪些证书?

  1. Kubernetes 证书:所有接入集群仅支持在平台证书管理界面查看 APIServer 证书信息,不支持查看其他 Kubernetes 证书且不支持自动轮换。

  2. 平台组件证书:所有接入集群可在平台证书管理界面查看平台组件证书信息且支持自动轮换。

还有哪些功能不支持接入的 AKS 集群