
k8s
Jerry_Pan1990
这个作者很懒,什么都没留下…
展开
-
K8s Namespace无法删除解决办法、思路、原理
情况:Kubectl delete ns XXXX 后, namespace 一直处于 Terminating 状态。使用:kubectl delete ns monitoring --grace-period=0 –force后,也无法删除。原因分析:删除时,报错:warning: Immediate deletion does not wait for con...原创 2019-12-20 15:45:27 · 9743 阅读 · 2 评论 -
生产环境k8s偶发超时问题排查及解决
前言: 凡是有明确报错的问题,都是能很快解决的,真正难以解决和排查的,是偶发且笼统报错的问题。 这里记录整个解决的过程,期间有走过弯路,有思维局限,但庆幸最终找到了原因,正常把我们系统上线到 k8s 平台了。问题表现: 生产某套应用访问时,偶尔会报 timed out 。相同的配置在 开发、测试、预生产都能正常运行。排查思路: 1、 首先,因为这个问题是偶发性的...原创 2019-11-25 15:07:16 · 11350 阅读 · 0 评论 -
修复由于docker、k8s的引擎不一致导致的报错: 调整为cgroups
k8s版本:1.15docker版本:18.09.7报错信息: W0701 15:05:59.697391 9931 watcher.go:87] Error while processing event ("/sys/fs/cgroup/devices/libcontainer_34389_systemd_test_default.slice": 0x40000100 == ...原创 2019-11-25 10:35:05 · 3767 阅读 · 0 评论 -
K8s节点重置、加入集群
由于物理机迁移、网络环境发生变更,可能导致集群结构的破坏。1、 确认集群中是否还存在该节点:Kubectl get nodes2、 确认网络环境是否通畅:可以通过 ping 该物理机IP3、 确认物理机是否正常:是否可以登录登录后查看kubelet是否正常启动: systemctl status kubelet查看内存情况: free –h查看磁盘情况: ...原创 2019-11-25 10:02:07 · 2051 阅读 · 0 评论 -
k8s环境物理机切换DNS后不能立即生效问题解决
今天公司DNS服务器进行地址切换,出现物理机可以解析域名,但是k8s容器内部无法解析相应域名,应用报错: 由于k8s内部的域名解析都是通过coredns进行的,所以使用 describe查看了一下 coredns,发现coredns通过 configmap 挂载了物理机上的 /etc/resolv.conf 解决办法: 重启k8s的 coredns:kube...原创 2019-11-15 15:34:27 · 754 阅读 · 0 评论 -
kubernetes之network policy
Network policy:设置pod进出网络的策略,k8s本身并不支持,主要靠以下网络插件来支持。calico Romana Weavenetwork policy 策略模型apiVersion: networking.k8s.io/v1kind: NetworkPolicymetadata: name: test-network-policy namespace:...转载 2019-11-12 11:00:04 · 400 阅读 · 2 评论 -
排查ingress 404报错的方法--附:在容器中使用tcpdump抓包
出现这个问题,一般是由于路由不通导致的,需要进行抓包排查。首先要解决的问题是,如何在 ingress-controller 容器中安装抓包工具。1、由于 ingress-controller 的mandotory.yaml 中安全选项使用的是 33 用户,安装不了程序,因此咱们需要先修改spec.containers.securityContext下的配置securit...原创 2019-11-06 18:15:33 · 3611 阅读 · 2 评论 -
K8s-Ingress高可用IP透传方案
简介: k8s暴露服务的方式有以下几种:Proxy + clusterIP NodePort LoadBalancer IngressProxy + ClusterIP自定义代理 + 集群内存IP有一些场景下,你得使用 Kubernetes 的 proxy 模式来访问你的服务:• 由于某些原因,你需要调试你的服务,或者需要直接通过笔记本电脑去访问...原创 2019-11-06 18:07:52 · 5002 阅读 · 0 评论 -
解决eureka高可用集群在k8s环境无法正常启动的问题
昨天遇到一个问题,原本在非 k8s 环境下可以运行的 eureka 集群,上到 k8s 环境后,就无法运行。 这里记录一下解决问题的过程: kubectl logs -f XXX -n XXX 看日志后,报错:com.netflix.discovery.shared.transport.TransportException: Cannot execute re...原创 2019-10-10 11:16:53 · 1499 阅读 · 1 评论 -
解决 k8s 限制内存后 还出现 OOM 错误的问题:资源整合
如果应用所使用的 java 版本在 8及8以下, JVM 在没有认为设定 Xmx Xms 时, 会根据 宿主机的内存进行 JVM 的参数设置,这样就会导致很大的问题。比如,如果你的宿主机内存在 8G, 你的容器设置为 1G,那么 JVM 根据你的宿主机内存,给到你应用 2G左右的堆内存,此时 JVM 会按照 2G 进行 GC,此时会出现 OOM ,而导致容器被 kill 的情况。这一...原创 2019-09-30 15:04:51 · 9168 阅读 · 1 评论 -
k8s集群服务器宕机重启后,部分应用、监控不可用处理方法
服务器宕机重启后,可能导致部分服务及监控不可用:kubectl top nodes 可以查看kubectl top pod -n XXX 查看具体应用时,会发下部分pod不在metrics-server统计范围下另外还会出现部分内部应用相互不可调用的情况。推测是k8s网络问题导致,可以通过重置集群的方法解决:1 在重启的集群执行: kubeadm reset...原创 2019-09-23 09:17:03 · 2114 阅读 · 0 评论 -
windows10-pro下使用Minikube一键安装k8s验证环境
首先感谢大神把 Minikube 中国化,之前 google的版本亲测安装过,不太好使,这个安装步骤是基于大神们的成果写的。minikube可以在本机windows上一键安装k8s集群环境,方便大家学习、测试k8s文件,安装教程:Hyper-v安装教程https://docs.microsoft.com/zh-cn/virtualization/hyper-v-on-window...原创 2019-08-30 17:42:03 · 447 阅读 · 1 评论 -
记录k8s使用 configmap 挂载配置文件的一个坑
在使用 configmap 将tomcat 配置文件挂载到容器内部时,出现这么一个情况: kubectl apply -f xxx.yaml 提示: pod 已经创建,但实际使用:kubectl get pod -n XXXX 时并没有这个容器的提示,连容器创建失败的提示都没有。 造成这个问题的原因,以后注意了,大部分是因为yaml 文件写的有问题。 这次的问题比较...原创 2019-08-08 16:17:41 · 6351 阅读 · 1 评论