API-сервер Kubernetes выбрасывает ECONNREFUSED - PullRequest
0 голосов
/ 25 апреля 2018

Я использую эту клиентскую библиотеку javascript .За каждый 4-й или 5-й запрос бросается ECONNREFUSED.Я использую k8s в AWS.

{ Error: connect ECONNREFUSED <master-node-external-ip>:443
    at Object._errnoException (util.js:1041:11)
    at _exceptionWithHostPort (util.js:1064:20)
    at TCPConnectWrap.afterConnect [as oncomplete] (net.js:1153:14)
  code: 'ECONNREFUSED',
  errno: 'ECONNREFUSED',
  syscall: 'connect',
  address: <master-node-external-ip>,
  port: 443 }

код

const k8s = require('@kubernetes/client-node');
const k8sApi = k8s.Config.defaultClient();
const pods = k8sApi.listNamespacedPod('default');

версия

kube master node
kernelVersion: 4.4.78-k8s
kubeProxyVersion: v1.7.2
kubeletVersion: v1.7.2

Я заметил, что в AWS мой главный узел выбрасывал

"RouteLimitExceeded: The maximum number of routes has been reached.

Может ли это быть проблемой для ECONNREFUSED?

1 Ответ

0 голосов
/ 26 апреля 2018

"RouteLimitExceeded: The maximum number of routes has been reached.

Эта ошибка означает, что у вас слишком много маршрутов в таблице маршрутов AWS в VPC.

Здесь приведены ограничения от официальных документация :

  • Маршруты на таблицу маршрутов (нераспространенные маршруты) - 50 . Вы можете увеличить этот предел максимум до 100;однако на производительность сети может повлиять

  • BGP объявляемых маршрутов для каждой таблицы маршрутов (распространенные маршруты) - 100 . Этот предел не может быть увеличен.

Ограничения установлены для таблицы маршрутизации.

Может ли это быть проблемой для ECONNREFUSED?

Да, эта ошибка может быть причиной проблемы.Если в таблице слишком много маршрутов, некоторые маршруты могут быть пропущены в ней, и это может сделать соединения с API Kubernetes недоступными.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...