По какой-то причине Im получает 400 назад при регистрации в Eureka на Amazon. Сначала я думал, что это связано с известной проблемой с клиентом eureka js, однако после применения исправлений для этой проблемы он работает локально, но не тогда, когда объектом центра данных является Amazon. Кажется, что он извлекает метаданные из amazon, применяет его к объекту конфигурации eureka-js-client, используя локальный, затем выполняет запрос POST, но, похоже, отвечает статусом 400.400 от клиента Eureka js с Amazon
Вот мой конфигурационный объект:
instance: {
app: 'my-node-service',
port: {
'$': 8201,
'@enabled': true
},
vipAddress: 'myapp.awesome.com',
statusPageUrl: 'http://__HOST__:8201/info',
dataCenterInfo: {
'@class': 'com.netflix.appinfo.InstanceInfo$DefaultDataCenterInfo',
name: 'Amazon',
}
},
eureka: {
useLocalMetadata: true,
ssl: true,
// eureka server host/port
serviceUrls: {
default: [
'https://myamazoneurekaserver.com/eureka/apps',
'https://myamazoneurekaserver1.com/eureka/apps',
'https://myamazoneurekaserver2.com/eureka/apps'
]
},
servicePath: '/eureka/apps/'
},
}
, что приводит к этому из EurekaClient.js выводе файла:
Error: eureka registration FAILED: status: 400 body: [object Object] at /usr/app/node_modules/eureka-js-client/lib/EurekaClient.js:267:23 at Request.self.callback (/usr/app/node_modules/request/request.js:186:22) at /usr/app/node_modules/async/dist/async.js:484:16 at nextTask (/usr/app/node_modules/async/dist/async.js:5195:29) at /usr/app/node_modules/async/dist/async.js:5202:13 at apply (/usr/app/node_modules/async/dist/async.js:41:25) at /usr/app/node_modules/async/dist/async.js:76:12 at /usr/app/node_modules/async/dist/async.js:988:16 at Request._callback (/usr/app/node_modules/eureka-js-client/lib/EurekaClient.js:570:9) at /usr/app/node_modules/eureka-js-client/lib/EurekaClient.js:592:7
Любая причина, почему это произошло бы. Примеры, которые используют Amazon
, не используют служебные URL-адреса по умолчанию, но это работает локально, когда я использую MyOwn
как имя dataCenterInfo
.