通过 Clusternet,可以对注册成功的集群进行进一步地管控。在一些运维的场景中,可能需要对某个子集群进行额外的单独操作,比如查看日志,事件,节点状态等等。
需要纳管的目标子集群可能:
运行在边缘节点上或者是边缘集群,网络条件差,没有暴露外网地址
运行在云上的某个 VPC 内,为了保证安全性,没有做网络打通,或者端口映射
运行在自建机房内
其他情形
Clusternet 为了能够提供一致的管理体验,提供了通用的访问子集群的方案,即可以通过父集群做访问代理,将请求转发到子集群中,却依然可以使用动态的 RBAC。这里 Clusternet 使用的 RBAC 是子集群自己的 RBAC,所以这些 RBAC 中用到的敏感信息并不需要在父集群中保留,做到真正的动态权限访问。详细的访问链路,如下图所示。
为了方便,Clusternet 也提供了命令行支持,通过 kubectl-clusternet 插件即可上手体验一番。
$ # 安装 kubectl-clusternet 插件 $ kubectl krew install clusternet $ kubectl get mcls -A NAMESPACE NAME CLUSTER ID SYNC MODE KUBERNETES READYZ AGE clusternet-ml6wg aws-cd 6c085c18-3baf-443c-abff-459751f5e3d3 Dual v1.18.4 true 4d6h clusternet-z5vqv azure-cd 7dc5966e-6736-48dd-9a82-2e4d74d30443 Dual v1.20.4 true 43h $ # 通过指定 Cluster ID,以及对应 Cluster 的 kubeconfig 文件 (这里的 apiserver 地址可以是内网地址) $ kubectl clusternet --cluster-id=7dc5966e-6736-48dd-9a82-2e4d74d30443 --child-kubeconfig=./azure-cd-kubeconfig get ns NAME STATUS AGE clusternet-system Active 4d20h default Active 24d kube-node-lease Active 24d kube-public Active 24d kube-system Active 24d test-nginx Active 11d test-systemd Active 11d关于更多使用细节,请扫描下方二维码进行了解。
请关注 Clusternet 项目 https://github.com/clusternet/clusternet,点赞并支持,也欢迎各种形式的讨论与合作。
关于我们更多关于云原生的案例和知识,可关注同名【腾讯云原生】公众号~
福利:①公众号后台回复【手册】,可获得《腾讯云原生路线图手册》&《腾讯云原生最佳实践》~
②公众号后台回复【系列】,可获得《15个系列100+篇超实用云原生原创干货合集》,包含Kubernetes 降本增效、K8s 性能优化实践、最佳实践等系列。
③公众号后台回复【白皮书】,可获得《腾讯云容器安全白皮书》&《降本之源-云原生成本管理白皮书v1.0》
③公众号后台回复【光速入门】,可获得腾讯腾讯云专家5万字精华教程,光速入门Prometheus和Grafana。
【腾讯云原生】云说新品、云研新术、云游新活、云赏资讯,扫码关注同名公众号,及时获取更多干货!!