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#第-2-关应用返回-302重定向到-引入-503-错误\]:

官网

[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]:

相关推荐
NiNg_1_23413 分钟前
使用Docker Compose一键部署
运维·docker·容器
FLGB14 分钟前
Flink 与 Kubernetes (K8s)、YARN 和 Mesos集成对比
大数据·flink·kubernetes
萠哥啥都行17 分钟前
Linux安装Docker以及Docker入门操作
运维·docker·容器
码哝小鱼1 小时前
firewalld封禁IP或IP段
linux·网络
汀、人工智能1 小时前
修改Docker默认存储路径,解决系统盘占用90%+问题(修改docker root dir)
docker·容器
sec0nd_1 小时前
1网络安全的基本概念
网络·安全·web安全
吃面不喝汤661 小时前
如何配置和使用自己的私有 Docker Registry
运维·docker·容器
Leighteen2 小时前
Docker常用命令
docker·容器
青柠视频云2 小时前
青柠视频云——视频丢包(卡顿、花屏、绿屏)排查
服务器·网络·音视频
网安CILLE2 小时前
2024年某大厂HW蓝队面试题分享
网络·安全·web安全