上云无忧 > 文档中心 > 腾讯云容器服务 TKE 边缘集群 - 跨地域服务互访
容器服务 TKE
腾讯云容器服务 TKE 边缘集群 - 跨地域服务互访

文档简介:
操作场景: 本文介绍如何通过云边 Tunnel 隧道,实现不同边缘地域的 Pod/Svc 互访(现在暂时仅支持7层 http/https 协议)。例如在南京地域的 Pod 可以成功访问北京地域的 Nginx 服务,反之亦然。
*此产品及展示信息均由腾讯云官方提供。免费试用 咨询热线:400-826-7010,为您提供专业的售前咨询,让您快速了解云产品,助您轻松上云! 微信咨询
  免费试用、价格特惠

操作场景

本文介绍如何通过云边 Tunnel 隧道,实现不同边缘地域的 Pod/Svc 互访(现在暂时仅支持7层 http/https 协议)。例如在南京地域的 Pod 可以成功访问北京地域的 Nginx 服务,反之亦然。

架构原理


基本原理如上图所示,边缘节点 tunnel-edge 会和云端 tunnel-cloud 建立双向隧道,tunnel-edge 会在本地开放:8080端口作为 http/https 代理端口,如果边缘 Pod 需要通过代理访问其他地域的 Pod ip 或者 svc 的时候,可以在 Pod 内指定http_proxy或者https_proxy环境变量,把 http/https 流量通过 tunnel 转发到云端或者其他地域的边缘节点上。
说明
在产品层面,平台通过 webhook 的方式,方便您指定代理:您可以设置 workload 中的 label http-proxy=enable 来开启代理模式,此时 workload 相应的 Pod 会自动注入相应环境变量,例如 http_proxy=169.254.20.11:8080

操作步骤

跨地域访问

1. 登录 容器服务控制台,选择左侧导航栏中的集群
2. 在集群管理页,单击需要远程登录节点的集群 ID,进入该集群详情页。
3. 选择页面左侧组件管理,单击新建
4. 在“新建组件”页中,选择 http-proxy-pod-webhook(跨地域服务互访)。如下图所示:

5. 单击完成
6. 选择页面左侧工作负载 > Deployment,进入 Deployment 列表页面,分别新建名称为 nginx-njnginx-bj 的 deployment。
新建 nginx-nj
新建 nginx-bj
1. 新建名称为 nginx-nj 的 deployment,添加标签 http-proxy=enable。如下图所示:

2. 单击创建Workload。新建成功后返回 Deployment 列表查看。
3. 单击 nginx-nj 右侧的更新调度策略。如下图所示:

4. 在“更新调度策略”弹窗中,选择指定节点调度,并勾选对应地域下的节点,将 deployment 调度到南京地域的节点上。如下图所示:

对应地域下的节点可在节点列表中查看。如下图所示:

nginx-nj 的 yaml 如下:
				
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
k8s-app: nginx-nj
qcloud-app: nginx-nj
spec:
...
template:
metadata:
...
labels:
http-proxy: enable
...
spec:
...
1. 新建名称为 nginx-bj 的 deployment,添加标签 http-proxy=enable。如下图所示:

2. 单击创建Workload。新建成功后返回 Deployment 列表查看。
3. 单击 nginx-bj 右侧的更新调度策略。如下图所示:

4. 在“更新调度策略”弹窗中,选择指定节点调度,并勾选对应地域下的节点,将 deployment 调度到北京地域的节点上。对应地域下的节点可在节点列表中查看。
nginx-bj 的 yaml 如下:
				
apiVersion: apps/v1
kind: Deployment
metadata:
labels:
k8s-app: nginx-bj
qcloud-app: nginx-bj
spec:
...
template:
metadata:
...
labels:
http-proxy: enable
...
spec:
...
7. 分别远程登录 nginx-bj 的 Pod 和 nginx-nj 的 Pod 确认 env 的 name 属性值是否为 'http-proxy'。示例如下:
		
apiVersion: v1
kind: Pod
metadata:
...
spec:
...
containers:
- env:
- name: http_proxy
value: http://169.254.20.11:8080
...
8. 远程登录南京边缘地域的 Pod 访问北京地域的服务。如下图所示:

9. 远程登录北京边缘地域的 Pod 访问南京地域的服务。如下图所示:

相似文档
  • 场景介绍: 在边缘节点区分多个地域的情况下,每个地域都有独立的网络架构,需要在本地域对外提供 Ingress 服务能力,腾讯云边缘容器服务基于 NodeUnit的相关概念,在产品上支持在不同地域创建Nginx-Ingress-Controller的能力,同时通过application-grid-wrapper组件,可以将 Ingress-Controller 对 pod 的访问限制在本地域(NodeUnit 范围)之内,具体架构如下图:
  • ServiceGroup 多地域部署 中简单描述了 ServiceGroup 的使用方式。本文以详细的案例结合具体的实现原理,向您介绍 ServiceGroup 的使用场景以及需要关注的细节问题。
  • 操作场景: 本文介绍 TKE-Edge 推出的新特性——Kins,其主要功能描述如下:此能力可以将标准的 NodeUnit 边缘节点池,一键提升为独立 K3s 集群,此边缘节点池即可和云端控制面断网,并长期离线运行使用。
  • 监控组件能力是一个平台系统的基础支撑组件,边缘容器复用了腾讯云的云监控能力,可以将边缘侧的监控指标通过边缘容器的 “Tunnel 云边通道”上传到云端,提供基础的监控能力。您可根据以下操作查看集群监控信息:
  • 日志组件能力是一个平台系统的基础支撑组件,边缘容器复用了腾讯云的日志服务,可以将边缘侧的日志数据上传到云端,提供完整的日志采集以及检索能力。
官方微信
联系客服
400-826-7010
7x24小时客服热线
分享
  • QQ好友
  • QQ空间
  • 微信
  • 微博
返回顶部