如何在物理主机上安全访问Grafana?
创作时间:
作者:
@小白创作中心
如何在物理主机上安全访问Grafana?
引用
7
来源
1.
https://www.solo.io/topics/kubernetes-api-gateway/kubernetes-ingress
2.
https://learn.microsoft.com/zh-cn/python/api/azure-mgmt-compute/azure.mgmt.compute.v2019_07_01.models.virtualmachinescalesetipconfiguration?view=azure-python
3.
https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/
4.
https://m.book118.com/html/2017/0823/129724278.shtm
5.
http://dict.youdao.com/w/virtual_machine_configuration/
6.
https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/custom-template/
7.
https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/configmap/
在物理主机上访问通过虚拟机部署的 Kubernetes 集群中的 Grafana,可以通过以下步骤解决:
方法一:修改本地 Hosts 文件(推荐)
适用场景:物理机与集群节点在同一局域网,且虚拟机有固定 IP。
获取 Ingress 控制器所在节点的 IP:
kubectl get svc -n ingress-nginx # 假设使用 Nginx Ingress,查看 EXTERNAL-IP 或 NodePort如果 Service 类型为
NodePort,记录节点的 IP(如192.168.1.100)。修改物理机 Hosts 文件:
- Linux/Mac:
sudo vi /etc/hosts - Windows:
C:\Windows\System32\drivers\etc\hosts
192.168.1.100 grafana.mydomain.com- Linux/Mac:
访问 Grafana:
浏览器访问http://grafana.mydomain.com(或https如果配置了 TLS)。
方法二:通过 NodePort 直接访问
适用场景:Ingress 控制器 Service 类型为 NodePort。
查找 NodePort 端口:
kubectl get svc -n ingress-nginx找到
PORT(S)列中的 NodePort(如80:31000/TCP,则31000是端口)。直接通过节点 IP + 端口访问:
浏览器访问http://<节点IP>:31000,并通过 Host 头指定域名:curl -H "Host: grafana.mydomain.com" http://<节点IP>:31000
方法三:使用 kubectl port-forward(临时调试)
适用场景:快速临时访问,无需修改网络配置。
找到 Grafana 的 Service 名称:
kubectl get svc -n monitoring # 假设 Grafana 在 monitoring 命名空间端口转发:
kubectl port-forward svc/grafana-service 3000:3000 -n monitoring访问本地端口:
浏览器访问http://localhost:3000。
方法四:配置 LoadBalancer(云环境或 MetalLB)
适用场景:生产环境或需要稳定外部 IP。
修改 Ingress 控制器 Service 类型:
kubectl edit svc ingress-nginx-controller -n ingress-nginx将
type: NodePort改为type: LoadBalancer。获取 External IP:
kubectl get svc -n ingress-nginx等待分配 External IP(云环境自动分配,本地需安装 MetalLB)。
配置 DNS 或 Hosts:
将域名grafana.mydomain.com解析到 External IP。
网络检查要点
- 防火墙规则:确保物理机到虚拟机节点的 80/443 或 NodePort 端口开放。
- 虚拟机网络模式:如果是 NAT 模式,需在宿主机配置端口转发(如 VirtualBox 的 NAT 网络设置)。
- Ingress 配置:确认 Ingress 中
host字段与域名一致,且 TLS 配置正确(如果有)。
选择最适合你环境的方法即可。如果仍有问题,请提供更多集群网络细节(如 Ingress 类型、节点 IP 是否可达等)。
热门推荐
范县大米闪耀博览会,科技创新助力产业腾飞
大乐透开奖:中奖号码揭晓,专家提醒理性对待
老北京炸酱面制作教程:从食材到成品的详细指南
松原秋季摄影攻略:查干湖畔的金色童话
王者荣耀38赛季哪吒出装攻略:两种流派如何选择?
最新研究:每天一杯牛奶不够,这样补钙才科学
每天喝多少牛奶最好?专家解读科学饮奶指南
猪皮冻美容真相:胶原蛋白难吸收,适量食用更健康
哈尔滨猪皮冻:三香工艺传承,创新口味升级
防城港必打卡:白浪滩&东兴国门
防城港西湾:从生态修复到旅游新宠
亚麻籽:健康界的超级食物?
浙二医院&中科中创研究证实:亚麻籽调节血脂功效显著
邻居经常发出噪音,该怎么办?
如何有效应对生活中的噪音困扰,提升生活质量和心理健康
绿色生活,从噪音治理开始
水墨山水画在现代设计中的诗意呈现
王维《辋川图》:诗画交融的禅意世界
宋代山水画里的诗意世界
职场人护肝指南:从生活到饮食的全方位建议
职场人护肝指南:扁鹊护肝片是万能的吗?
骆志军:35年戒毒心理辅导的“心灵导师”
去腥有妙招:制作Q弹爽滑猪皮冻的完整指南
睡对时间,心情更美——可穿戴设备揭秘最佳睡眠周期
睡眠时间是否因年龄和性别而异?解释理想的睡眠!
解密睡眠对情绪的影响与应对方法
王者荣耀敖隐出装攻略:暴击流vs半肉流,哪种更适合你?
王者荣耀敖隐出装攻略:T0射手的最强装备搭配
职场护肝神器?专家:护肝片不能替代健康生活
护肝片不是“万能药”!这些禁忌和注意事项要知道