多云混合云之多集群统一管理:基于阿里云ACK统一纳管多个不同Kubernetes集群

本文涉及的产品
容器镜像服务 ACR,镜像仓库100个 不限时长
简介: 目前阿里云云原生产品家族已经支持多集群管理功能,允许使用阿里云容器服务Kubernetes(简称ACK)控制台或kubectl命令导入、统一纳管其他公有云、客户IDC自建K8s集群,集中管理部署K8s工作负载;并可以针对工作负载流量统一管理,支持服务就近访问、故障转移能力。

目前阿里云云原生产品家族已经支持多集群管理功能,允许使用阿里云容器服务Kubernetes(简称ACK)控制台或kubectl命令接入、统一纳管其他公有云、客户IDC自建K8s集群,集中管理部署K8s工作负载;并可以针对工作负载流量统一管理,支持服务就近访问、故障转移能力。
本文重点介绍如何使用ACK控制台来接入一个外部Kubernetes集群,无论这个集群是否提供公网访问能力,或者该集群是来自其他公有云提供商,亦或是用户IDC自定义集群。

前提条件

  • 您需要开通容器服务、弹性伸缩(ESS)服务和访问控制(RAM)服务。
    登录 容器服务管理控制台 、 RAM 管理控制台 和 弹性伸缩控制台 开通相应的服务。
  • 修改Kubernetes集群仍然必须在原有的集群中进行完成,包括添加与删除节点、升级Kubernetes集群版本以及更改Kubernetes组件参数等。
  • 该功能目前只针对白名单客户开放,扫描以下二维码开启邀测:
    image

Demo示例

为了帮助您更好地理解,以下是我们制作的一个简短的视频Demo,演示如何在ACK控制台上统一纳管一个Google GKE K8s集群。

创建自有Kubernetes集群用于接入外部集群

按照以下步骤可以在ACK控制台中创建自有Kubernetes集群用于接入外部集群,具体如下:

  • 登录 容器服务管理控制台, 在 Kubernetes 菜单下,单击左侧导航栏的集群 > 集群,进入集群列表页面。
  • 单击页面右上角的创建 Kubernetes 集群,在弹出的选择集群模板中,选择导入已有Kubernetes集群,单击创建。
    图片.png
  • 默认进入导入已有 Kubernetes 集群配置页面,如下所示。
    图片.png
  • 填写集群的名称,例如test-external-cluster1。集群名称应包含1-63个字符,可包含数字、汉字、英文字符或连字符(-)。
  • 选择集群所在的地域和可用区。
  • 设置集群的网络。Kubernetes 集群仅支持专有网络。您可以在已有 VPC 列表中选择所需的 VPC 和交换机。需要绑定EIP,用于建立集群链接。
  • 单击创建集群,启动创建过程。

接入外部Kubernetes集群

按照以下步骤可以在ACK控制台中接入外部Kubernetes集群,具体如下:

  • 在新集群test-external-cluster1右侧单击管理,进入基本信息页面。在页面下方,可以看到集群导入代理配置:
    图片.png
  • 单击复制,将其中的yaml文件内容拷贝到agent.yaml文件中,并在目标集群中执行命令:
    kubectl apply -f agent.yaml
  • 在目标集群中执行kubectl get all -n ack-system命令,查看代理运行状况。
NAME                                     READY   STATUS    RESTARTS   AGE
pod/ack-cluster-agent-655b75c987-dwp6b   1/1     Running   0          9s

NAME                                DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
deployment.apps/ack-cluster-agent   1         1         1            1           26m

NAME                                           DESIRED   CURRENT   READY   AGE
replicaset.apps/ack-cluster-agent-655b75c987   1         1         1       26m
  • 可以在容器服务管理控制台的 Kubernetes 集群列表页面,看到新集群的状态为运行中。
    在集群列表页面中,找到新集群test-external-cluster1,单击操作列中的管理,查看新集群的基本信息和连接信息。

图片.png

使用ACK控制台或者kubectl管理接入的集群

接入成功之后,可以通过 kubectl 连接 Kubernetes 集群,执行kubectl get node命令,查看新集群test-external-cluster1的节点信息。此时,您可以使用该kubeconfig连接远程的被接入集群,进行应用负载的部署。
图片.png

同样地,可以在该接入的集群中通过使用Helm来发布管理应用:
图片.png

总结

目前阿里云云原生产品家族已经支持多集群管理功能,允许使用阿里云容器服务Kubernetes(简称ACK)控制台或kubectl命令导入、统一纳管其他公有云、客户IDC自建K8s集群,集中管理部署K8s工作负载;并可以针对工作负载流量统一管理,支持服务就近访问、故障转移能力。本文重点介绍了如何使用ACK控制台来接入一个外部Kubernetes集群,后续讲继续介绍如何在接入的多个集群中统一部署管理应用以及如何实现工作负载、流量的统一管理。

