[英]How to check the number of workers running inside a docker container of kubernetes pod?
[英]Debugging NodeJs app running inside pod on Kind (Kubernetes in docker) cluster
我正在运行一个配置了Kind的 kube.netes 集群,如下所示:
kind: Cluster
apiVersion: kind.x-k8s.io/v1alpha4
nodes:
- role: control-plane
kubeadmConfigPatches:
- |
kind: InitConfiguration
nodeRegistration:
kubeletExtraArgs:
node-labels: "ingress-ready=true"
extraPortMappings:
- containerPort: 80
hostPort: ${ingress_http_port}
protocol: TCP
- containerPort: 443
hostPort: ${ingress_https_port}
protocol: TCP
networking:
kubeProxyMode: "ipvs"
集群在 kind-control-plane docker 容器中运行:
CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS NAMES
53d9511b8282 kindest/node:v1.21.1 "/usr/local/bin/entr…" 5 hours ago Up 5 hours 0.0.0.0:80->80/tcp, 0.0.0.0:443->443/tcp, 127.0.0.1:41393->6443/tcp kind-control-plane
我还成功部署了一个在 pod 内运行 nodeJs 应用程序的部署,并且我已经公开了一个服务以通过入口 controller 访问该应用程序,一切都按预期进行:
apiVersion: v1
kind: Service
metadata:
name: application-deployment
spec:
ports:
- name: http
port: 3000
protocol: TCP
selector:
app: application-deployment
---
apiVersion: networking.k8s.io/v1
kind: Ingress
metadata:
name: application-deployment
spec:
rules:
- http:
paths:
- path: "/"
pathType: Prefix
backend:
service:
name: application-deployment
port:
number: 3000
我正在使用 WebStorm IDE 来开发在 pod 内运行的应用程序,并且我正在尝试配置远程调试器以连接到 Kind 集群内的应用程序。 我知道如何配置在 docker 容器中运行的调试器,但我不知道如何在 docker 容器中运行的 kube.netes pod 中运行调试器。
我已经尝试通过 WebStrom 使用以下设置对其进行配置:
这些是Docker容器设置label下的设置:
任何为了实现这一点的建议或变通办法都将不胜感激。
先感谢您!
最后,我按照下面描述的步骤设法连接了远程调试器:
--inspect-brk
arg 在 pod 内启动节点进程,以便能够附加调试器。 ( Eg node --inspect-brk --loader ts-node/esm src/server.ts
)kubectl port-forward deploy/application-deployment 9229:9229
将调试端口从 pod 转发到我的本地计算机此链接帮助我配置了所描述的解决方案。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.