Eureka Server REST API

文章目录

  • REST API 介绍
  • REST API 实战
    • 查询所有应用实例
    • 根据 AppId 查询
    • 根据 AppId 及 instanceId 查询
    • 根据 instanceId 查询
    • 注册新应用实例
    • 注销应用实例
    • 暂停/下线应用实例
    • 恢复应用实例
    • 应用实例发送心跳
    • 修改应用实例元数据

REST API 介绍

  Eureka 在 GitHub 的 wiki 上专门写了一篇《 Eureka REST operations》来介绍 Eureka Server 的 REST API 接口,Spring Cloud Netfix Eureka 跟 Spring Boot 适配之后,提供的 REST API 与原始的 REST API 有一点点不同,其路径中的 {version} 值固定为 eureka,其他的变化不大,如下图所示:

Eureka Server REST API_第1张图片

Eureka Server REST API_第2张图片

REST API 实战

查询所有应用实例

  • http://localhost:8761/eureka/apps

Eureka Server REST API_第3张图片

根据 AppId 查询

  • http://localhost:8761/eureka/apps/demo-order

Eureka Server REST API_第4张图片

根据 AppId 及 instanceId 查询

  • http://localhost:8761/eureka/apps/demo-order/guoqingsongmbp:demo-order:11100

Eureka Server REST API_第5张图片

根据 instanceId 查询

  • http://localhost:8761/eureka/instances/guoqingsongmbp:demo-order:11100

Eureka Server REST API_第6张图片

注册新应用实例

  • http://localhost:8761/eureka/apps/demo-order2

  请求体参数(XML 格式):


	demo-order2:11101
    127.0.0.1
	DEMO-ORDER2
    127.0.0.1
	UP
	UNKNOWN
	11101
	443
	1
	
	    MyOwn
	
	
	demo-order2
	demo-order2
	false
	1540186708769
	1540186708747

Eureka Server REST API_第7张图片

  请求体参数(JSON 格式):

{
	"instance": {
		"instanceId": "demo-order2:11101",
		"app": "demo-order2",
		"appGroutName": null,
		"ipAddr": "127.0.0.1",
		"sid": "na",
		"homePageUrl": null,
		"statusPageUrl": null,
		"healthCheckUrl": null,
		"secureHealthCheckUrl": null,
		"vipAddress": "demo-order2",
		"secureVipAddress": "demo-order2",
		"countryId": 1,
		"dataCenterInfo": {
			"@class": "com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo",
			"name": "MyOwn"
		},
		"hostName": "127.0.0.1",
		"status": "UP",
		"leaseInfo": null,
		"isCoordinatingDiscoveryServer": false,
		"lastUpdatedTimestamp": 1529391461000,
		"lastDirtyTimestamp": 1529391461000,
		"actionType": null,
		"asgName": null,
		"overridden_status": "UNKNOWN",
		"port": {
			"$": 11102,
			"@enabled": "false"
		},
		"securePort": {
			"$": 7002,
			"@enabled": "false"
		},
		"metadata": {
			"@class": "java.util.Collections$EmptyMap"
		}
	}
}

Eureka Server REST API_第8张图片

  • 查看注册中心结果:

Eureka Server REST API_第9张图片

注销应用实例

  • http://localhost:8761/eureka/apps/demo-order2/demo-order2:11101

Eureka Server REST API_第10张图片

暂停/下线应用实例

  • http://localhost:8761/eureka/apps/demo-order2/demo-order2:11101/status?value=OUT_OF_SERVICE

Eureka Server REST API_第11张图片

  • 查看注册中心:

Eureka Server REST API_第12张图片

恢复应用实例

  • http://localhost:8761/eureka/apps/demo-order2/demo-order2:11101/status?value=UP

Eureka Server REST API_第13张图片

应用实例发送心跳

  • http://localhost:8761/eureka/apps/demo-order2/demo-order2:11101

Eureka Server REST API_第14张图片

修改应用实例元数据

  • http://localhost:8761/eureka/apps/demo-order2/demo-order2:11101/metadata?profile=canary

Eureka Server REST API_第15张图片

  • 原元数据:

Eureka Server REST API_第16张图片

  • 修改后的元数据:

Eureka Server REST API_第17张图片

你可能感兴趣的:(Spring,Cloud)