consul检查不通过

来源:26-4 服务注册的健康检查

0沉默使者0

2023-04-17

python代码:consul_test.py

import requests

headers = {
    "contentType": "application/json"
}


def register(name, id, address, port):
    url = "http://192.168.31.144:8500/v1/agent/service/register"
    rsp = requests.put(url, headers=headers, json={
        "Name": name,
        "ID": id,
        "Tags": ["mxshop", "bobby", "imooc", "web"],
        "Address": address,
        "Port": port,
        "Check": {
            "HTTP": f"http://{address}:{port}/health",
            "Timeout": "5s",
            "Interval": "5s",
            "DeregisterCriticalServiceAfter": "15s",
        }
    })
    if rsp.status_code == 200:
        print("注册成功")
    else:
        print(f"注册失败:{rsp.status_code}")


def deregister(id):
    url = f"http://192.168.31.144:8500/v1/agent/service/deregister/{id}"
    rsp = requests.put(url, headers=headers)
    if rsp.status_code == 200:
        print("注销成功")
    else:
        print(f"注销失败:{rsp.status_code}")


if __name__ == "__main__":
    register("mxshop-web", "mxshop-web", "192.168.31.102", 8021)

user-web路由初始化代码:

package initialize

import (
	"github.com/gin-gonic/gin"
	middlewares "mxshop-api/user-web/middleware"
	"mxshop-api/user-web/router"
	"net/http"
)

func Routers() *gin.Engine {
	Router := gin.Default()
	Router.GET("/health", func(c *gin.Context) {
		c.JSON(http.StatusOK, gin.H{
			"code":    http.StatusOK,
			"success": true,
		})
	})
	Router.Use(middlewares.Cors())
	ApiGroup := Router.Group("/u/v1")
	router.InitUserRouter(ApiGroup)
	router.InitBaseRouter(ApiGroup)
	return Router
}

在运行consul_test后怎么都不通过,在docker的consul容器里测试过了192.168.31.102的主机能ping通,在主机浏览器也试过192.168.31.102:8021/health的get请求能返回数据,真的死活都搞不明白为什么consul的健康检查不通过,请问老师您觉得是版本问题吗?可是我看了版本号,consul版本号是v1.11.1,是个旧版本,按说不应该啊,老师,您能帮忙分析一下吗?或者我能加您qq或微信单独沟通一下吗?可以的话要怎么加您qq或微信?
图片描述

写回答

2回答

0沉默使者0

提问者

2023-04-17

啊啊啊!老师不用了,解决了,把windows的防火墙全关了,注册表里的那个mpssvc的start值给改了再重启电脑,重新启动所有环境,然后就成功注册和通过检查了,排了一天的坑,太感动了😭

0
0

0沉默使者0

提问者

2023-04-17

老师,还有个补充情况:consul的output什么信息都不显示,空白一片

0
1
bobby
你是做了consul的什么配置导致 consul的output不显示任何内容?
2023-04-18
共1条回复

Go+Python打造电商系统 自研微服务框架 抓紧高薪机遇

快速转型Go工程师,成为具备双语言后端能力的开发者

512 学习 · 532 问题

查看课程