当前位置: 首页 > news >正文

k8s中pod的hostport端口突然无法访问故障处理

故障背景:
租户告知生产环境的sftp突然无法访问了,登录环境查看sftp服务运行都是正常的,访问sftp的hostport端口确实不通。

故障处理过程
既然访问不通那就先给服务做个全面检查,看看哪里出了问题,看下sftp日志,也没有啥关键报错,接下来查看了下sftp服务的svc端口,发现通过svc地址和端口是能正常访问的,通过pod IP去访问也是可以,这就很奇怪了,唯独用主机ip加hostport端口就访问不通。
尝试手段一: 跟租户沟通,看看能否重启服务试试,发现重启完服务,还是老样子,通过hostport访问依然不通。
尝试手段二: 登录到对应的sftp主机,查看sftp服务对应的iptables规则是否有啥限制或者生产的容器服务规则转发有问题,发现iptables的规则没有做啥拦截,唯一的拦截是对icmp协议的,基本不是这个问题,然后查看到iptables规则中关于sftp hostport端口转发到目的服务地址有问题,以前的pod生产转发规则还存在,那就是以前的pod删除后,iptables规则没有及时跟新删除,如下图所示有许多2022的hostport端口转发到sftp容器的22端口:
在这里插入图片描述然后尝试重启Kube-proxy使其重新加载规则看看,重启完之后查看规则确实正常了,但是请求sftp的hostport端口仍然不通。
尝试手段三: 凡是再一再二,不再三,仔细分析下,通过业务主机和hostport访问,还会涉及走PREROUTING链,看下PREROUTING如下:

1)sudo iptables -t nat -nvL PREROUTING
2)sudo iptables -t nat -nvL CNI-HOSTPORT-DNAT

在这里插入图片描述

1)sudo iptables -t nat -nvL CNI-DN-5312d803d41f87c69f67f
查看对应2022端口号的nat规则
2)sudo iptables -t nat -nvL CNI-HOSTPORT-DNAT --line-numbers 查看对应规则的序号
3)sudo iptables -t nat -D CNI-HOSTPORT-DNAT 1 删除对应规则 ,注: 确定这条规则确实以前产生没用的。

具体操作步骤如下截图:
在这里插入图片描述
删完对应规则后,sftp的hostport访问正常。可能跟升级操作系统后防火墙出现问题导致pod销毁,规则无法回收。

相关文章:

  • ArcGIS中如何建立土地利用规划数据库
  • 【算法心得】When data range not large, try Bucket sort
  • 【Linux基础】Linux常见指令总结及周边小知识
  • 02-鸿蒙学习之4.0todoList练习
  • PTA: 螺旋矩阵
  • 计算机毕业设计 基于微信小程序的“共享书角”图书借还管理系统的设计与实现 Java实战项目 附源码+文档+视频讲解
  • 9.Docker的虚悬镜像-Dangling Image
  • 爬虫爬取百度图片、搜狗图片
  • cocos2dx ​​Animate3D (一)
  • Java面试-微服务篇-SpringCloud
  • Python语言学习笔记之三(字符编码)
  • 独乐乐不如众乐乐(二)-某汽车零部件厂商IC EMC企业规范
  • 【leetcode】62. 不同路径
  • Flask Session 登录认证模块
  • 打印菱形-第11届蓝桥杯选拔赛Python真题精选
  • DOM的那些事
  • Druid 在有赞的实践
  • Github访问慢解决办法
  • IDEA 插件开发入门教程
  • Javascript 原型链
  • LeetCode刷题——29. Divide Two Integers(Part 1靠自己)
  • 阿里云ubuntu14.04 Nginx反向代理Nodejs
  • 从零开始学习部署
  • 电商搜索引擎的架构设计和性能优化
  • 前端js -- this指向总结。
  • 如何使用 OAuth 2.0 将 LinkedIn 集成入 iOS 应用
  • 如何选择开源的机器学习框架?
  • 我的面试准备过程--容器(更新中)
  • 延迟脚本的方式
  • 一个SAP顾问在美国的这些年
  • AI又要和人类“对打”,Deepmind宣布《星战Ⅱ》即将开始 ...
  • ​ 轻量应用服务器:亚马逊云科技打造全球领先的云计算解决方案
  • ​软考-高级-系统架构设计师教程(清华第2版)【第1章-绪论-思维导图】​
  • (09)Hive——CTE 公共表达式
  • (TOJ2804)Even? Odd?
  • (二)Eureka服务搭建,服务注册,服务发现
  • (二十四)Flask之flask-session组件
  • (分享)自己整理的一些简单awk实用语句
  • (附源码)springboot工单管理系统 毕业设计 964158
  • (三) diretfbrc详解
  • (十五)Flask覆写wsgi_app函数实现自定义中间件
  • (收藏)Git和Repo扫盲——如何取得Android源代码
  • (四)Linux Shell编程——输入输出重定向
  • (四)Tiki-taka算法(TTA)求解无人机三维路径规划研究(MATLAB)
  • (原創) 是否该学PetShop将Model和BLL分开? (.NET) (N-Tier) (PetShop) (OO)
  • (转)Groupon前传:从10个月的失败作品修改,1个月找到成功
  • (转)程序员疫苗:代码注入
  • (转)我也是一只IT小小鸟
  • .NET 4.0网络开发入门之旅-- 我在“网” 中央(下)
  • .net core webapi Startup 注入ConfigurePrimaryHttpMessageHandler
  • .net core 控制台应用程序读取配置文件app.config
  • .NET core 自定义过滤器 Filter 实现webapi RestFul 统一接口数据返回格式
  • .NET Core引入性能分析引导优化
  • .NET 编写一个可以异步等待循环中任何一个部分的 Awaiter
  • .NET开源项目介绍及资源推荐:数据持久层 (微软MVP写作)