相关实践学习
Docker镜像管理快速入门
本教程将介绍如何使用Docker构建镜像,并通过阿里云镜像服务分发到ECS服务器,运行该镜像。
容器应用与集群管理
欢迎来到《容器应用与集群管理》课程,本课程是“云原生容器Clouder认证“系列中的第二阶段。课程将向您介绍与容器集群相关的概念和技术,这些概念和技术可以帮助您了解阿里云容器服务ACK/ACK Serverless的使用。同时,本课程也会向您介绍可以采取的工具、方法和可操作步骤,以帮助您了解如何基于容器服务ACK Serverless构建和管理企业级应用。 学习完本课程后,您将能够: 掌握容器集群、容器编排的基本概念 掌握Kubernetes的基础概念及核心思想 掌握阿里云容器服务ACK/ACK Serverless概念及使用方法 基于容器服务ACK Serverless搭建和管理企业级网站应用
相关文章
|
16天前
|
数据库 存储 监控
什么是 SAP HANA 内存数据库 的 Delta Storage
什么是 SAP HANA 内存数据库 的 Delta Storage
16 0
什么是 SAP HANA 内存数据库 的 Delta Storage
|
5天前
|
Kubernetes 搜索推荐 Docker
使用 kubeadm 部署 Kubernetes 集群(二)k8s环境安装
使用 kubeadm 部署 Kubernetes 集群(二)k8s环境安装
39 17
|
18天前
|
消息中间件 Kubernetes Kafka
Terraform阿里云创建资源1分钟创建集群一键发布应用Terraform 创建 Kubernetes 集群
Terraform阿里云创建资源1分钟创建集群一键发布应用Terraform 创建 Kubernetes 集群
14 0
|
18天前
|
Kubernetes 安全 网络安全
搭建k8s集群kubeadm搭建Kubernetes二进制搭建Kubernetes集群
搭建k8s集群kubeadm搭建Kubernetes二进制搭建Kubernetes集群
101 0
|
25天前
|
Kubernetes Cloud Native Docker
【云原生】kubeadm快速搭建K8s集群Kubernetes1.19.0
Kubernetes 是一个开源平台,用于管理容器化工作负载和服务,提供声明式配置和自动化。源自 Google 的大规模运维经验,它拥有广泛的生态支持。本文档详细介绍了 Kubernetes 集群的搭建过程,包括服务器配置、Docker 和 Kubernetes 组件的安装,以及 Master 和 Node 的部署。此外,还提到了使用 Calico 作为 CNI 网络插件,并提供了集群功能的测试步骤。
213 0
|
28天前
|
Prometheus 监控 Kubernetes
Kubernetes 集群的监控与日志管理实践
【2月更文挑战第31天】 在微服务架构日益普及的今天,容器编排工具如Kubernetes已成为部署、管理和扩展容器化应用的关键平台。然而,随着集群规模的扩大和业务复杂性的增加,如何有效监控集群状态、及时响应系统异常,以及管理海量日志信息成为了运维人员面临的重要挑战。本文将深入探讨 Kubernetes 集群监控的最佳实践和日志管理的高效策略,旨在为运维团队提供一套系统的解决思路和操作指南。
26 0
|
25天前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
29天前
|
存储 分布式计算 网络协议
阿里云服务器内存型r7、r8a、r8y实例区别参考
在阿里云目前的活动中,属于内存型实例规格的云服务器有内存型r7、内存型r8a、内存型r8y这几个实例规格,相比于活动内的经济型e、通用算力型u1实例来说,这些实例规格等性能更强,与计算型和通用型相比,它的内存更大,因此这些内存型实例规格主要适用于数据库、中间件和数据分析与挖掘,Hadoop、Spark集群等场景,本文为大家介绍内存型r7、r8a、r8y实例区别及最新活动价格,以供参考。
阿里云服务器内存型r7、r8a、r8y实例区别参考
|
30天前
|
SQL 弹性计算 安全
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程
当我们通过阿里云的活动购买完云服务器之后,并不是立马就能使用了,还需要我们设置云服务器密码,配置安全组等基本操作之后才能使用,有的用户还需要购买并挂载数据盘到云服务器上,很多新手用户由于是初次使用阿里云服务器,因此并不知道这些设置的操作流程,下面给大家介绍下这些设置的具体操作流程。
购买阿里云活动内云服务器之后设置密码、安全组、增加带宽、挂载云盘教程
|
1月前
|
弹性计算
阿里云3M带宽云服务器并发多大?阿里云3M带宽云服务器测评参考
在探讨云服务器3M带宽能支持多大并发这一问题时,我们首先要明白一个关键点:并发量并非仅由带宽决定,还与网站本身的大小密切相关。一般来说,一个优化良好的普通网站页面大小可能只有几K,为便于计算,我们可以暂且假定每个页面大小为50K。
808 1

相关产品

  • 容器服务Kubernetes版