多云混合云之多集群统一管理:基于阿里云ACK统一纳管多个不同Kubernetes集群
目前阿里云云原生产品家族已经支持多集群管理功能,允许使用阿里云容器服务Kubernetes(简称ACK)控制台或kubectl命令接入、统一纳管其他公有云、客户IDC自建K8s集群,集中管理部署K8s工作负载;并可以针对工作负载流量统一管理,支持服务就近访问、故障转移能力。
本文重点介绍如何使用ACK控制台来接入一个外部Kubernetes集群,无论这个集群是否提供公网访问能力,或者该集群是来自其他公有云提供商,亦或是用户IDC自定义集群。
前提条件
- 您需要开通容器服务、弹性伸缩(ESS)服务和访问控制(RAM)服务。
登录 容器服务管理控制台 、 RAM 管理控制台 和 弹性伸缩控制台 开通相应的服务。 - 修改Kubernetes集群仍然必须在原有的集群中进行完成,包括添加与删除节点、升级Kubernetes集群版本以及更改Kubernetes组件参数等
Demo示例
为了帮助您更好地理解,以下是我们制作的一个简短的视频Demo,演示如何在ACK控制台上统一纳管一个Google GKE K8s集群。
视频地址:http://cloud.video.taobao.com/play/u/368124/p/1/e/6/t/1/231980990953.mp4
创建自有Kubernetes集群用于接入外部集群
按照以下步骤可以在ACK控制台中创建自有Kubernetes集群用于接入外部集群,具体如下:
- 登录 容器服务管理控制台, 在 Kubernetes 菜单下,单击左侧导航栏的集群 > 集群,进入集群列表页面。
- 单击页面右上角的创建 Kubernetes 集群,在弹出的选择集群模板中,选择导入已有Kubernetes集群,单击创建。

- 默认进入导入已有 Kubernetes 集群配置页面,如下所示。

- 填写集群的名称,例如test-external-cluster1。集群名称应包含1-63个字符,可包含数字、汉字、英文字符或连字符(-)。
- 选择集群所在的地域和可用区。
- 设置集群的网络。Kubernetes 集群仅支持专有网络。您可以在已有 VPC 列表中选择所需的 VPC 和交换机。需要绑定EIP,用于建立集群链接。
- 单击创建集群,启动创建过程。
接入外部Kubernetes集群
按照以下步骤可以在ACK控制台中接入外部Kubernetes集群,具体如下:
- 在新集群test-external-cluster1右侧单击管理,进入基本信息页面。在页面下方,可以看到集群导入代理配置:

- 单击复制,将其中的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,单击操作列中的管理,查看新集群的基本信息和连接信息。

