5分钟打通办公网与K8S集群网络
在K8S的使用中,我们经常有通过办公网访问K8S集群的诉求,虽然可以通过NodePort等方式访问K8S,但在访问多副本中间件等情况下NodePort就捉襟见肘了。
今天我们给大家介绍一个快捷的网络打通方案,可通过域名来轻松访问K8S集群。
首先跟大家介绍一个开源工具:telepresence,我们可以使用它为 K8S设置远程开发环境,打通办公网络与K8S集群网络。
接下来开始操作,安装分为K8S集群端及办公环境两个部分。
K8S集群端(在Master节点执行)
(1)下载集群端流量管理器telepresence
# 1. Download the latest binary (~50 MB):
sudo curl -fL https://app.getambassador.io/download/tel2/linux/amd64/latest/telepresence -o /usr/local/bin/telepresence
(2)为流量管理器telepresence添加可执行权限
# 2. Make the binary executable:
sudo chmod a+x /usr/local/bin/telepresence
(3)安装流量管理器telepresence
telepresence helm install
办公环境(以Windows为例)
(1)下载telepresence 客户端程序
请关注本公众号后,回复tele获得下载链接(文件约50M)
(2)将下载的zip压缩包解压,以管理员身份打开powershell,并进入解压后的文件夹中
(3)执以下两条命令进行安装
Set-ExecutionPolicy Bypass -Scope Process
.\install-telepresence.ps1
(4)执行以下命令更新配置,其中scp的操作需输入Master节点的密码(请将命令中的MasterIP替换为实际的)
mkdir $HOME\.kube
scp root@MasterIP:/root/.kube/config $HOME\.kube
(Get-Content $HOME\.kube\config)|Foreach-Object {$_ -replace ("apiserver.cluster.local","MasterIP")}|Out-File $HOME\.kube\config
(5)开启网络连通
telepresence connect
至此,网络已打通,我们可以通过域名直接访问K8S集群。
(6)断开网络连接(如需要)
telepresence quit
参考内容:
https://www.telepresence.io/