kubernetes-networkpolicies网络策略问题

kubernetes-networkpolicies网络策略问题

问题描述

重点重点重点,查看我的博客CKA考题,里面能找到解决方法

1.部署prometheus监控的时候,都部署成功,但是web访问503-504超时

2.添加ingress的时候也是访问不到,其他命名空间pod是可以通信

3.拉取的prometheus.yaml里面有networkpolicies.yaml是管理集群通信的

总结

我切换成nodeport暴漏方式,想去访问grafana页面,但是没有在宿主机上面发现暴漏端口,这里上网查看相关文档,k8s创建nodeport会在所有node节点暴漏端口,有一种网络策略他是不显示出来,你去ping 或者tlenet 端口 都是通的,当有服务去访问的时候,他会通过iptables规则去转发到对应的端口。

解决方法

1.首先查看pod通信问题,其他节点访问这个pod网络

shell 复制代码
ping 10.244.201.239

#测试其他节点pod能不能通信

2.查看部署yaml是不是有networkpolicies网络策略yaml文件

shell 复制代码
root@k8s-master01:~/test/prometheus/kube-prometheus-0.13.0/manifests# find . -name "*networkPolicy.yaml"
./prometheusOperator-networkPolicy.yaml
./blackboxExporter-networkPolicy.yaml
./prometheusAdapter-networkPolicy.yaml
./kubeStateMetrics-networkPolicy.yaml
./grafana-networkPolicy.yaml
./prometheus-networkPolicy.yaml
./alertmanager-networkPolicy.yaml
./nodeExporter-networkPolicy.yaml


#上面这些都是有网络策略的文件

3.查看networkpolicies

shell 复制代码
root@k8s-master01:~/test/prometheus/kube-prometheus-0.13.0/manifests# kubectl get networkpolicies -A
NAMESPACE    NAME                  POD-SELECTOR                                                                                                                                        AGE
monitoring   blackbox-exporter     app.kubernetes.io/component=exporter,app.kubernetes.io/name=blackbox-exporter,app.kubernetes.io/part-of=kube-prometheus                             6h13m
monitoring   kube-state-metrics    app.kubernetes.io/component=exporter,app.kubernetes.io/name=kube-state-                     6h13m

![外链图片转存失败,源站可能有防盗链机制,建议将图片保存下来直接上传](https://img-home.csdnimg.cn/images/20230724024159.png?origin_url=C%3A\Users\艾克\Ap![在这里插入图片描述](https://file.jishuzhan.net/article/1774093057029836801/cb89a868099f30a4472f06fe858adbdc.webp)

4.确认问题点,首先设置节点不可调度,在相同命名空间下创建pod,看看能不能访问

shell 复制代码
kubectl cordon master  #设置节点不可调度


kubectl create deployment nginx --image=nginx -n monitoring  #测试成功就是网络策略问题

5.解决问题

shell 复制代码
通过yaml删除networkpolicies也可以

直接删除networkpolicy也可以
# kubectl delete networkpolicy blackbox-exporter -n monitoring 
networkpolicy.networking.k8s.io "blackbox-exporter" deleted

配置ingress-grafana,添加注解

详解,grafana本身自己302又跳了一下

shell 复制代码
nginx.ingress.kubernetes.io/auth-always-set-cookie:设置身份验证请求返回的 cookie。默认情况下,仅当上游报告代码为 200、201、204、206、301、302、303、304、307 或 308 时,才会设置 cookie。<Boolean_Flag>


此注释允许您返回时间重定向(返回代码 302),而不是向上游发送数据。例如,将所有内容重定向到 Google,返回代码为 302(暂时移动)nginx.ingress.kubernetes.io/temporal-redirect:
ACK配置
新方法:

修改grafana.ini文件的yaml文件

powershell 复制代码
 grafana.ini: |
    [server]
    domain: daxinxindahaohao.cn
    root_url: http://daxinxindahaohao.cn/grafana
    serve_from_sub_path: true
    [auth.anonymous]
    enabled: true
    org_role: Viewer

重启pod,记得重启pod

阿里云ingress配置

参考文档

https://www.cnblogs.com/daniel-hutao/p/18041793/k8s_ingress_debug#%E7%AC%AC-2-%E5%85%B3%E5%BA%94%E7%94%A8%E8%BF%94%E5%9B%9E-302%E9%87%8D%E5%AE%9A%E5%90%91%E5%88%B0-%E5%BC%95%E5%85%A5-503-%E9%94%99%E8%AF%AF\]: 官网 \[https://kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#temporal-redirect\]: //kubernetes.github.io/ingress-nginx/user-guide/nginx-configuration/annotations/#temporal-redirect\]:

相关推荐
可观测性用观测云12 小时前
云原生网关 Ingress-Nginx 链路追踪实战:OpenTelemetry 采集与观测云集成方案
nginx·kubernetes
蝎子莱莱爱打怪2 天前
GitLab CI/CD + Docker Registry + K8s 部署完整实战指南
后端·docker·kubernetes
蝎子莱莱爱打怪6 天前
Centos7中一键安装K8s集群以及Rancher安装记录
运维·后端·kubernetes
崔小汤呀6 天前
Docker部署Nacos
docker·容器
缓解AI焦虑6 天前
Docker + K8s 部署大模型推理服务:资源划分与多实例调度
docker·容器
1candobetter6 天前
Docker Compose Build 与 Up 的区别:什么时候必须重建镜像
docker·容器·eureka
DianSan_ERP6 天前
电商API接口全链路监控:构建坚不可摧的线上运维防线
大数据·运维·网络·人工智能·git·servlet
呉師傅7 天前
火狐浏览器报错配置文件缺失如何解决#操作技巧#
运维·网络·windows·电脑
阿里云云原生7 天前
Kubernetes 官方再出公告,强调立即迁移 Ingress NGINX
kubernetes
至此流年莫相忘7 天前
Kubernetes实战篇之配置与存储
云原生·容器·kubernetes