Привет. Я пытаюсь установить связь между базой данных mongo и приложением nodejs, используя kubernetes.все работает нормально.но я не могу получить доступ к моему API из внешней среды.Я также не могу telnet порт.
apiVersion: v1
kind: Service
metadata:
name: node
labels:
app: node
tier: backend
spec:
type: NodePort
ports:
- port: 3000
nodePort: 30005
externalIPs:
- 34.73.154.127
# # Replace with the IP of your minikube node / master node
# selector:
# app: node
# tier: backend
это мой файл yaml службы
, когда я проверяю состояние порта с помощью команды
sudo lsof -i:30005
Я могу видеть результаты, как показано ниже:
COMMAND PID USER FD TYPE DEVICE SIZE/OFF NODE NAME
kube-prox 2925 root 8u IPv6 32281 0t0 TCP *:30005 (LISTEN)
Теперь я могу подключиться к порту через ip, как
telnet 34.73.154.127 30005
, но я получаю результат, как показано ниже.
Trying 34.73.154.127...
telnet: Unable to connect to remote host: Connection refused
Если кто-то из моих друзей скажет, что порт не открыт, обратите внимание, что я открыл весь диапазон портов из любого места.
Еще одна вещь, о которой я хочу сообщить, что я развернулПример узла приложения изначально использует npm на порту 30006, и я могу telnet на этом порту.Итак, вывод состоит в том, что весь диапазон портов открыт и работает.
Это результат команды описания службы
kubectl describe service/node
result:
Name: node
Namespace: default
Labels: app=node
tier=backend
Annotations: kubectl.kubernetes.io/last-applied-configuration:
{"apiVersion":"v1","kind":"Service","metadata":{"annotations":{},"labels":{"app":"node","tier":"backend"},"name":"node","namespace":"defau...
Selector: <none>
Type: NodePort
IP: 10.102.42.145
External IPs: 34.73.154.127
Port: <unset> 3000/TCP
TargetPort: 3000/TCP
NodePort: <unset> 30005/TCP
Endpoints: <none>
Session Affinity: None
External Traffic Policy: Cluster
Events: <none>
Пожалуйста, дайте мне знать, чтосо мной не так ..
ENVIRONMENT:
cloud :google cloud platform
container :using docker and kubernetes
ubuntu 16.04 LTS
kubernetes 1.13.0