Немного предыстории: создание приложения в golang, работающего на minikube в MacOS 10.14.2
karlewr [0] $ kubectl version
Client Version: version.Info{Major:"1", Minor:"11", GitVersion:"v1.11.1", GitCommit:"b1b29978270dc22fecc592ac55d903350454310a", GitTreeState:"clean", BuildDate:"2018-07-18T11:37:06Z", GoVersion:"go1.10.3", Compiler:"gc", Platform:"darwin/amd64"}
Server Version: version.Info{Major:"1", Minor:"12", GitVersion:"v1.12.4", GitCommit:"f49fa022dbe63faafd0da106ef7e05a29721d3f1", GitTreeState:"clean", BuildDate:"2018-12-14T06:59:37Z", GoVersion:"go1.10.4", Compiler:"gc", Platform:"linux/amd64"}
Проблема: Я не могу получить доступ к своему модулючерез IP-адрес из моего кластера.Эта проблема возникает только с этим одним модулем, что заставляет меня поверить, что у меня где-то неверная конфигурация.
Моя спецификация модулей такова:
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag }}"
ports:
- name: http
containerPort: 8080
protocol: TCP
livenessProbe:
httpGet:
path: /ping
port: 8080
initialDelaySeconds: 60
readinessProbe:
httpGet:
path: /ping
port: 8080
initialDelaySeconds: 60
Что странно, так это то, что я могу получить к ней доступпутем переадресации порта этот модуль на порт 8080
и запуска curl localhost:8080/ping
до запуска тестов живучести и готовности и после инициализации модуля.Это возвращает 200 OK.
Также в течение этого времени до CrashLoopBackoff
, если я ssh в свой узел мини-куба и запускаю curl http://172.17.0.21:8080/ping
, я получаю curl: (7) Failed to connect to 172.17.0.21 port 8080: Connection refused
.Используемый IP-адрес - это IP-адрес моего модуля.
Но затем, когда я описываю модуль после периода initialDelaySeconds
, я вижу следующее:
Warning Unhealthy 44s (x3 over 1m) kubelet, minikube Readiness probe failed: Get http://172.17.0.21:8080/ping: dial tcp 172.17.0.21:8080: connect: connection refused
Warning Unhealthy 44s (x3 over 1m) kubelet, minikube Liveness probe failed: Get http://172.17.0.21:8080/ping: dial tcp 172.17.0.21:8080: connect: connection refused
Почему моему соединению будет отказано только отIP-адрес модуля?
Редактировать Я не запускаю никаких пользовательских сетевых вещей, просто мини-куб из коробки