使用ACK控制台或者kubectl管理接入的集群
接入成功之后,可以通过 kubectl 连接 Kubernetes 集群,执行kubectl get node命令,查看新集群test-external-cluster1的节点信息。此时,您可以使用该kubeconfig连接远程的被接入集群,进行应用负载的部署。
同样地,可以在该接入的集群中通过使用Helm来发布管理应用:
总结
目前阿里云云原生产品家族已经支持多集群管理功能,允许使用阿里云容器服务Kubernetes(简称ACK)控制台或kubectl命令导入、统一纳管其他公有云、客户IDC自建K8s集群,集中管理部署K8s工作负载;并可以针对工作负载流量统一管理,支持服务就近访问、故障转移能力。本文重点介绍了如何使用ACK控制台来接入一个外部Kubernetes集群,后续讲继续介绍如何在接入的多个集群中统一部署管理应用以及如何实现工作负载、流量的统一管理。
本文作者:osswangxining
本文为云栖社区原创内容,未经允许不得转载。
多云混合云之多集群统一管理:基于阿里云ACK统一纳管多个不同Kubernetes集群的更多相关文章
- 基于阿里云容器服务用docker容器运行ASP.NET 5示例程序
小试阿里云容器服务 之后,接下来有一个挡不住的小试冲动--用docker容器运行程序.首先想到的程序是 ASP.NET 5示例程序,于是参考msdn博客中的这篇博文 Running ASP.NET 5 ...
- 基于阿里云的JavaEE系统框架介绍
基于阿里云的系统框架展望 1) CDN 用于缓存静态文件等等.七牛和阿里的都还可以. 七牛要做的久一点,各种图片处理的接口要完善一些 阿里的CDN要稍微好一点点,但是没有不安全的访问方式,访问稍微没有 ...
- (二)基于阿里云的MQTT远程控制(购买阿里云,在云端安装MQTT,测试MQTT远程通信)
QQ名称为Friday~的网友把他自己买MQTT的过程截图发给了我,今天就说一下如何购买阿里云,安装MQTT可以参考 http://www.cnblogs.com/yangfengwu/p/77646 ...
- 2019 GNTC 阿里云参会分享:开放、弹性的阿里云网络NFV平台
作为全球规模最大的网络技术盛会之一,GNTC全球网络技术大会是网络技术发展的重要风向标,包含战略规划.产业方向.技术趋势.应用创新等皆汇集于此.而作为云服务商代表,阿里云再度受邀以顶级钻石合作伙伴之名 ...
- 一·创建Linux服务器(基于阿里云)
本系统是基于阿里云服务器,购买请前往https://www.aliyun.com/?spm=5176.8142029.388261.1.taXish ,由于经济能力的限制,本人购买的是最低配置如下 其 ...
- 基于阿里云ECS的phpwind网站备案前如何远程访问调试?
基于阿里云ECS的phpwind网站部署非常方便,但云主机的外网IP绑定域名却比较复杂.先要申请域名,成功后还需要备案.尤其是企业网站备案,需要提交的资料较多,准备资料以及审批的时间较长.这段时间在外 ...
- 基于阿里云server搭建SVNserver
基于阿里云server搭建SVNserver 本系列文章由ex_net(张建波)编写,转载请注明出处. http://blog.csdn.net/ex_net/article/details/8577 ...
- 构建基于阿里云OSS文件上传服务
转载请注明来源:http://blog.csdn.net/loongshawn/article/details/50710132 <构建基于阿里云OSS文件上传服务> <构建基于OS ...
- 基于阿里云SLB/ESS/EIP/ECS/VPC的同城高可用方案演练
今天基于阿里云SLB/ESS/EIP/ECS/VPC等产品进行了一次同城高可用方案演练: 基本步骤如下: 1. 在华东1创建VPC网络VPC1,在华东1可用区B和G各创建一个虚拟交换机vpc1_swi ...
- 阿里云短信验证_基于阿里云OpenAPI实现
阿里云短信服务 背景简介: 短信验证以及短信通知,目前已经应用的非常广泛,最近因项目需要,需要将原来的短信接口换成阿里云的的短信服务,原项目集成的短信服务能够实现短信的发送以及短信的验证整个过程,简单 ...
随机推荐
- CodeForces 232C Doe Graphs(分治+搜索)
CF232C Doe Graphs 题意 题意翻译 \(Doe\)以她自己的名字来命名下面的无向图 \(D(0)\)是只有一个编号为\(1\)的结点的图. \(D(1)\)是只有两个编号分别为\(1\ ...
- https://blog.csdn.net/u012235003/article/details/54576737
https://blog.csdn.net/u012235003/article/details/54576737
- Django项目:CRM(客户关系管理系统)--69--59PerfectCRM实现king_admin行内编辑
#base_admin.py # ————————24PerfectCRM实现King_admin自定义操作数据———————— from django.shortcuts import render ...
- Result结果类型详解
配置Result 在 struts.xml 文件中,<result> 元素用于配置 Result 逻辑视图与物理视图之间的映射关系,它有两个可选属性 name 和 type.其中,name ...
- 网易DMARC设置详解
网易企业邮箱DMARC协议设置详解 发布时间:2013-09-27 尊敬的企业用户: 据统计,全球范围内被投递的钓鱼邮件每天约达到1亿封,无孔不入的钓鱼邮件.诈骗邮件,威胁着用户的信息和财产安全.网易 ...
- 解决CSocket高数据传输问题
这个是自己项目中发现的问题,所以这个不一定适用于你的. 仅供参考. 头文件: ESSocket.h // ESSocket.h : header file // #ifndef ESSOCKET_H ...
- sudo 授权许可使用的su,也是受限制的su
sudo 的适用条件: 由于su 对切换到超级权限用户root后,权限的无限制性,所以su并不能担任多个管理员所管理的系统.如果用su 来切换到超级用户来管理系统,也不能明确哪些工作是由哪个管理员进行 ...
- TZ_05_Spring_annotation常见注解
Spring常用的注解大全和解释 注解 解释 @Controller 组合注解(组合了@Component注解),应用在MVC层(控制层),DispatcherServlet会自动扫描注解了此注解的类 ...
- vue/npm 错误提示&解决
1,下图的报错为没有系统权限 解决: P.S. 用管理打开后的命令行默认是window/system32,从system32退回到桌面的路径如下图 2, vuex 报错 “unknown mutati ...
- 基于bootstrap框架在ie8以下,兼容媒体查询[css样式]
<style type="text/css"> /*基于bootstrap框架在ie8以下,兼容媒体查询*/ .row [class^="col-" ...