kubesphere跨网络混合云管理k8s多集群

6 篇文章 1 订阅
4 篇文章 0 订阅

添加混合云集群管理

  • 首要条件 已经安装完成多集群 host member等
  • 第一种情况:云上和云下通过vpn对等连接或者专线打通(这里直接连接即可)
  • 第二种情况:云上k8s集群apiserver有公网ip(这种方式也可直接连接)
  • 第三种情况:云上k8s集群apiserver无公网ip host管理集群有公网ip,使用代理方式连接
  • 这里用腾讯云托管的k8s云上+本地自建做测试(其实这里腾讯云托管的apiserver是可以设置公网ip的用第二种情况也可以实现连通,但是apiserver直接暴露到公网不太安全,所以通过第三种 host集群代理的方式)

在腾讯云已有的k8s集群上部署kubesphere

1.下载下部署配置文件

	wget https://github.com/kubesphere/ks-installer/releases/download/v3.0.0/kubesphere-installer.yaml
	wget https://github.com/kubesphere/ks-installer/releases/download/v3.0.0/cluster-configuration.yaml

2.运行installer安装器

kubectl apply -f kubesphere-installer.yaml

3.配置service

kubectl apply -f cluster-configuration.yaml

4.查看installer 安装进度日志

kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f
  • 提示k8s 版本需要大于1.5 这里是之前在腾讯云建立的k8s集群有些时间了,所以版本较低为1.14.3,这里操作升级一下
TASK [preinstall : Stop if kubernetes version is nonsupport] *******************
fatal: [localhost]: FAILED! => {
    "assertion": "kubernetes_version.stdout is version('v1.15.0', '>=')",
    "changed": false,
    "evaluated_to": false,
    "msg": "The current k8s version is not supported"
}
  • 升级腾讯云k8s版本 注意腾讯云这里需要版本一次一次升级,从1.4.3到最新1.18.4 需要操作多次升级,master和node要一起升级

  • 升级后最新的版本如下, 升级成功后 再重新部署

//这里进行replace替换重新部署,会删除之前service 所以service也要重新加上
kubectl replace --force -f kubesphere-installer.yaml
kubectl apply -f cluster-configuration.yaml
  • 4.再次查看installer 安装进度日志
kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f

//等待到以下输出则安装成功 登陆修改密码即可
**************************************************
#####################################################
###              Welcome to KubeSphere!           ###
#####################################################

Console: http://10.0.0.12:30880
Account: admin
Password: P@88w0rd

NOTES:
  1. After logging into the console, please check the
     monitoring status of service components in
     the "Cluster Management". If any service is not
     ready, please wait patiently until all components
     are ready.
  2. Please modify the default password after login.

#####################################################
https://kubesphere.io             2020-12-23 11:56:55
#####################################################
  • 5.安装成功 等待到以下输出则安装成功 登陆修改密码即可

把腾讯云上部署的kubesphere纳入到云下host集群管理

获取host的Secret

kubectl -n kubesphere-system get cm kubesphere-config -o yaml | grep -v "apiVersion" | grep jwtSecret

jwtSecret: "HryBNMQBjzXMJnzkxxxxxxxxxx"

获取host的Secret

kubectl -n kubesphere-system get cm kubesphere-config -o yaml | grep -v "apiVersion" | grep jwtSecret

jwtSecret: "HryBNMQBjzXMJnzkxxxxxxxxxx"

修改腾讯云上的集群角色为member

kubectl edit cc ks-installer -n kubesphere-system

//修改下面这两个参数 第二个从none改为member 然后保存等待安装器更新
authentication:
  jwtSecret: "上个命令获得的Secret"

multicluster:
  clusterRole: member

查看更新进度

kubectl logs -n kubesphere-system $(kubectl get pod -n kubesphere-system -l app=ks-install -o jsonpath='{.items[0].metadata.name}') -f

成功后在host集群添加member成员集群

这里先通过对 第二种情况:云上k8s集群apiserver假设有公网ip,直接连接做个测试

如下腾讯云的已经纳入统一管理了

现在对第三种情况:云上k8s集群apiserver无公网ip host管理集群有公网ip,使用代理方式连接做个测试

  • 先在host集群所在机器编辑代理服务配置公网ip
kubectl -n kubesphere-system edit clusterconfiguration ks-installer

//定位到这个配置 下面增加一样代理地址 设置外网端口负载均衡到host集群tower服务的端口
multicluster:
    clusterRole: host
    proxyPublishAddress: http://xxxx:xxx #增加这一行

添加集群 通过代理方式

通过代理管理会有个等待加入过程 按照页面步骤在腾讯云上部署代理agent

cluster-agent 则是该容器

最后通过2种连接模式都成功可以管理 混合云的这种集群,方便统一维护 ,阿里云,华为云等原理一样哦,建议通过第二种代理方式管理

有任何问题,可以扫码加我,一起探讨哦!

  • 也可以点击公众号菜单或者回复微信获取
  • 0
    点赞
  • 8
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

sltin

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值