K8S如何部署ZooKeeper(续)-- Too many connections报错解决

这篇具有很好参考价值的文章主要介绍了K8S如何部署ZooKeeper(续)-- Too many connections报错解决。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

背景

在上一篇文章中(K8S如何部署ZooKeeper以及如何进行ZooKeeper的平滑替换)我们已经成功部署了ZooKeeper,但是真正切换时,报错如下

Too many connections from /xx.xx.xx.xx - max is 60

问题分析

在相关服务未迁移K8S时,各个服务都是散落在不同的服务器上的。而当迁移到K8S时,为了方便管理,对服务器进行了重新规划,同一个项目组使用相同的服务器资源,当副本数量较多时,从而出现了该问题。

解决方案

确定了问题出现的原因,那么就可以针对性的进行解决,我们可以按照下面的方式来修改上一篇中的部署脚本:

apiVersion: v1
kind: ConfigMap
metadata:
  name: zookeeper-config
  namespace: your-namespace
data:
  zoo.cfg: |
    clientPort=2181
    dataDir=/data
    dataLogDir=/data
    tickTime=2000
    initLimit=10
    syncLimit=5
    maxClientCnxns=6000
---
apiVersion: v1
kind: Service
metadata:
  name: zookeeper
  namespace: your-namespace
spec:
  selector:
    app: zookeeper
  type: NodePort
  ports:
    - name: client
      port: 2181
      targetPort: 2181
      nodePort: 30000
    - name: follower
      port: 2888
      targetPort: 2888
      nodePort: 30001
    - name: leader
      port: 3888
      targetPort: 3888
      nodePort: 30002
---
apiVersion: apps/v1
kind: Deployment
metadata:
  name: zookeeper
  namespace: your-namespace
spec:
  replicas: 1
  selector:
    matchLabels:
      app: zookeeper
  template:
    metadata:
      labels:
        app: zookeeper
    spec:
      affinity:
        nodeAffinity:
          requiredDuringSchedulingIgnoredDuringExecution:
            nodeSelectorTerms:
              - matchExpressions:
                  - key: project.node
                    operator: In
                    values:
                      - your-project-node
      containers:
        - name: zookeeper
          image: zookeeper:3.4.9
          imagePullPolicy: IfNotPresent
          terminationMessagePath: /dev/termination-log
          terminationMessagePolicy: File
          ports:
            - containerPort: 2181
            - containerPort: 2888
            - containerPort: 3888
          volumeMounts:
            - name: config-zookeeper
              mountPath: /conf/zoo.cfg
              subPath: zoo.cfg
            - name: data
              mountPath: /data
      volumes:
        - name: data
          hostPath:
            path: /var/lib/docker/zookeeper
        - name: config-zookeeper
          configMap:
            name: zookeeper-config
        - name: timezone
          hostPath:
            path: /usr/share/zoneinfo/Asia/Shanghai

附录:

ZooKeeper关于maxClientCnxns参数的官方解释:

单个客户端与单台服务器之间的连接数的限制,是ip级别的,默认是60,如果设置为0,那么表明不作任何限制。请注意这个限制的使用范围,仅仅是单台客户端机器与单台ZK服务器之间的连接数限制,不是针对指定客户端IP,也不是ZK集群的连接数限制,也不是单台ZK对所有客户端的连接数限制。

maxClientCnxns

Limits the number of concurrent connections (at the socket level) that a single client, identified by IP address, may make to a single member of the ZooKeeper ensemble. This is used to prevent certain classes of DoS attacks, including file descriptor exhaustion. The default is 60. Setting this to 0 entirely removes the limit on concurrent connections.文章来源地址https://www.toymoban.com/news/detail-791290.html

到了这里,关于K8S如何部署ZooKeeper(续)-- Too many connections报错解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包赞助服务器费用

