Docker Swarm 报 Error response from daemon: rpc error: code = 4 desc = context deadline exceeded

本文主要是介绍Docker Swarm 报 Error response from daemon: rpc error: code = 4 desc = context deadline exceeded,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

问题:

Docker集群重启之后,使用 docker node ls 查看节点时,报 "Error response from daemon: rpc error: code = 4 desc = context deadline exceeded" 的错误。

之前的集群配置如下:



解决步骤:

1、查看当前docker的输出的日志文件,

Jun 30 10:55:33 Docker1 dockerd-current: time="2018-06-30T10:55:33.788288036+08:00" level=info msg="3a69baa0
23fde4ff became candidate at term 1035"
Jun 30 10:55:33 Docker1 dockerd-current: time="2018-06-30T10:55:33.788299026+08:00" level=info msg="3a69baa0
23fde4ff received vote from 3a69baa023fde4ff at term 1035"
Jun 30 10:55:33 Docker1 dockerd-current: time="2018-06-30T10:55:33.788311909+08:00" level=info msg="3a69baa0
23fde4ff [logterm: 915, index: 114] sent vote request to 49dc57de12cfcd17 at term 1035"
Jun 30 10:55:34 Docker1 dockerd-current: time="2018-06-30T10:55:34.975050529+08:00" level=error msg="agent: 
session failed" error="rpc error: code = 14 desc = grpc: the connection is unavailable" module="node/agent"

Jun 30 10:55:38 Docker1 dockerd-current: time="2018-06-30T10:55:38.788342284+08:00" level=info msg="3a69baa0
23fde4ff is starting a new election at term 1035"

从上面的输出内容可以看出,此时正在进行manager节点的leader选择,因为在多manager node的情况下,需要几个manager node投票产生出leader,此时从加粗的错误内容可以推断出,在与另外一台 manager node 进行通信的时候,由于无法连接到对方2377端口,导致选举失败,那就会导致整个Docker Swarm无法选择出leader,偏偏此集群目前只有两个manager node,那问题就应该出在另外的一台上了。

2、在docker4上查看2377端口开放情况,发现没有任何端口


3、在docker4上开放2377端口


4、在docker1查看swarm node情况


至此问题解决,也说明一点,如果要使用swarm功能,需要在所有manager node节点上开启2377端口。


这篇关于Docker Swarm 报 Error response from daemon: rpc error: code = 4 desc = context deadline exceeded的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/737949

相关文章

使用IDEA部署Docker应用指南分享

《使用IDEA部署Docker应用指南分享》本文介绍了使用IDEA部署Docker应用的四步流程:创建Dockerfile、配置IDEADocker连接、设置运行调试环境、构建运行镜像,并强调需准备本... 目录一、创建 dockerfile 配置文件二、配置 IDEA 的 Docker 连接三、配置 Do

SpringBoot结合Docker进行容器化处理指南

《SpringBoot结合Docker进行容器化处理指南》在当今快速发展的软件工程领域,SpringBoot和Docker已经成为现代Java开发者的必备工具,本文将深入讲解如何将一个SpringBo... 目录前言一、为什么选择 Spring Bootjavascript + docker1. 快速部署与

使用Docker构建Python Flask程序的详细教程

《使用Docker构建PythonFlask程序的详细教程》在当今的软件开发领域,容器化技术正变得越来越流行,而Docker无疑是其中的佼佼者,本文我们就来聊聊如何使用Docker构建一个简单的Py... 目录引言一、准备工作二、创建 Flask 应用程序三、创建 dockerfile四、构建 Docker

SpringBoot+Docker+Graylog 如何让错误自动报警

《SpringBoot+Docker+Graylog如何让错误自动报警》SpringBoot默认使用SLF4J与Logback,支持多日志级别和配置方式,可输出到控制台、文件及远程服务器,集成ELK... 目录01 Spring Boot 默认日志框架解析02 Spring Boot 日志级别详解03 Sp

java实现docker镜像上传到harbor仓库的方式

《java实现docker镜像上传到harbor仓库的方式》:本文主要介绍java实现docker镜像上传到harbor仓库的方式,具有很好的参考价值,希望对大家有所帮助,如有错误或未考虑完全的地... 目录1. 前 言2. 编写工具类2.1 引入依赖包2.2 使用当前服务器的docker环境推送镜像2.2

RabbitMQ工作模式中的RPC通信模式详解

《RabbitMQ工作模式中的RPC通信模式详解》在RabbitMQ中,RPC模式通过消息队列实现远程调用功能,这篇文章给大家介绍RabbitMQ工作模式之RPC通信模式,感兴趣的朋友一起看看吧... 目录RPC通信模式概述工作流程代码案例引入依赖常量类编写客户端代码编写服务端代码RPC通信模式概述在R

解决mysql插入数据锁等待超时报错:Lock wait timeout exceeded;try restarting transaction

《解决mysql插入数据锁等待超时报错:Lockwaittimeoutexceeded;tryrestartingtransaction》:本文主要介绍解决mysql插入数据锁等待超时报... 目录报错信息解决办法1、数据库中执行如下sql2、再到 INNODB_TRX 事务表中查看总结报错信息Lock

ubuntu如何部署Dify以及安装Docker? Dify安装部署指南

《ubuntu如何部署Dify以及安装Docker?Dify安装部署指南》Dify是一个开源的大模型应用开发平台,允许用户快速构建和部署基于大语言模型的应用,ubuntu如何部署Dify呢?详细请... Dify是个不错的开源LLM应用开发平台,提供从 Agent 构建到 AI workflow 编排、RA

Docker安装MySQL镜像的详细步骤(适合新手小白)

《Docker安装MySQL镜像的详细步骤(适合新手小白)》本文详细介绍了如何在Ubuntu环境下使用Docker安装MySQL5.7版本,包括从官网拉取镜像、配置MySQL容器、设置权限及内网部署,... 目录前言安装1.访问docker镜像仓库官网2.找到对应的版本,复制右侧的命令即可3.查看镜像4.启

debian12安装docker的实现步骤

《debian12安装docker的实现步骤》本文主要介绍了debian12安装docker的实现步骤,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着... 目录步骤 1:更新你的系统步骤 2:安装依赖项步骤 3:添加 docker 的官方 GPG 密钥步骤