相关文章

  • 基于K8S部署ZooKeeper准备知识(StatefulSet)

    使用k8s部署zk时,会部署一个headless service.科普一下headless service: Headless Service(无头服务)是 Kubernetes 中的一种服务类型,它与普通的 ClusterIP 服务有所不同。普通的 ClusterIP 服务会为每个服务分配一个虚拟 IP 地址,并通过负载均衡将流量转发到后端 Pod。而 Headless Service 不分

    2024年02月08日
    浏览(16)
  • Data source rejected establishment of connection message from server:“Too many connections“; 数据库报错解决

    Data source rejected establishment of connection message from server:“Too many connections“; 数据库报错解决

    报错时的情况: 报错时我使用了微服务项目中使用Dubbo来进行管理, 然后同时启动了几个项目来进行数据库操作就会发生报错, 但是执行单个项目模块时是可以进行数据库操作的 ,具体报错信息忘记截图了, 可以看下面这个链接中的报错信息描述MYSQL Too many connections错误的解决办

    2024年02月06日
    浏览(9)
  • k8s部署kafka,并使用zookeeper做注册中心

    kafka在3.x版本后增加KRaft作为自己的注册中心,可以不依赖外部的zk;这里上一篇已经部署好了zk,kafka依然使用zk作为注册中心。 这里使用kafka是为集成zipkin收发微服务接口链路日志数据,只需要部署1个实列即可够用。 编写脚本yaml vi kafka.yaml 执行部署 kubectl apply -f kafka.yaml 查

    2024年02月07日
    浏览(10)
  • k8s 部署zookeeper-kafka,nfs作为存储

    目录 备注:nfs存储参考链接 一、zk镜像拉取并制作为自己镜像 二、编辑zookeeper.yaml文件  三、安装zk并检查状态  四、验证zookeeper集群可用性 五、制作对应版本的kafka镜像 六、编辑kafka.yaml文件 七、创建kafka并查看状态 八、zk与kafka连通性查看 九、错误解决 k8s 配置hadoop集群,

    2024年02月16日
    浏览(10)
  • 【k8s】【ELK】【zookeeper+kafka+efak】【一】日志环境部署

    【k8s】【ELK】【zookeeper+kafka+efak】【一】日志环境部署

    如何收集日志 使用 EFK+Logstash+Kafka 收集K8S哪些日志? 2.1 ES集群的构建 demo: 2.2 交付ES-Service 01-es-svc.yaml 2.3 交付ES-Master节点 2.4交付ES-Data节点 2.5 验证ES集群 3.1 交付Kibana(dp、svc、ingress) 01-kibana-dp.yam 02-kibana-svc.yam 03-kibana-ingress.yam 3.2 访问kibana 01-zk-svc.yaml 02-zk-sts.yaml 验证zk集群

    2024年02月07日
    浏览(17)
  • k8s部署zookeeper集群(3节点,1个leader,2个follower)

    环境: centos 7.9 k8s集群 在k8s上面安装zookeeper集群,我们还是按照k8s的官方文档来安装吧,这样比较好,网上有各种各样的安装方式,这里使用 https://kubernetes.io/docs/tutorials/stateful-application/zookeeper/ k8s的官方文档来安装。

    2024年02月13日
    浏览(33)
  • K8s ❉ The connection to the server 报错localhost:8080 was refused

    现象描述 K8s集群初始化成功后,kubectl get nodes 查看节点信息时报错: 报错信息: 解决办法: 执行以下命令

    2024年02月11日
    浏览(21)
  • 【MySQL系列】Too many connections

    【MySQL系列】Too many connections

    💝💝💝欢迎来到我的博客,很高兴能够在这里和您见面!希望您在这里可以感受到一份轻松愉快的氛围,不仅可以获得有趣的内容和知识,也可以畅所欲言、分享您的想法和见解。 推荐:kwan 的首页,持续学习,不断总结,共同进步,活到老学到老 导航 檀越剑指大厂系列:全面总

    2024年01月21日
    浏览(11)
  • Mysql “Too many connections“ 异常

    当Mysql 数据库抛出如下异常 Caused by: com.mysql.cj.exceptions.CJException: Data source rejected establishment of connection,  message from server: \\\"Too many connections\\\"     at sun.reflect.NativeConstructorAccessorImpl.newInstance0(Native Method)     at sun.reflect.NativeConstructorAccessorImpl.newInstance(NativeConstructorAccessorImpl.java:

    2024年02月12日
    浏览(10)
  • MySQL出现too many connections错误

    MySQL出现too many connections错误

    1、现象 navicat连接MySQL时报 too many connections 错误 2、原因 my.ini 中设定的并发连接数太少或者系统繁忙导致连接数被占满。 连接数超过了 MySQL 设置的值,与 max_connections 和 wait_timeout 都有关。 wait_timeout 的值越大,连接的空闲等待就越长,这样就会造成当前连接数越大。 3、解

    2024年02月11日
    浏览(12)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包